查看: 1952|回复: 1

STM32MCU请求网络时间例程

[复制链接]
  • TA的每日心情
    慵懒
    2016-10-24 09:55
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2016-12-7 10:27:21 | 显示全部楼层 |阅读模式
    分享到:
    本期为大家带来MCU请求网络时间的方法,前期例程http://club.gizwits.com/thread-4032-1-1.html手机APP远程控制STM32底板Gokit2的4个LED,我们在此基础上添加同步网络时间方法。云端数据点:



    在开发向导下载串口通信协议,找到4.13,MCU请求获取网络时间:

    可以看出MCU发出的命令码是0x17,WIFI模组回复的命令码是0x18.
    下面开始增加同步网络时间方法:
    step1:在gizwits_protocol.h的PROTOCOL_CMDTYPE结构体添加2个命令码:


    step2:在gizwits_protocol.c文件里编写一个获取网络时间的API,即发送命令码0x17;

    step3:在gizwits_protocol.h文件**一下定义的获取网络时间API,另外**一个结构体用来保存时间:年、月、日、时、分、秒;

    step4:在gizwits_protocol.c里面的int32_t gizwitsHandle(dataPoint_t *currentData)函数里面添加以下代码,即WIFI模组返回时间后,就读取时间;在函数体外面定义一下用来保存时间的结构体mytime;


    step5:最后在main.c的userhandle里面添加打印日期的代码,这里1s打印一次便于观察;


    最后烧录好用串口调试助手看是酱紫的:




    这里只是演示了MCU获取时间的方法,在上电未连接服务器时获取的时间是有误的,具体需要根据实际修改,比如判断连接服务器后才获取时间。
    附件:
    1.完整keil工程源码:
    GokitDemo_MultiLEDs&GetTime.zip
    2.本例程的串口通信协议文档:
    GokitMultiLEDs-机智云接入串口通信协议文档.pdf
    3.测试手机APP:
    IOEDemo_Android_20161109.zip
    IOEDemo_iOS_20161109.zip
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-10-15 13:21
  • 签到天数: 183 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2016-12-7 10:40:40 | 显示全部楼层
    谢谢分享                           
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-25 06:19 , Processed in 0.122101 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.