Arduino RF 接收器拾取一些 433MHz 信号但不接收其他信号

Arduino RF Receiver picking up some 433MHz signals but not others

我有一个 Arduino 和一个 433MHz 接收器 运行 下面的代码,使用 RCSwitch 库。当我使用像“BN-LINK ES1513-5-2 无线遥控器”这样的遥控器时,代码工作正常。 bits/signal 打印到 window,大家都很高兴。

但是当我尝试从狗项圈(无电击)远程 433HMz 接收信号时,我什么也得不到。

两个遥控器都说它们以 433MHz 的频率传输。 我有多个“BN-LINK ES1513-5-2 无线遥控器”,我可以看到来自这些遥控器的信号。如果我用射频发射器连接另一个 Arduino,我可以接收到信号。

知道为什么我能看到一些信号但看不到其他信号吗?

#include <RCSwitch.h>

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();
  }
}

以 433 Mhz 传输只是基础设施的一部分,另一个问题是传输是用什么协议完成的,这可能不同于从遥控器到狗项圈。

rc-switch library 的自述文件部分,您可以找到支持的芯片组列表。例如,EV1527 是一种常见的,可以在许多低成本的 433Mhz 设备(包括遥控器)上找到。您可以查找相关信息,但是,在我看来,如果您要使用此库支持的 device/chipset/protocol,您不应该再担心低级通信。