添加收藏夹  设为首页  深圳服务热线:13692101218  13751165337
51电子网联系电话:13692101218
位置:首页 > IC型号导航 > 首字符A型号页 > 首字符A的型号第628页 > ATMEGA329 > ATMEGA329 PDF资料 > ATMEGA329 PDF资料4第24页
下面的代码分别用汇编和C函数写
EEPROM 。在此假设中断控制(通过禁用中断格洛如
巴利),因此不会发生中断执行这些功能的过程。该实施例还
假设没有引导程序存在于该软件。如果这样的代码,则该
EEPROM写函数还需要等待正在运行的SPM命令来完成。
汇编代码例程
EEPROM_write :
;等待上一次写操作结束
SBIC
EECR , EEWE
RJMP
EEPROM_write
;设置地址( R18 : R17 )的地址寄存器
OUT
EEARH , R18
OUT
EEARL , R17
;写数据( R16)到数据寄存器
OUT
EEDR,r16
;写逻辑1 EEMWE
SBI
EECR , EEMWE
;启动写操作EEWE
SBI
EECR , EEWE
RET
C代码示例
空间
EEPROM_write (无符号
INT
uiAddress ,
无符号字符型
ucData )
{
/*
等待上一次写操作结束
*/
而( EECR & ( 1<<EEWE ) )
;
/ *设置地址和数据寄存器* /
EEAR = uiAddress ;
EEDR = ucData ;
/*
写逻辑1 EEMWE * /
EECR | = ( 1<<EEMWE ) ;
/ *启动写操作EEWE * /
EECR | = ( 1<<EEWE ) ;
}
下面的代码示例说明如何用汇编和C函数来读取EEPROM 。在应试
普莱斯假设中断被控制,使得中断不会发生的执行过程中
这些功能。
24
ATmega329/3290/649/6490
2552J–AVR–08/07

深圳市碧威特网络技术有限公司