ATtiny25-45-85中文数据手册(4)

2025-08-14

5.3.2EEPROM地址寄存器高 - EEARH

Bit

76543210-------EEAR8EEARH

Read/WriteRRRRRRRR/WInitial Value

X

X

X

X

X

X

X

X

?位7 .. 1 - Res6 .. 0:保留位

这些位保留供将来使用,总是读为0 ATtiny25/45/85.?位0 - EEAR8:EEPROM的地址

EEPROM地址寄存器 - EEARH - 指定在高EEPROM地址

128/256/512字节的EEPROM空间. EEPROM数据字节之间0线性寻址和127/255/511. EEAR的初始值是不确定的.一个适当的值之前,必须书面EEPROM的可被访问.

5.3.3EEPROM地址寄存器 - EEARL

Bit

76543210EEAR7

EEAR6

EEAR5EEAR4EEAR3EEAR2EEAR1EEAR0EEARL

Read/WriteRRR/WR/WR/WR/WR/WR/WInitial Value

X

X

X

X

X

X

X

X

?位7 .. 0 - EEAR7 .. 0:EEPROM的地址

EEPROM地址寄存器 - EEARL - 指定在低EEPROM地址

128/256/512字节的EEPROM空间. EEPROM数据字节之间0线性寻址和127/255/511. EEAR的初始值是不确定的.一个适当的值之前,必须书面EEPROM的可被访问.

5.3.4

EEPROM数据寄存器 - EEDR

Bit

76543210EEDR7

EEDR6EEDR5EEDR4EEDR3EEDR2EEDR1EEDR0EEDR

Read/WriteR/WR/WR/WR/WR/WR/WR/WR/WInitial Value

X

X

X

X

X

X

X

X

?位7 .. 0 - EEDR7 .. 0:EEPROM数据

对于EEPROM写操作EEDR寄存器包含要写入的数据

EEPROM中的寄存器EEAR给出的地址. EEPROM的读操作中,EEDR包含从EEPROM在由EEAR给出的地址读出的数据.

5.3.5

EEPROM控制寄存器 - EECR

Bit

76543210–

–EEPM1EEPM0EERIEEEMPEEEPEEEREEECR

Read/WriteRRR/WR/WR/WR/WR/WR/WInitial Value

0

0

X

X

0

0

X

0

?位7 - Res:保留位

该位保留供将来使用,将来也永远读为0 ATtiny25/45/85.对于未来的AVR器件的兼容性,总是写该位为零.读完后,屏蔽了这一点.

16

ATtiny25/45/85

7598H–AVR–07/09

ATtiny25/45/85

位6 - Res:保留位

该位是保留在ATtiny25/45/85,将来也永远读为零.第5位,4 - EEPM1和EEPM0:EEPROM编程模式位

EEPROM编程模式位设置定义的编程操作,将

对EEPE写入时触发.这是可能的程序数据在一个原子操作(擦除旧值和方案的新价值)或在两个不同的分裂擦除和写入操作操作.编程时间为不同的模式显示在表5-1.虽然EEPE设置,任何写EEPMn将被忽略.在复位期间,EEPMn位将被重置为0b00除非EEPROM处于编程.

表5-1.

EEPM1

0011

EEPROM的模式位

EEPM0

0101

程序设计

Time

3.4毫秒1.8毫秒1.8毫秒–

作业

擦除和写入一个操作(原子操作)仅擦除只写

留作将来使用

位3 - EERIE:EEPROM就绪中断使能

清零EERIE将使能EEPROM准备好中断若SREG的I位被置位.写作

EERIE则禁止中断. EEPROM准备好中断产生一个恒定的中断时,非易失性存储器编程就绪.

位2 - EEMPE:EEPROM主机编程使能

该EEMPE位决定EEPE写入一个才会有效果与否.

当EEMPE设置,在四个时钟周期内设置EEPE将编程EEPROM的指定地址.如果EEMPE是零,设置EEPE将没有任何效果.当EEMPE已被写入到一个由软件,硬件清除该位为零后4个时钟.

位1 - EEPE:EEPROM程序启用

EEPROM的编程使能信号EEPE是编程使能信号到EEPROM中.当EEPE被写入时,EEPROM将根据EEPMn位的设置进行编程.

该EEMPE位必须被写入到一个前一个合乎逻辑的写入EEPE,否则没有

EEPROM的写操作为止.当写访问时间已过,EEPE位由硬件清零.当EEPE已定,CPU会停止两个时钟周期的下一条指令执行之前.

位0 - EERE:EEPROM读使能

EEPROM的读使能信号 - EERE - 是读选通到EEPROM中.当COR-RECT地址设置在EEAR寄存器的EERE位必须写入一个触发

EEPROM中读取. EEPROM中读取只需要一条指令,并请求的数据立即可用.当执行EEPROM读操作时,CPU会停止工作4个周期的下一个指令执行之前.用户在开始读操作tion前,应检测EEPE.如果一个写操作正在进行中,它既不是可以读取EEPROM,也无法改变寄存器EEAR.

