搜索
bottom↓
回复: 2

AVR32 eeprom的读取问题

[复制链接]

出0入0汤圆

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

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2013-3-31 17:59:27 | 显示全部楼层
正在想学AVR32,目前不懂,但帮忙顶起来!

出0入0汤圆

 楼主| 发表于 2013-3-31 19:37:04 | 显示全部楼层
我发现问题了,是for语句的语法写错了。。。。是for(j=0;j<4;j++);而不是for(j=0;j++;j<4);这种错误编译器不管的。。。我承认我在这个程序里面还用了很多个for语句,唯独这个写错了。。。不好意思,我已经扇过自己耳光了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-27 01:20

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表