查看: 124|回复: 1

[未解决] 求助,关于arduino UNO EEPROM无法保存数据问题

[复制链接]
  • TA的每日心情
    难过
    2019-1-12 16:17
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2019-1-12 16:17 | 显示全部楼层 |阅读模式
    本帖最后由 liu118 于 2019-1-12 16:44 编辑

    我的使用的EEPROM,代码如下,简单的意思就是,当A1输入高电平时,输出OUT高电平;当A0输入高电平时,输出OUT低电平,希望能掉电重启后,保存上一次的输出状态。运行下面代码,重启后,不管重启前OUT时候高还是低,结果重启后OUT输出始终是0,并不能达到记忆功能,不知道我的代码有没有问题,请哪位大侠帮我看看问题出在哪里,调试了很久了,还是老问题。

    #include <EEPROM.h>
    int D2_ON=A1;
    int D1_OFF=A0;
    int OUT=5;
    int addr=0;
    int state;
    void setup() {
    Serial.begin(9600);
    while(!Serial);
    pinMode(D2_ON,INPUT);
    pinMode(D1_OFF,INPUT);
    pinMode(OUT,OUTPUT);

    }

    void loop() {
      int i=0;
      int value_ON=digitalRead(D2_ON);
      int value_OFF=digitalRead(D1_OFF);
      if((value_ON==1)||(value_OFF==1)){
        if(value_ON==1){
          state=1;
        }else if(value_OFF==1){
          state=0;
        }
      }

       EEPROM.update(i, state);
      if( EEPROM.read(addr)!= state ){
          EEPROM.write(addr, state);
        }
        int result= EEPROM.read(i);
        if(result==1){
          digitalWrite(OUT,HIGH);
        }
        if(result==0){
          digitalWrite(OUT,LOW);
        }

        Serial.print(i);

        Serial.print("\n");

        Serial.print("result:");

        Serial.print(result);

        Serial.print("\n");
        delay(10);

    }

  • TA的每日心情
    擦汗
    2018-9-19 20:22
  • 签到天数: 47 天

    [LV.5]常住居民I

    发表于 2019-1-12 17:40 | 显示全部楼层

    回帖奖励 +2 金币

    试试例程能不能存,如果能,那就是你逻辑问题了
    如果你觉得以上内容帮到了你,你可以打赏支持作者
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    KittenBot杯第六届开源硬件开发大赛启动啦
    KittenBot杯第六届开源硬
    大赛简介: 第六届开源硬件开发大赛由Arduino中文社区发起 由KittenBot冠名赞助
    游戏机和开发板脑洞一下;这个本来就是开源的。
    游戏机和开发板脑洞一下;
    这个开发板和标准UNO是1;1的;通用。做在一起是因为可以不用游戏机时可以切换回来做开
    新人求助,关于舵机和限位开关。
    新人求助,关于舵机和限位
    新人求助社区各位哥哥姐姐,具体需要用航模遥控器的3段开关控制Arduino nano控制一个3
    基于MWC开源飞控DIY关键总结分享:
    基于MWC开源飞控DIY关键总
    很早就已经很想写这么一个帖,但总是由于各种原因没能落实,但最后还是找了时
    有关函数返回值的问题
    有关函数返回值的问题
    求助大神们,这个程序中有return返回值,但为什么有这个“ warning: return-statement
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表