안녕하세요?
일반적으로, MCU의 경우 대부분 flash memory를 MCU에 내장하고 있습니다.
그리고, flash memory의 경우 program을 저장하기 위한 목적으로 사용이 됩니다.
그리고, flash memory에 program(binary파일)을 write(fusing)하기 위해서는, JTAG등의 H/W적인 장비를 사용합니다.
이상의 방법은 제가 알고 있는 배경지식입니다.
그런데, JTAG과 같은 장비를 사용하지 않고,
firmware로써, MCU 내장 flash memory를 read,write하는 code를 짜야할 일이 발생했습니다.
이유는...
#.첫째: serial로 PC와 MCU간에 통신을 하여, new version의 firmware를 up-date해야 함
#.둘째: flash memory의 특정 영역을 EEPROM에 저장하는 data를 저장할 목적
(즉, 원가절감 목적으로 EEPROM대신에 flash를 사용할 목적)
위와 같이 firmware로써, MCU 내장 flash memory를 read,write하기 위해서는
모든 MCU가 가능한가요 ? 아니면, 특정 MCU에서만 가능한가요 ?
특정 MCU에서만 가능하다면, 가능한 MCU의 maker와 P/N를 알려 주시면 감사하겠습니다.
모든 MCU에서 가능하다면, flash memory를 read,write 하는 code(방법)을 알려 주시면 감사하겠습니다.
(아니며, 해당부분을 알려주는 site의 URL을 알려 주셔도 감사하겠습니다.)
MCU내장 플레쉬를 사용하기 위한 기본적인 방식은 거의 비슷하지만 각 회사마다 명령어등 사용법이 조금씩 다름니다.
칩 제조사에서 제공하는 IAP(In Application Programming)나 Flash r/w 샘플코드를 받아서 사용하십시오.
32비트 arm계열 flash모델 제품이면 어지간하면 지원됩니다.