乐鑫技术交流
直播中

崔映芬

8年用户 1001经验值
私信 关注
[问答]

可以将Gpio设置为中断模式或类似模式吗?

我有一个小问题,希望有人能在这里帮助我
我的设置是 NodeMCU Lua Board 和一个简单的 433 Mhz 接收器:
我将 vcc 从接收器连接到 3,来自 NodeMcu 的 3V。
我将接收器的 gnd 连接到 NodeMcu 的 gnd。
我将数据从接收器连接到 NodeMcu 的 D1。
我测试了这个非常简单的代码:
代码:全选

#include
#include

RCSwitch mySwitch = RCSwitch();

void setup() {
  Serial.begin(115200);
  
  mySwitch.enableReceive(5);  // This is D1
}

void loop() {
  if (mySwitch.available()) {
   
    int value = mySwitch.getReceivedValue();
   
    if (value == 0) {
      Serial.print("Unknown encoding");
    } else {
      Serial.print("Received ");
      Serial.print( mySwitch.getReceivedValue() );
      Serial.print(" / ");
      Serial.print( mySwitch.getReceivedBitlength() );
      Serial.print("bit ");
      Serial.print("Protocol: ");
      Serial.println( mySwitch.getReceivedProtocol() );
    }

    mySwitch.resetAvailable();
  }
}



问题是:它有效,但不是每次都有效,而且范围很低……
我认为这是中断问题,因为没有 NodeMcu 和 Arduino 板的这种设置在良好的范围内工作正常。
问题是否可能是 NodeMcu Lua 上的引脚设置?我可以将 Gpio 设置为中断模式或类似模式吗?!

更多回帖

发帖
×
20
完善资料,
赚取积分