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

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

2010-02-27 15:11:51 阅读4 评论0 字号:

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。

 

<#--{zx1}日志--> <#--推荐日志--> <#--引用记录--> <#--相关日志--> <#--推荐日志--> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构-->
郑重声明:资讯 【ATmega 16单片机的EEPROM存储器的相关寄存器(三)】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——