Non-Volatile Memory (NVM)란 비휘발성 메모리, 즉 전원을 꺼도 다음에 다시 전원을 넣었을 때 지워지지 않는 메모리를 말한다. 대표적으로 플래시 메모리, EEPROM 등이 있는데, 펌웨어에서는 사용자의 설정이나 캘리브레이션 데이터 저장 등의 용도로 필요하다. TV의 펌웨어를 만든다고 했을 때, 전원을 켤 때마다 채널이 1번에 가있다면 얼마나 불편하겠는가. 사용자가 선택한 마지막 채널을 기억했다가 다음에 그 채널부터 시작하는 게 당연하겠다. 먼저 EEPROM으로 말하자면 가장 다루기 쉬운 NVM 장치다. AVR에는 대부분 EEPROM이 1KB 정도 있어, 데이터 저장하기가 간단했는데, ARM 코어를 사용하는 MCU들은 대부분 EEPROM을 지원하지 않는다. EEPROM은 1 바이트 단위로..