申贝丰 2025-03-04 00:25 采纳率: 57.7%
浏览 19
已结题

数码管显示内容如何存入EEPROM

下面代码是数码管的按键显示0-9的程序 ,我想在按键时把显示的数字存到EEPROM中,应该怎么改。


int pushButton=13; 
int beforeState=0;//检测上一次按下是否松开
int buttonState=0;//初始值为0
int presstime=0;//记录按了几次
int a=5;
int b=7;
int c=9;
int d=11;
int e=10;
int f=6;
int g=8;
 
void setup()
{
pinMode(pushButton, INPUT);
int i;
for(i=5;i<=11;i++)
pinMode(i,OUTPUT);
}
int numTable[10][8]=
{
  { 1,1,1,1,1,1,0,0},
  { 0,1,1,0,0,0,0,0},
  { 1,1,0,1,1,0,1,0},
  { 1,1,1,1,0,0,1,0},
  { 0,1,1,0,0,1,1,0},
  { 1,0,1,1,0,1,1,0},
  { 1,0,1,1,1,1,1,0},
  { 1,1,1,0,0,0,0,0},
  { 1,1,1,1,1,1,1,0},
  { 1,1,1,1,0,1,1,0},
};
void loop() 
{ int buttonState=digitalRead(pushButton);  
 if(buttonState==1&&beforeState==0)
 {
  presstime++;
 if(presstime==10)
 {presstime=0;}
 }
 digitalWrite(a,numTable[presstime][0]);
 digitalWrite(b,numTable[presstime][1]);
 digitalWrite(c,numTable[presstime][2]);
 digitalWrite(d,numTable[presstime][3]);
 digitalWrite(e,numTable[presstime][4]);
 digitalWrite(f,numTable[presstime][5]);
 digitalWrite(g,numTable[presstime][6]);
 beforeState=buttonState;
 delay(50);
}
 
 

展开全部

  • 写回答

4条回答 默认 最新

  • 阿里嘎多学长 2025-03-04 00:25
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    解决方案

    你可以使用EEPROM库来存储数据。首先,需要包含EEPROM库:

    #include <EEPROM.h>
    

    然后,在按键按下时,读取当前显示的数字,并将其存储到EEPROM中:

    void loop() {
      int currentState = digitalRead(pushButton);
      if (currentState == HIGH && beforeState == LOW) {
        // 读取当前显示的数字
        int displayNumber = // 读取当前显示的数字
        // 将数字存储到EEPROM中
        EEPROM.write(0, displayNumber);
        EEPROM.commit();
      }
      beforeState = currentState;
    }
    

    在上面的代码中,我们使用EEPROM.write()函数将数字存储到EEPROM中,EEPROM.commit()函数将写入的数据commit到EEPROM中。

    如果你想读取EEPROM中的数据,可以使用EEPROM.read()函数:

    int readNumber = EEPROM.read(0);
    

    这将读取EEPROM中的第一个字节的数据,并将其存储到readNumber变量中。

    注意:EEPROM的地址空间是从0开始的,所以EEPROM.write(0, displayNumber)将存储到EEPROM的第一个字节中。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 5月15日
  • 已采纳回答 5月8日
  • 创建了问题 3月4日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部