//表示通过wifi接入 #define BLINKER_WIFI #include <ESP8266WiFi.h> #include <DNSServer.h> #include <ESP8266WebServer.h> #include <WiFiManager.h> //开启服务器端口 //WiFiServer server(80); //String header; //小爱:设备类型为插座 #define BLINKER_MIOT_MULTI_OUTLET //天猫:类型为插座 #define BLINKER_ALIGENIE_MULTI_OUTLET //小度:类型为插座 #define BLINKER_DUEROS_MULTI_OUTLET #define IN D5 //14 #define OUT D6 //12 #define PWM D7 //13 //这是点灯的核心库 #include <Blinker.h> //设备的密钥(key) char auth[] = "f1c431a4702a"; // f68445548327 。71269c24851d /** * wifi 的SSID和密码,SSID就是你连接wifi时对方显示的名称,最好不要有空格、中文 * 密码必须是8位起 * 注意:无法连接5G频段的wifi,务必使用2.4G 的信号连接 * 如果自家的路由连不上,就用手机开一个热点测试(热点也不要选择5G类型哦) * 连不上的常见可能: * 1、ID或密码错; * 2、使用了5G频段或者自动切换频段 * 3、路由本身的设置问题(非常见加密方式) * 4、公共场所的路由有额外验证,比如星巴克等 */ //char ssid[] = "nova"; //char pswd[] = "12345678"; // 定义内置继电器 BlinkerButton InBtn("a"); bool in_state = false; // 定义外置继电器 BlinkerButton OutBtn("b"); bool out_state = false; // 定义电子开关 BlinkerSlider PwmSlider("c"); bool pwm_state = false; int32_t pwm_number = 0; //pwm滑块的默认值 //启动函数 void setup() { //设置波特率115200 Serial.begin(115200); BLINKER_DEBUG.stream(Serial); // WiFiManager wifiManager; // wifiManager.resetSettings(); // Serial.println("ESP8266 WiFi Settings Cleared"); // wifiManager.autoConnect("AutoConnectAP"); // Serial.println(""); // Serial.print("ESP8266 Connected to "); // Serial.println(WiFi.SSID()); // Serial.println(WiFi.localIP()); // BLINKER_DEBUG.stream(Serial); //设置OLED灯的针脚为输出模式,注意部分芯片可能无此灯,也就无法控制 pinMode(LED_BUILTIN, OUTPUT); //设置 OLED灯的电平为 LOW=低,HIGH 则=高 digitalWrite(LED_BUILTIN, LOW); pinMode(IN, OUTPUT); pinMode(OUT, OUTPUT); pinMode(PWM, OUTPUT); digitalWrite(IN, HIGH); digitalWrite(OUT, HIGH); digitalWrite(PWM, LOW); //连接wifi //一键配网 //#include <ESP8266WiFi.h> //#include <DNSServer.h> //#include <ESP8266WebServer.h> //#include <WiFiManager.h> WiFiManager wifiManager; // wifiManager.resetSettings(); // Serial.println("ESP8266 WiFi Settings Cleared"); wifiManager.autoConnect("AutoConnectAP"); //server.begin(); //按钮绑定函数 Blinker.attachHeartbeat(heartbeat); InBtn.attach(in_callback); OutBtn.attach(out_callback); PwmSlider.attach(pwm_slider_callback); //绑定小爱的控制函数 BlinkerMIOT.attachPowerState(mi); BlinkerMIOT.attachQuery(miQuery); //绑定天猫的控制函数 BlinkerAliGenie.attachPowerState(genie); BlinkerAliGenie.attachQuery(genieQuery); //绑定小度的控制函数 BlinkerDuerOS.attachPowerState(duer); BlinkerDuerOS.attachQuery(duerQuery); } void loop() { //blinker的启动函数 Blinker.run(); } |