|
请求大家帮忙看看,我写AVR 片内EEPROM程序,为何不能写整形数据到EEPROM中?
[复制链接]
/*********片内EEProm_Byte写函数**************/
void Write_EEP_Byte(unsigned int uiEEP_Add ,unsigned char ucEEP_Byte)
{
while(EECR & (1<
EEAR=uiEEP_Add; //地址送入
EEDR=ucEEP_Byte; //数据送入
EECR |= (1<
EECR |= (1<
}
/*********片内EEProm_Word写函数**************/
void Write_EEP_Word(unsigned int uiEEP_Add ,unsigned int uiEEP_Word)
{
unsigned char temp_byte;
temp_byte=(uiEEP_Word>>8); //数据右移8位产生高字节
Write_EEP_Byte(uiEEP_Add ,temp_byte); //先写入高字节
delay_ms(10);
temp_byte=uiEEP_Word; // 产生低字节
Write_EEP_Byte((uiEEP_Add+1) ,temp_byte); //再写入低字节
}
大家帮忙看看,程序错在什么地方了?程序是写MEGA16单片机内部处事的eeprom,字节能写入,但word数据写入不成功。错在在在何处?本人搞几天也不明白。特求助高手?
|
|