|
发表于 2024-8-6 15:40:52
|
显示全部楼层
esp8266+超再生无线模块 ESP8266 STA模式 连接手机热点 开启电动车 关闭热点,,锁定电动车
- #include <RCSwitch.h>
- #include <ESP8266WiFi.h>
- typedef enum
- {
- LOCK,
- STARTUP
- }system_stat_t;
- //默认启动初始为锁定状态
- system_stat_t SYSTEM_STAT = LOCK;
- #define AP_ssid "qinxl" //这里改成你的设备当前环境下要连接的接入点名字
- #define password "123456789wy" //这里改成你的设备当前环境下要连接的接入点密码
- RCSwitch mySwitch = RCSwitch();
- //启动电动车
- void startup()
- { //发送两次启动键值 电动车启动
- mySwitch.send("001000100000010100100010");
- delay(1000);
- mySwitch.send("001000100000010100100010");
- delay(1000);
- }
- //警报启动
- void lock()
- {
- mySwitch.send("001000100000010100101000");
- delay(1000);
- }
- //警报解除
- void unlock()
- {
- mySwitch.send("001000100000010100100100");
- delay(1000);
- }
- void setup() {
- //连接wifi
- WiFi.begin(AP_ssid, password);
-
- // Transmitter is connected to Arduino Pin #2
- mySwitch.enableTransmit(2);
-
- // Optional set protocol (default is 1, will work for most outlets)
- // mySwitch.setProtocol(2);
- //Optional set pulse length.
- mySwitch.setPulseLength(185);
-
- // Optional set number of transmission repetitions.
- // mySwitch.setRepeatTransmit(15);
-
- }
- void loop() {
-
- switch (SYSTEM_STAT)
- {
- case LOCK:
- if(WiFi.status() == WL_CONNECTED)
- {
- startup();
- SYSTEM_STAT = STARTUP;
- }
- break;
- case STARTUP:
- if(WiFi.status() != WL_CONNECTED)
- {
- unlock(); //先关闭启动状态
- lock(); //再锁定电动车
- SYSTEM_STAT = LOCK;
- }
- break;
- default:
- break;
- }
-
- }
复制代码
|
|