Gravity: Digital Wireless Switch(433Mhz)

Digital Wireless Receive Switch

简介

这是一款利用433Mhz射频通信技术的无线开关模组,包括发射器和接收器两部分。其中发射器可以接入任何数字量传感器、开关或控制器作为信号发射的“触发按钮”;接收器具有对码学习功能,以保证未学习的发射设备无法控制接收器,支持点动、锁存、自锁、互锁四种工作模式。发射器和接收器通过对码学习后支持“一发多收”或“一收多发”。

DFRobot推出的无线开关模组,具有简单易用、可扩展性高、穿透性强、待机功耗低等优势,传输数字量信号,兼容任何可以读写数字量信号的控制器。适用于需要无线传输数字量的设计,如远程控制、无线门铃、封闭环境向外界发送开关信号、将有线按钮升级为无线按钮等。

产品功能描述

产品参数

引脚说明

标号 名称 功能描述
1 D0 ~ D3 传感器数字信号输入端
2 G-D0 ~ G-D3 控制器数字信号输入端
3 BAT IN 外接电源输入3.3-5V
标号 名称 功能描述
1 D0 ~ D3 数字量信号输出端
2 按钮 对码学习/模式切换

模块说明

接收端工作模式说明(暂用图片)

接收端模式切换方法和对嘛学习方法(暂用图片):

发射端电源说明:

原理说明:

Arduino使用教程

基础示例1-连接电池和传感器

软硬件准备

接线图

发射端:

接收端:

样例代码

void setup() {
    Serial.begin(9600);
}
void loop() {
    if (digitalRead(4)) {
        Serial.println("Pressed:D1");
        delay(300);
    }
    if (digitalRead(5)) {
        Serial.println("Pressed:D0");
        delay(300);
    }
}

Mind+代码:

**现象结果:**

1.发射端D0端口的按键按下后会发出信号,接收端对应D0接口会收到信号,同时指示灯会点亮并可以在串口监视器中看到“Pressed:D0”。

2.发射端D1端口的传感器触发后会发出信号,接收端对应D1接口会收到信号,同时指示灯会点亮并可以在串口监视器中看到“Pressed:D1”。

基础示例2-外接电源和跳线

软硬件准备

发射端:

接收端:

样例代码

void setup() {
    Serial.begin(9600);
}
void loop() {
    if (digitalRead(4)) {
        Serial.println("Pressed:D0");
        delay(300);
    }
}

现象结果:

1.接好电源,使用导线/跳线帽短接发射端D0口的红色和绿色引脚,发射端会发射出信号,同时接收端对应引脚接收到信号

2.使用导线/跳线帽短接发射端D0口的红色和绿色引脚,通过可控的电源为发射端供电,供电瞬间连接了导线的接口发射端会发出信号,同时接收端对应引脚接收到信号。如果电源持续供电,则发射端将一直处于发射状态

基础示例3-连接控制器

软硬件准备

接线图

发射端(图中只有G-D0连接控制器的D4,可将G-D1 ~ G-D4 依次连接控制器的D5 ~D7):

接收端:(图中只有传感器D0连接控制器的D4,可将传感器D1 ~ D4 依次连接控制器的D5 ~D7)

样例代码

发射端:

void setup() {

}
void low_all(){
    digitalWrite(4, LOW);
    digitalWrite(5, LOW);
    digitalWrite(6, LOW);
    digitalWrite(7, LOW);
    delay(1000);
}
void loop() {
    digitalWrite(4, HIGH);
    delay(100);
    low_all();
    digitalWrite(5, HIGH);
    delay(100);
    low_all();
    digitalWrite(6, HIGH);
    delay(100);
    low_all();
    digitalWrite(7, HIGH);
    delay(100);
    low_all();
}

接收端:

void setup() {
    Serial.begin(9600);
}
void loop() {
    if (digitalRead(4)) {
        Serial.println("Pressed:D0");
        delay(100);
    }
    if (digitalRead(5)) {
        Serial.println("Pressed:D1");
        delay(100);
    }
    if (digitalRead(6)) {
        Serial.println("Pressed:D2");
        delay(100);
    }
    if (digitalRead(7)) {
        Serial.println("Pressed:D3");
        delay(100);
    }
}

现象结果:

发射端G-D0~G-D3循环发出信号,接收端D0-D3循环收到信号。

常见问题

更多