Kidult 发表于 2013-3-31 16:32:19

AVR32 eeprom的读取问题

我知道eeprom里面的内容在掉电之后不会被擦除这一点,但是我在用的时候就郁闷了:
       for(j=0;j++;j<4)
              K_F=Coef_ReadFromEEprom(j);//这个函数用于每次上电时,从eeprom里读取之前已经存入的数据,下面的红字部分是函数定义。
      
                if(K_F==1.0)   
                      RotBlink(1,10);//指示灯。。。
                        
      
    float Coef_ReadFromEEprom(uint8_t COE)//读
{
      return eeprom_read_float (&EEpromCoef) ;//EEpromCoef) 是eeprom变量
}    
K_F[]是一个数组,double 型,里面元素的初始值都是1.0。在程序的运行时,它们的值会被改变,不再等于1.0了,而且能够确认被写入了eeprom里面。
问题是:每次复位之后都应该会执行这一段读取代码,,读完之后再判断K_F是否等于1.0,结果是:灯亮了! 但是我用AVRtighter读出eeprom的时候看到又发现里面的内容并不等于1.0,有的是0.8多的样子!
       很纳闷,难道读取函数没有被执行?难道在判断K_F==1.0的时候会采取四舍五入的方式处理???
   各位大侠,指点下吧,,,先谢谢了!

lunhuiliudao 发表于 2013-4-3 12:06:19

你重复发帖,离封号不远了!!!!!!

Kidult 发表于 2013-4-5 19:19:22

lunhuiliudao 发表于 2013-4-3 12:06 static/image/common/back.gif
你重复发帖,离封号不远了!!!!!!

我哪有重复发帖啊?

lunhuiliudao 发表于 2013-4-6 08:25:45

Kidult 发表于 2013-4-5 19:19 static/image/common/back.gif
我哪有重复发帖啊?

你自己还是好好看看论坛吧!!!!!!
页: [1]
查看完整版本: AVR32 eeprom的读取问题