EEPROM 陣列是直接從 SRAM 陣列映射的非易失性存儲器。
將寄存器設(shè)置寫入 SRAM 后(通過方法 1 或 2),可以按照以下順序?qū)?EEPROM 進(jìn)行編程:
- 將 0xEA 寫入 R164 (NVMUNLK)。這會解鎖 EEPROM 以允許編程。
- 將 0x03 寫入 R157(NVM_ERASE_PROG 位)。這會使用 SRAM 的所有內(nèi)容對 EEPROM 進(jìn)行編程??偛脸?編程周期大約需要 230ms。
- 注意:步驟 1 和 2 必須是原子寫入,中間沒有任何其他寄存器事務(wù)或 I2C 中斷。在這些步驟之間對另一個(gè) I2C 器件進(jìn)行寫入會導(dǎo)致 EEPROM 寫入序列失敗。
- 輪詢 R157[2](NVMBUSY 位)或提供開環(huán)延遲。當(dāng)此位清零時(shí),EEPROM 編程完成。
- 將 0x00 寫入 R164。這會鎖定 EEPROM 以防止意外編程。
下次上電或硬復(fù)位時(shí),器件可以使用新編程的配置在 EEPROM 模式下自啟動。此外,NVMCNT 寄存器值在上電或硬復(fù)位后會遞增 1,以反映成功完成的 EEPROM 編程周期總數(shù)。