PIC32系列之:PIC32系列的数据EEPROM模块(1)

No replies
selinazhang
selinazhang 的头像
Offline
Joined: 2015-11-14

数据 EEPROM 存储器通过特殊功能寄存器(SFR)接口进行访问。32 位 EEPROM 存储器的大小可能因器件而异。

如果在数据 EEPROM 的操作过程中发生错误,可以能过清零ERR<1:0> 位(EECON<5:4>)重新初始化数据EEPROM 的内部逻辑。

1 BOR 错误 (ERR<1:0> = 11)

发生 BOR 事件时,会中止任何正在进行的命令。如果正在进行的是写命令或强制字擦除命令,则用户应校验最后一个写或擦除地址处的数据。不会发出错误中断。 RDY 位 (EECON<14>)会被清零。等待 RDY 位由硬件置 1,然后通过清零 ERR<1:0> 位清除错误。 更多信息,请参见第58.3.1.2节“BOR事件后的数据EEPROM初始化”。

2 无效命令 (ERR<1:0> = 10)
如果用户尝试错误地启动命令或将 CMD<2:0> 位 (EECON<2:0>)设置为某个保留命令,数据EPROM 会返回 “无效命令”错误。
错误启动命令的示例包括:
• 在命令不是读命令(CMD<2:0>≠000)时启动数据EEPROM读命令(WREN=0,RW=1)
• 在使能写操作 (WREN = 1)时启动数据 EEPROM 读命令 (CMD<2:0> = 000, RW = 1)
• 在地址未32位对齐(EEADDR<1:0>≠00)时启动数据EEPROM读或写命令
• 在命令不是写命令(CMD<2:0>≠001)时启动数据EEPROM写命令(WREN=1,RW=1) • 在禁止写操作 (WREN = 0)时启动数据 EEPROM 写命令 (CMD<2:0> = 001, RW = 1) 通过清零 ERR<1:0> 位可清除错误。

3 校验错误 (ERR<1:0> = 01) 执行数据EEPROM写或擦除命令时,内部EEPROM逻辑会校验写入数据EEPROM的数据或验
证单元是否已擦除。如果在写入或擦除数据时发生错误,会产生校验错误。
如果发生校验错误,软件可以尝试通过在发生错误的地址处执行强制字擦除命令(CMD<2:0> = 010)来恢复数据 EEPROM 字存储单元。或者,软件也可以选择不同的数据 EEPROM 地址来存 储数据。

--电子创新网--
粤ICP备12070055号