基于STM32+MQTT连接阿里云获取网络时间


说明:本次从阿里云获取网络时间,是接着上一章的基础上进行的(基于STM32+FreeRtos+DHT12+ESP8266+MQTT连接阿里云(链接: link.))。

1.流程说明

在这里插入图片描述

2.流程分析

2.1.连接路由器

首先连接路由器(wifi),得到网络状态之后,进行服务器的连接。
在这里插入图片描述

2.2.连接服务器

网络连接成功之后,连接阿里云平台服务器,并得到连接回执。
在这里插入图片描述

2.3.订阅NTP 时钟同步响应

连接服务器之后,我们开始订阅NTP 时钟同步响应,用于后面的发布NTP 时钟同步请求,获取时间戳。
在这里插入图片描述

2.4.发布NTP 时钟同步请求

订阅NTP 时钟同步响应之后,我们开始发布NTP 时钟同步请求,等待服务器返回时间戳。
在这里插入图片描述

2.5.服务器返回数据

收到服务器返回的数据:

{"deviceSendTime":"1592361428000","serverSendTime":"1645599995121","serverRecvTime":"1645599995121"}

在这里插入图片描述
然后对数据进行解析,得到服务的返回的时间戳。

在这里插入图片描述

2.6.网络时间戳转成北京时间(注意时区:8)

在这里插入图片描述

3.实物图如下

在这里插入图片描述
在这里插入图片描述

  • 13
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
STM32是一款基于Cortex-M内核开发的微控制器系列,具有高性能、低功耗和丰富的外设接口,广泛应用于物联网等领域。而LWIP(Lightweight IP)是一款轻量级的TCP/IP协议栈,适用于嵌入式系统。 阿里云服务器是阿里巴巴集团提供的云计算服务平台,具有高可靠性、高可扩展性和灵活性。 在使用STM32与LWIP开发物联网应用时,可以借助LWIP的TCP/IP协议栈实现STM32阿里云服务器之间的通信。 首先,需要在STM32上配置LWIP协议栈,包括网络接口的初始化、IP地址的分配等。可通过参考LWIP文档提供的API函数进行配置。 然后,通过STM32网络接口与阿里云服务器建立连接。可以使用LWIP提供的Socket API对服务器进行连接、发送和接收数据。 在与阿里云服务器通信时,可以根据需求选择TCP或UDP协议。TCP提供可靠的连接和流式传输,适用于数据传输要求高可靠性的场景;而UDP则提供简单的无连接传输,适用于实时性较强的场景。 在与阿里云服务器进行数据交互时,可以使用HTTP、MQTT等协议。HTTP协议可用于发送HTTP请求并接收服务器响应,适用于传输大量数据或进行通用数据交互;而MQTT协议适用于物联网场景,可实现设备与服务器之间的发布和订阅机制。 通过以上方式,可以实现STM32阿里云服务器之间的通信,实现数据的上传、下发、远程控制等功能。同时,可以结合阿里云提供的云服务,如云数据库、云存储等,实现更多的物联网应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值