×
单片机 > 单片机程序设计 > 详情

ATmega 16单片机的EEPROM存储器的相关寄存器(三)

发布时间:2020-08-24 发布时间:
|
EEPROM存储器的相关寄存器

1.EEARH、EEARL——EEPROM地址寄存器

2.EEDR——EEPROM数据寄存器

3.EECR——EEPROM控制寄存器

               ——    ——     ——    ——    EERIE    EEMWE   EEWE    EERE

位 7..4——Res:保留
保留位,读操作返回值为零。
位 3——EERIE:EEPROM中断准备好使能
若SREG的I为"1",则置位EERIE将使能EEPROM准备好中断。清零EERIE则禁止此中断。当I=EERIE=1且EEWE清零时,则单片机产生一个中断表示写操作完成。
位2——EEMWE:EEPROM主机写使能
EEMWE决定了EEWE置位是否可以启动EEPROM写操作。当EEMWE为"1"时,在4个时钟周期内置位EEWE将把数据写入EEPROM的指定地址。若EEMWE为"0“,则操作EEWE不起作用。EEMWE置位后4个周期,硬件对其清零。

位 1——EEWE:EEPROM写使能
EEWE为EEPROM写操作的使能信号。当EEPROM数据和地址设置好之后,需置位EEWE以便将数据写EEPROM。此时EEMWE必须置位,否则EEPROM写操作将不会发生。写时序如下(第3步和第4步的次序并不重要):
(1).等待EEWE位变为零
(2).等待SPMCSR中的SPMEN位变为零
(3).将新的EEPROM地址写入EEAR(可选)
(4).将新的EEPROM数据写入EEDR(可选)
(5).对EECR寄存器的EEMWE写"1",同时清零EEWE
(6).在置位EEMWE的4个周期内,置位EEWE

注意:在EEMWE置位后的2.5-4ms后,EEEWE被硬件清零,用户可以通过查询此位判断写操作是否完成。如果在步骤5和6之间发生了中断,写操作将失败。因为此时EEPROM写使能操作将超时。如果一个操作EEPROM的中断打断了另一个EEPROM操作,EEAR或EEDR寄存器可能被修改,引起EEPROM操作失败。建议此时关闭全局中断标志I。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR熔丝位操作时的要点和需要注意的相关事项