Декодировать радиочастотные удаленные сигналы с помощью ESP32 или node MCU?

Я пытаюсь определить свои радиочастотные удаленные сигналы с помощью ESP32 или node MCU. Я пробовал с Arduino и был успешным, но по какой-то причине он не работает ни на ESP32, ни на узле MCU даже с помощью одного и того же вывода GPIO2 может ли кто-нибудь сказать мне, почему обе платы не могут декодировать сигнал. Я использую библиотеку rc-switch для декодирования и комбинированный приемник передатчика 433 МГц от amazon


RCSwitch mySwitch = RCSwitch();

void setup() {
  Serial.begin(9600);
  mySwitch.enableReceive(0);  // Receiver on interrupt 0 => that is pin #2
}

void loop() {
  if (mySwitch.available()) {
    output(mySwitch.getReceivedValue(), mySwitch.getReceivedBitlength(), mySwitch.getReceivedDelay(), mySwitch.getReceivedRawdata(),mySwitch.getReceivedProtocol());
    mySwitch.resetAvailable();
  }
}```

, 👍0

Обсуждение

Пожалуйста, включите в вопрос проводку и ваш код. Вы можете отредактировать его, чтобы добавить эту информацию., @chrisl

Может быть, это связано с разницей в 3,3 В/5 В?, @Michel Keijzers

@chrisl Я тоже выставил код, @rohithrathod banoth

@MichelKeijzers Я использовал vin-штифт на обеих платах, которые обеспечивают 5v, и приемник также работает на 5v, так что я не думаю, что это так, а также я использовал 5v-штифт на Arduino просто для уверенности, @rohithrathod banoth

io 0 имеет подтягивающий резистор, потому что это пин конфигурации загрузки, а на esp номера контактов прерывания совпадают с метками на ocb, @Juraj

Я думал, что ESP32 составляет 3,3 В (но это была просто идея, что это может быть вызвано разницей напряжений)., @Michel Keijzers


1 ответ


1

Для ESP32 вы должны указать реальный номер GPIO. Например: mySwitch.enableReceive(13);

И без глубоких объяснений поверьте, что он правильно работает с GPIO 13 и 27.
Подробности вы можете найти в Google...

,