17

7598H–AVR–07/09

5.3.6基本字节编程使用基本字节编程是最简单的模式.当写一个字节到EEPROM中,用户必须将地址写入寄存器EEAR和数据到EEDR寄存器.如果否则EEPMn位为零,EEPE的写操作(在4个周期EEMPE写完后)将触发擦除/写操作.无论是擦除和写入周期完成一次操作和总体规划时间的单位是表20-1.EEPE位会保持到擦除和写入操作完成.当设备忙于编程,这是不可能做任何其他EEPROM操作.5.3.7拆分字节编程这是可能的分裂擦除和写入操作分为两个周期.如果系统需要的时间(典型地,如果电源电压下降),一些有限的期间短的存取时间,这可能是有用的.为了利用这种方法的优点,它是必需的要写入的位置已在写入操作之前被擦除.但由于擦除和写入操作是分离的,这是可以做到的擦除操作时,系统允许进行时间临界操作(通常在掉电后).5.3.8Erase要擦除一个字节,地址必须被写入EEAR.若EEPMn为0b01,写EEPE(在EEMPE之后的四个周期写入)将触发擦除操作只(程序鸣时间见表20-1).EEPE位会保持到擦除操作完成.当设备忙于编程,这是不可能做任何其他EEPROM操作.5.3.9Write要编写一个单元,用户必须将地址写入EEAR和将数据写入EEDR.如果EEPMn位为0b10,对EEPE写入(在4个周期EEMPE写完后)将触发写操作(编程时间见表20-1).EEPE位会保持设置直到写操作完成.如果要被写入的位置没有被写入之前擦除,存储的数据必须被视为丢失.当设备忙于编程,这是不可能做任何其他EEPROM操作.标定的振荡器用于EEPROM定时.确保振荡器频率 -频率是内中所述的要求上 - “OSCCAL振荡器校准寄存器”第26页.下面的代码分别用汇编和C函数进行擦除,写入或原子写入EEPROM中.该示例假定中断处于用户控制(例如,通过禁用全局中断),因而不会发生中断执行这些函数的过程中18ATtiny25/45/857598H–AVR–07/09ATtiny25/45/85

汇编代码例程

EEPROM_write:;等待上一次写操作结束sbicrjmpldioutoutoutsbisbiret

EECR,EEPEEEPROM_write

r16, (0EEPM1)|(0EEPM0)EECR,R16EEARL,R17EEDR,r16EECR,EEMWEEECR,EEWE

;设置编程模式;设置地址(R17)地址寄存器;写数据(R16)到数据寄存器;写逻辑1 EEMWE;启动写操作EEWE

C代码示例

void{/*;/*

EEPROM_write(无符号

char

ucAddress,

无符号字符型*/

ucData)

等待上一次写操作结束而(EECR&(1EEPE))

设置编程模式* /

EECR = (0<>EECR =(0EEPM1)|(0EEPM0)/ *设置地址和数据寄存器* /EEARL = ucAddress;EEDR = ucData;/*

写逻辑1 EEMWE * /

EECR | =(1EEMWE);/ *启动写操作EEWE * /EECR | =(1EEWE);}

19

7598H–AVR–07/09

下面的代码示例说明如何用汇编和C函数来读取EEPROM.这些示例假设中断控制,因此不会发生中断执行这些函数的过程中.汇编代码例程

EEPROM_read:;等待上一次写操作结束sbicEECR,EEPErjmpEEPROM_read;设置地址(R17)地址寄存器outEEARL,R17;开始EERE以读sbiEECR,EERE;读取数据寄存器中的数据inr16,EEDR

ret

C代码示例

无符号字符型EEPROM_read(无符号

char

ucAddress)

{

/ *等待上一次写操作结束* /而(EECR&(1EEPE));

/ *设置地址寄存器* /EEARL = ucAddress;/*

开始EERE以读* /

EECR | =(1EERE);/ *从数据寄存器返回数据* /返回EEDR;}

5.3.10预防腐败的EEPROM

在低V时期CC,EEPROM的数据可以被损坏,因为电源电压

太低,CPU和正确操作的EEPROM中.这些问题是一样的,使用独立的EEPROM器件,以及相同的设计方案应该被应用.

EEPROM数据损坏有两种情况可能造成当电压过低.首先,在写过程的EEPROM需要正确操作的最小电压.证券交易委员会ondly时,CPU本身可以执行指令不正确,如果电源电压过低.EEPROM数据损坏的问题可以通过以下方法解决:

保持在电源电压不足的时期AVR RESET信号(低).这可以通过使内部欠压检测器(BOD)来完成.如果内部的检测电平董事会无法满足要求的检测水平,外部低V匹配CC复位保护电路可以被使用.如果发生复位而写操作进行中,写操作将完成规定的电源电压是足够的.

20

ATtiny25/45/85

7598H–AVR–07/09


ATtiny25-45-85中文数据手册(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:石油工程英语单词

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219