z9x386 发表于 2008-6-5 16:54:15

请问马老师和各位高手,如何用CVAVR往EEPROM中读和写数组和结构体数据

如何用CVAVR往EEPROM中读和写数组和结构体数据?
void EEPROM_write(unsigned int uiAddress, unsigned char ucData)
{
/* 等待上一次写操作结束 */
while(EECR & (1<<EEWE))
;
/* 设置地址和数据寄存器 */
EEAR = uiAddress;
EEDR = ucData;
/* 置位EEMWE */
EECR |= (1<<EEMWE);
/* 置位EEWE 以启动写操作E */
EECR |= (1<<EEWE);
}
//从EEPROM读取数据的函数

unsigned int EEPROM_read(unsigned int uiAddress)
{

while(EECR & (1<<EEWE))
;
EEAR = uiAddress;
EECR |= (1<<EERE);
return EEDR;
}
unsigned char temp1,temp2;                     
unsigned char buffer;   
unsigned char buf[]="AVR与虚拟仪器";   
EEPROM_write(0x20,"abcdefg");                              
buffer=EEPROM_read(0x20);                              
EEPROM_write(0x35,buf);               
最后三条语句都编译不通过    ,另外还请教如何往EEPROM中写入结构体数据

machao 发表于 2008-6-5 17:33:48

首先建议你看一下CVAVR的使用帮助,里面有介绍关于EEPROM变量的定义和操作介绍,不用那么复杂.

另外,你的C也要补习补习了.

你定义的函数如下:
void EEPROM_write(unsigned int uiAddress, unsigned char ucData)
{}

能这样调用吗?
EEPROM_write(0x20,"abcdefg");
EEPROM_write(0x35,buf);
页: [1]
查看完整版本: 请问马老师和各位高手,如何用CVAVR往EEPROM中读和写数组和结构体数据