最近再研究STC 32G12K128 這款單片機
由于程序需要用到EEPROM 存儲一些重要信息
例如做產品的程序激活, 在EEPROM內存儲激活信息
這樣只要該芯片已經激活 更新程序的時候只要不擦除EEPROM的數據
程序就可以正常運行
但IAP的單片機 EEPROM的空間是可調的 沒有一個固定地址范圍
所以在STC_IAP下載軟件里無論怎么設置 下載程序后EEPROM的內容都會給主程序覆蓋
除非更換一款固定EEPROM的單片機
但是硬件已經設計好了改單片機有點麻煩
后來想到一個辦法解決所有IPA單片機 EEPROM被主程序覆蓋
就是在Keil里面設置編譯起始地址
經過測試 確實3FF之前的數據不會被覆蓋
起始地址可以根據自己需求調節
地址長度需要減去 起始地址 20000H 128K空間 - 3FFH 1K空間
程序空間剩下127K
|