首页
关于我
友链
小程序
小黑屋
Search
1
windows11系统自带VPN连接不上群辉VPN服务器问题
620 阅读
2
数字振镜XY2-100协议
615 阅读
3
使用ESP8266完成校园网WEB认证
578 阅读
4
将校园卡复制到小米手环
551 阅读
5
frp+softether_vpn实现外网访问校园网
519 阅读
技术
生活
登录
Search
标签搜索
qt
mqtt
FreeRTOS
stm32
iar
VPN
光猫破解
esp8266
群晖
VideoStation
exti
c++
eclipse
bootloader
pixhawk
遥控器
失控保护
ARM
NAS
ENPASS
AMENG
累计撰写
79
篇文章
累计收到
14
条评论
首页
栏目
技术
生活
页面
关于我
友链
推荐
小黑屋
搜索到
79
篇与
的结果
2021-03-25
将ESP8266开发板接入blinker,并使用小爱同学控制
这还是当初在天喻上班时接触到了esp8266,于是买了块开发板打算自己玩试试,买回来后测试了下例程就放下了一直没动,主要是这套东西里面涉及的东西有点多,好多我还不会,比如APP的编写,服务器的搭建,还有开发大多是用的官方的SDK。最近无意在一个QQ群里看到Blinker支持小爱同学控制,就打算接入试试。百度搜点灯科技进入官网,https://www.diandeng.tech/,安装ArduinoIDE和下载Blinker的库文件注册手机APP,获取密钥(注意:经测试发现使用点灯的服务器无法使用小爱同学而使用阿里云的服务器就可以,具体原因不清楚)将密钥填入代码里面就可以了。[cpp]#define BLINKER_WIFI #define BLINKER_MIOT_LIGHT//小爱同学灯 //#define BLINKER_MIOT_SENSOR//小爱同学传感器 //#define BLINKER_MIOT_OUTLET//单孔插座 //#define BLINKER_MIOT_MULTI_OUTLET//多孔插座#include <Blinker.h> #include <rgb_led.h> #include <dht11.h> char auth[] = "*******"; //密钥 char ssid[] = ""; //WIFI账号 char pswd[] = ""; //WIFI密码// 新建组件对象 BlinkerButton LED("led"); BlinkerNumber TEMP("temp"); BlinkerNumber HUMI("humi"); BlinkerRGB RGB("rgb");dht11 DHT11; #define DHT11PIN 5 //DHT11数据引脚 #define SmartconfigPin 14 //一键配网引脚#define NUM_LEDS 1 //rgb灯的数量ChainableLED leds(15, 4, NUM_LEDS); //rgb灯引脚设置scl sda//一键配网函数 void smartConfig() { if(digitalRead(SmartconfigPin) == LOW){ digitalWrite(LED_BUILTIN, LOW); WiFi.mode(WIFI_STA);//使用wifi的STA模式 Serial.println("\r\nWait for Smartconfig...");//串口打印 WiFi.beginSmartConfig();//等待手机端发出的名称与密码 //死循环,等待获取到wifi名称和密码 while (1) { //等待过程中一秒打印一个. Serial.print("."); delay(1000); if (WiFi.smartConfigDone())//获取到之后退出等待 { Serial.println("SmartConfig Success"); //打印获取到的wifi名称和密码 Serial.printf("SSID:%s\r\n", WiFi.SSID().c_str()); Serial.printf("PSW:%s\r\n", WiFi.psk().c_str()); break; } } Blinker.begin(auth, WiFi.SSID().c_str(), WiFi.psk().c_str());//运行blinker digitalWrite(LED_BUILTIN, HIGH); } }//小爱同学控制LED函数 void miotQueryLED(const String & state) { BLINKER_LOG("need set power state: ", state);if (state == BLINKER_CMD_ON) { digitalWrite(LED_BUILTIN, LOW); BlinkerMIOT.powerState("on"); LED.print("on"); LED.color("#9D9D9D"); BlinkerMIOT.print(); } else if (state == BLINKER_CMD_OFF) { digitalWrite(LED_BUILTIN, HIGH); BlinkerMIOT.powerState("off"); LED.print("off"); LED.color("#1D70D1"); BlinkerMIOT.print(); } }//小爱同学查询温湿度 void miotQuerySensor(int32_t queryCode) { BLINKER_LOG("MIOT Query codes: ", queryCode); switch (queryCode) { //同时查询传感器数据 case BLINKER_CMD_QUERY_ALL_NUMBER : BLINKER_LOG("MIOT Query All"); BlinkerMIOT.temp((int32_t)DHT11.temperature); BlinkerMIOT.humi((int32_t)DHT11.humidity); BlinkerMIOT.print(); break; //查询湿度 case BLINKER_CMD_QUERY_HUMI_NUMBER : BLINKER_LOG("MIOT Query HUMI"); BlinkerMIOT.humi((int32_t)DHT11.humidity); BlinkerMIOT.print(); break; //查询温度 case BLINKER_CMD_QUERY_TEMP_NUMBER : BLINKER_LOG("MIOT Query TEMP"); BlinkerMIOT.temp((int32_t)DHT11.temperature); BlinkerMIOT.print(); break; default : BlinkerMIOT.temp((int32_t)DHT11.temperature); BlinkerMIOT.humi((int32_t)DHT11.humidity); BlinkerMIOT.print(); break; } }// 按下按键即会执行该函数 void button1_callback(const String & state) { BLINKER_LOG("get button state: ", state);if (state == "on") { digitalWrite(LED_BUILTIN, LOW); LED.print("on"); LED.color("#9D9D9D"); } else if (state == BLINKER_CMD_OFF) { digitalWrite(LED_BUILTIN, HIGH); LED.print("off"); LED.color("#1D70D1"); } }//rgb灯控制函数 void colour1_callback(uint8_t r_value, uint8_t g_value,uint8_t b_value, uint8_t bright_value) { uint8_t r,g,b;r = ((float) r_value/255)*bright_value; g = ((float) g_value/255)*bright_value; b = ((float) b_value/255)*bright_value;BLINKER_LOG("R value: ", r); BLINKER_LOG("G value: ", g); BLINKER_LOG("B value: ", b); BLINKER_LOG("Rrightness value: ", bright_value);for(int i = 0; i < NUM_LEDS; i++){ leds.setColorRGB(i, r, g, b); } }//心跳包发送温度和湿度 void heartbeat() { TEMP.print(DHT11.temperature); //发送温度 HUMI.print(DHT11.humidity); //发送湿度 }//起始函数 void setup() { //初始化串口 Serial.begin(115200); BLINKER_DEBUG.stream(Serial); BLINKER_DEBUG.debugAll();//初始化有LED的IO pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, HIGH); LED.color("#1D70D1");//默认灯关闭pinMode(SmartconfigPin, INPUT); //key2引脚初始化leds.init(); //初始化RGB灯//判断是否进入配网模式 smartConfig();//初始化blinker Blinker.begin(auth, ssid, pswd);//心跳函数 Blinker.attachHeartbeat(heartbeat);//按键控制回调函数 LED.attach(button1_callback);//rgb灯控制回调函数 RGB.attach(colour1_callback);//小爱同学务必在回调函数中反馈该控制状态 BlinkerMIOT.attachPowerState(miotQueryLED);//LED灯 //BlinkerMIOT.attachQuery(miotQuerySensor); //温湿度}void loop() { DHT11.read(DHT11PIN);//获取温度和湿度 Blinker.run(); }[/cpp]要想小爱同学控制就得在代码里面加小爱同学控制的部分,小爱同学支持四种设备,灯,传感器,单孔插座,多孔插座(最多四孔)#define BLINKER_MIOT_LIGHT//小爱同学灯 //#define BLINKER_MIOT_SENSOR//小爱同学传感器 //#define BLINKER_MIOT_OUTLET//单孔插座 //#define BLINKER_MIOT_MULTI_OUTLET//多孔插座在米家其他平台里添加点灯科技,就自动同步设备了,接下来就可以用小爱同学控制了
2021年03月25日
109 阅读
0 评论
0 点赞
2021-03-24
群辉上搭建MQTT服务器(非Docker)
一直想搭建一套智能家居,通过手机远程控制家里一些设备或者通过条件出发控制某些设备,无奈DS216J没法用Docker,最近突然发现群辉的套件里自带了MQTT套件(社群http://packages.synocommunity.com/),遂打算装下试试。
2021年03月24日
12 阅读
0 评论
0 点赞
2021-02-04
给群晖NAS域名添加SSL证书
有强迫症的我看着灰锁和不安全提示一直有点别扭,早就打算添加SSL证书了,无奈花生壳的SSL证书要收费,今天无意间看到腾讯云上可以申请免费的SSL证书就打算试试。第一步登录腾讯云的控制台申请免费的SSL证书,证书可以免费使用一年https://console.cloud.tencent.com/ssl
2021年02月04日
160 阅读
0 评论
0 点赞
2021-01-19
76分钟看完《三体》全集。宇宙很大,生活更大。
2021年01月19日
53 阅读
0 评论
0 点赞
2020-11-02
QT程序打包成EXE文件
1、将QT代码切换到Resease版本编译一下
2020年11月02日
97 阅读
0 评论
0 点赞
2020-08-25
如何制作一个带指纹识别的机械键盘
https://zhuanlan.zhihu.com/p/64809151
2020年08月25日
7 阅读
0 评论
0 点赞
2020-08-25
单通道控制电机正反转
[cpp]void Set_Pwm(int motor_a,int motor_b,int motor_c,int motor_d) { int siqu=0; if(motor_a>0) PWMA=motor_a+siqu, INA=0; else PWMA=7200+motor_a-siqu,INA=1; }[/cpp]
2020年08月25日
97 阅读
0 评论
0 点赞
2020-08-14
研发、运营必备实用工具网站
目录1、搜索引擎2、PPT3、图片操作4、文件共享5、应届生招聘6、程序员面试题库7、办公、开发软件8、高清图片、视频素材网站 9、项目开源10、算法11、在线工具宝典大全12、音乐13、神辅助工具14、语音处理程序员开发需要具备良好的信息检索能力,为了备忘(收藏夹真是满了),将开发过程中常用的网站进行整理(不断更新中~)。
2020年08月14日
90 阅读
0 评论
0 点赞
2020-07-15
QT学习记录
https://zhuanlan.zhihu.com/p/28472916
2020年07月15日
109 阅读
0 评论
0 点赞
2020-02-01
树莓派C语言点亮LED
暂无简介
2020年02月01日
108 阅读
0 评论
0 点赞
1
...
4
5
6
...
8