完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
1、主要功能:
1.1)实现定时开启/关闭一个LED(用LED模拟继电器),可以设定的参数包括:年、月、日、时、分、秒; 1.2)时间通过网络获取并同步到本地,设定的开关时间也会保存到本地,可以实现断网不丢失设定时间,不影响定时动作; 1.3)每次从APP端设定开启/关闭LED时,都会自动同步一次网络时间到本地,以校准本地时钟; 2、软硬件平台: 2.1)硬件使用Gokit2核心板+ESP8266-12F模组,模组已经烧写机智云固件; 2.2)手机APP端使用官方IOE Demo; 2.3)开发环境使用CubeMx_4.15 +Keil_5.20,mcu上移植了FreeRTOS系统; 3、分享目的: 3.1)定时插座功能虽然简单,但是涉及到网络时间同步问题,这里需要开发者自己组时间请求包,并在协议解析中增加对应解析内容,有一定的实现难度,分享此帖,供有疑问的同学参考、讨论,所以本项目中只添加了一组“开/关”的定时功能,且不能同时设定; 3.2)mcu移植了FreeRTOS,freertos.c文件中起了多个不同优先级的线程,并使用了STM32本地RTC实时时钟,需要实现更多开关及更复杂的业务逻辑的话,可将代码放置在此处。 4、操作方法 4.1)从app端进入主界面(如图3)后,MCU会首先同步网络时间,并将网络时间进行一次上报,以使app显示的进度条最接近当前实际时间,方便设定;设定过程中,必须先拖动进度条到想要设定的时间后,才能进行“开/关”功能设定。 4.2)时间设定完毕后,mcu本地会保存当前设定的定时时间,本地RTC时钟会正常运行,因此即使过程中断网,也不会影响已经设定的定时开关操作,如下图所示: LED定时开设定完毕时间后将ESP8266-12F模组从Gokit核心板上拿掉,此时Gokit已经处于离线状态,但当设定打开LED时间到后,LED仍然能够准确被打开。 5、主要代码介绍: 5.1)插座实现定时功能和其他数据点操作主要不同之处就是获取网络时间,在我们通过网页创建我们的项目后,系统会生成机智云接入串口通信协议文档,文档4.13小节有针对网络时间说明: 包括请求包和回传数据包的说明,我们要做的就是在代码中增加这个请求包,并能够保证网络给我们回复带有时间信息的数据包时我们能够解析到,因此这里就增加了如下两段代码: 首先发送网络时间请求包: 云端收到请求包后,会把包含有当前网络时间的数据包通过WiFi模组透传给MCU,MCU则可以通过下面这段函数解析并同步到本地RTC时钟: 当然,过程中需要对protocol.c中命令解析部分增加两行代码,来调用上面这个函数,具体可以查看代码。 5.2)因为这里只使用了Gokit核心板,没有功能板,所以无法通过功能板的KEY2进入配网模式,这里设定的是长按核心板上User Key持续1s左右,当看到LED1~LED3大约以10HZ频率流动时松开,就可以进入airlink模式;如长按User Key持续4s以上直至看到LED1~LED3以大约100HZ频率律动,则系统复位。 注意:因核心板版本不同,有的版本只有一个RESET按键,没有User Key,此时可以通过修改下面宏定义,设定配网按键 以上简单说明,详情参考对应代码和文档。 最后对MCU开发的小伙伴有个建议: 在网页创建工程完成后,在产品开发资源目录下,有“XXX机智云接入串口通信协议文档”,如下图所示: 此文档是一个非常非常有用且非常非常重要的文档!(也建议网站改版时候是否能够考虑把这个文档放一个更明显一些的位置)。MCU开发过程中一定一定要看,尤其是文档中4.9和4.10小节,必须看明白,数据点的调试问题,绝大多数都是数据点解析和上报过程中格式问题,4.9和4.10小节对于这块解释非常详细。
|
|
|
相关推荐
|
|
|
好东西不要沉入海底,让它浮起来,让远程控制成为现实
|
|
|
|
|
|
|
|
|
nice
|
|
|
|
|
|
|
|
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2961 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2463 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2331 浏览 0 评论
2455 浏览 1 评论
1674 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 12:57 , Processed in 0.945996 second(s), Total 94, Slave 74 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