MM32F013系列選項字節(jié)介紹及擦除流程嵌入式應(yīng)用中經(jīng)常會遇到需要保存一些數(shù)據(jù),比如配置信息等等,為了在設(shè)備關(guān)機或掉電情況下數(shù)據(jù)不丟失,我們通常做法是會將數(shù)據(jù)保存在存儲區(qū),可以在FLASH主存儲區(qū)、備份寄存器和選項字節(jié)等存儲用戶數(shù)據(jù)。
靈動微電子MM32F013x系列芯片的嵌入式閃存高達64K字節(jié),整個片內(nèi)FLASH由兩部分組成:一部分是主存儲塊,另一部分是信息存儲塊。主存儲塊除了被用于存儲用戶代碼,也可被模擬成EEPROM來存儲用戶數(shù)據(jù);在信息存儲塊中,包括了保護字節(jié)、保密空間、系統(tǒng)存儲器ISP和選項字節(jié)四部分,其中除了系統(tǒng)存儲器ISP區(qū)域用戶不可使用外,用戶可以通過對應(yīng)的操作流程對其它區(qū)域進行讀寫操作,于用戶而言,選項字節(jié)用戶數(shù)據(jù)區(qū)也可以被用來存儲2個字節(jié)長度的有效數(shù)據(jù)。本篇文章將重點介紹選項字節(jié)及擦除流程。
選項字節(jié)介紹 MM32F013x系列MCU的選項字節(jié)主要用于存儲用戶對芯片的配置信息及用戶關(guān)鍵數(shù)據(jù),主要有寫保護使能、看門狗模式切換等等不同配置內(nèi)容,FLASH控制器可以通過對這些值的設(shè)置來選擇不同的系統(tǒng)功能選項。選項字節(jié)區(qū)塊的前16字節(jié),每兩個字節(jié)組成一個正反對,其中用戶只需要設(shè)置低位的字節(jié),高位由系統(tǒng)自動填充為其反碼。
選項字節(jié)的組成如下表所示(位15~8中的值為位7~0中選項字節(jié)0的反碼): 注意:在寫保護值中,一個比特位對應(yīng)四頁,即4096字節(jié),其它詳情請參見UM手冊。
USER:字節(jié)2,用戶字節(jié),配置看門狗模式、停機復(fù)位模式、待機復(fù)位模式以及BOOT1。 DATA0:字節(jié)4,數(shù)據(jù)字節(jié)0,由用戶存儲數(shù)據(jù)。 DATA1:字節(jié)6,數(shù)據(jù)字節(jié)1,由用戶存儲數(shù)據(jù)。 WRP0:字節(jié)8,寫保護字節(jié)0,存儲對主存儲塊的寫保護設(shè)置。 WRP1:字節(jié)10,寫保護字節(jié)1,存儲對主存儲塊的寫保護設(shè)置。
擦除流程
選項字節(jié)區(qū)塊擦除操作流程的具體步驟如下: |