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