|
自己写了个程序,很多错误和警告,怎么解决.
- #include <avr/io.h>
- void EEPROM_Write(unsigned int ucAddress,unsigned char ucData){
- //等待上一次写结束
- while (EECR & (1<<EEWE));
- //设置地址寄存器
- EEAR = ucAddress;
- //设置数据寄存器
- EEDR = ucData;
- //使能EEPROM写操作
- EECR |= (1<<EEMWE);
- //开始EEPROM写操作
- EECR |= (1<<EEWE);
- }
- unsigned char EEPROM_Read(unsigned int uiAddress){
- //等待上一次写结束
- while(EECR & (1<<EEWE));
- //设置地址寄存器
- EEAR = uiAddress;
- //使能EEPROM读操作
- EECR = (1<<EERE);
- //返回EEPROM数据
- return EEDR;
- }
- void EEPROM_Write_String(unsigned int uiAddress,unsigned char String[]){
- unsigned char length;
- length = strlen((char *)String);
- if(length)
- {
- EEPROM_Write(*String++,uiAddress++);
- }while(--length);
- }
- unsigned char EEPROM_Read_String(unsigned int uiAddress,unsigned int length){
- unsigned char str[length];
- if (length)
- {
- do
- {
- *str = EEPROM_Read(uiAddress++);
- str++;
- } while (--length);
- }
- return str;
- }
- int main(void)
- {
- unsigned char String[5];
- EEPROM_Write_String(0,"ABCDe");
- String[5] = EEPROM_Read_String(0,5);
- DDRA = 0xFF;
- if (String == "ABCDe")
- {
- PORTA = 0xFF;
- }else{
- PORTA = 0x00;
- }
- while(1);
- return 0;
- }
复制代码 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|