关于Wifiduino的看门狗导致重启的问题-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 719|回复: 3

关于Wifiduino的看门狗导致重启的问题

[复制链接]
发表于 2022-5-2 17:51 | 显示全部楼层 |阅读模式
我打算写一个从4*3的矩阵键盘读取数字并在串口中显示的程序,然后烧进Wifiduino之后串口就一直显示下面的信息,似乎因为看门狗一直在重启。我百度了说在循环里加上喂狗的语句或者加delay就可以了,但是都试过了还是不行,在每个for循环里都加过delay还有ESP.wdt_feed(),还有人说是因为供电不足导致的,求大佬指点[pre]const int numRows = 4;//键盘的行数
const int numCols = 3;//键盘的列数
const int debounceTime = 20;//开关稳定需要的毫秒数
//keymap定义相应的键被按下时返回的字符
const char keymap[numRows][numCols] = {
  {'1', '2', '3'},
  {'4', '5', '6'},
  {'7', '8', '9'},
  {'*', '0', '#'}
};
const int rowPins[numRows] = {8, 3, 4, 6};
const int colPins[numCols] = {7, 9, 5};
void setup(){
  Serial.begin(9600);
  for(int row = 0; row < numRows; row++)
  {
    pinMode(rowPins[row], INPUT);
    digitalWrite(rowPins[row], HIGH);
    delay(2000);
  }
  for(int column = 0; column < numCols; column++)
  {
    pinMode(colPins[column], OUTPUT);
    digitalWrite(colPins[column], HIGH);
   
  }
}

void loop(){
  char key = getKey();
  if(key != 0)
  {
    Serial.print("Got key");
    Serial.println(key);
  }
  delay(2000);
}
char getKey()
{
  char key = 0;
  for(int column = 0; column < numCols; column++)
  {
    digitalWrite(colPins[column], LOW);
    for(int row = 0; row < numRows; row++)
    {
      delay(100);
      if(digitalRead(rowPins[row]) == LOW)
      {
        delay(debounceTime);
        while(digitalRead(rowPins[row]) == LOW);
        key = keymap[row][column];
        delay(100);
      }
      delay(100);
    }
    digitalWrite(colPins[column], HIGH);
  }
  return key;
}[/pre]
屏幕截图 2022-05-02 175004.png
发表于 2022-5-2 19:41 | 显示全部楼层
while(digitalRead(rowPins[row]) == LOW);
循环里面要喂狗
发表于 2022-5-3 13:30 | 显示全部楼层
乱用引脚再怎么喂狗都没用,另外,常规的arduino函数都会自动喂狗,除了while(1);这种
 楼主| 发表于 2022-5-3 16:23 | 显示全部楼层
XlinliY.Zhang 发表于 2022-5-3 13:30
乱用引脚再怎么喂狗都没用,另外,常规的arduino函数都会自动喂狗,除了while(1);这种 ...

哪能看出来乱用了哇,小白求指点
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 08:49 , Processed in 0.287140 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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