本帖最后由 caiyq52 于 2020-3-2 21:28 编辑
扩展:其它硬件的使用方法(ESP8266模块+配套的继电器模块,可以实现开关控制)1.2硬件 ·ESP8266模块
·WIFI继电器模块 · 8266烧录器
2.3 Arduino程序
·参考点灯示例程序
Arduino IDE——文件——示例——Blinker——Blinker_AliGenie——AliGenie_OUTLET
·最终程序 在ESP8266中有两个引脚IO0、IO2可以使用,在程序中对应的定义引脚为0、2 这款wifi继电器模块中控制继电器的是ESP8266的IO0引脚,所以在插上8266后引脚0控制继电器开关。
[mw_shl_code=arduino,true]
#define BLINKER_WIFI
#include <Blinker.h>
char auth[] = "Your Device Secret Key"; //caiyq52-改成自己在点灯app中生成的key码
char ssid[] = "Your WiFi network SSID or name"; //caiyq52-改成自己的WIFI名称
char pswd[] = "Your WiFi network WPA password or WEP key"; //caiyq52-改成自己的WIFI密码
// 新建组件对象
BlinkerButton Button1("btn-abc"); //caiyq52-此组件未点灯app中自己设置的按键,改名"btn-abc"必须与自己APP中设定的名称一致
int PinLED=0; //caiyq52-定义控制继电器的引脚,8266插在wifi模块上后引脚0控制继电器;
// 按下按键即会执行该函数
void button1_callback(const String & state) {
BLINKER_LOG("get button state: ", state);
digitalWrite(PinLED, !digitalRead(PinLED)); //caiyq52-读取引脚PinLED电平,并设置为相反的电平,效果为在app中点击一次按钮灯点亮或熄灭!
}
// 如果未绑定的组件被触发,则会执行其中内容
void setup() {
// 初始化串口
Serial.begin(115200);
BLINKER_DEBUG.stream(Serial);
// 初始化有LED的IO
pinMode(PinLED, OUTPUT); //caiyq52-设置引脚为输出模式
digitalWrite(PinLED, HIGH); //caiyq52-设置初始状态电平
// 初始化blinker
Blinker.begin(auth, ssid, pswd);
Button1.attach(button1_callback);
}
void loop() {
Blinker.run();
}[/mw_shl_code]
·选择工具-开发板-Generic ESP8266 Module
·连接硬件(烧录器+8266)
·选择对应的端口,上传程序!
2.5 控制电路搭建 ·连接硬件(WIFI继电器模块+8266)
·接线下如图
控制端想要接什么就自由发挥啦!这里提供一个示例
其他步骤方法与上相同。
|