• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

STM32MP157实现串口接收数据上云-4G设备向云发送数据

武飞扬头像
AゞOctopus๊
帮助1


前言

本篇分享:

这次将会用几篇博客分享STM32MP157实现串口接收数据上云的一个基础功能,实现STM32MP157的串口在接收到数据时能上传至服务器,让用户可以随时随地查看一个设备的实时信息。


4G设备向云发送数据:

一.AT指令

第一部分(使4G模块处于正常工作状态):

AT\r				    //模块开机状态下发送AT\r匹配波特率
AT CGMI\r				//读取模块厂商信息
AT CGMR\r				//读取详细的固件版本AirM2M_V5364_AT_S_NOTTS才支持
AT CPIN?\r				//查询卡是否插好
AT CSQ\r				//查询设置信号质量
AT CREG?\r				//查询网络注册状态
AT CGATT?\r				//查询附着GPRS网络
AT CSTT="","","" \r		//设置自动选择APN
AT CIICR\r				//激活移动场景,激活后能获取到IP
AT CIFSR\r				//查询IP,只有获取到IP后才能上网

首先,可以用一个USB转TTL串口模块将电脑与4G模块连接,并使用串口调试助手向4G模块发送指令。

这里推荐使用有保存串口发送数据的串口调试助手,如格西烽火:

学新通
波特率设置成9600、115200都可以

连接上后,向4G模块发送AT指令,向4G模块发送上述指令无error返回即表明4G模块处于正常工作模式

第二部分(建立连接):

这部分使用三条AT指令用于实现4G模块与云平台的连接,格式如下图所示

AT MCONFIG="ClientID","username","password"\r 
AT SSLMIPSTART="域名 ","端口"\r
AT MCONNECT=1,120\r		 

第二部分建立连接的AT指令首先需要得到MQTT连接参数

这里简述一下阿里云平台的操作,点击之前创建的设备,点击查看DeviceSecret,一键复制设备证书,打开阿里云参数小工具

学新通
将复制的设备证书粘贴至此处,下方就能生成连接所需的MQTT连接参数了

学新通

接着,按照格式分别将设置MQTT、建立连接的AT指令补充完整

补充完整后的AT指令如下:

AT MCONFIG="863488057879453|securemode=3,signmethod=hmacmd5|","863488123279453&a1cdS8zCRA0","4AE94260C41231FE1DD13F2CC65DB1B9"\r			//设置MQTT
AT SSLMIPSTART="a1cd16zCRA0.iot-as-mqtt.cn-shanghai.aliyuncs.com","1883"\r		//建立连接
AT MCONNECT=1,120\r		 //建立会话

至此所有连接需要用到的AT指令都已知晓。

二.连接阿里云

首先,使用USB转TTL串口模块实现电脑与4G模块的通讯。

然后,发送AT\r至4G模块,待4G模块返回OK后即可逐一发送后续指令。

第二部分指令发送完成后返回阿里云设备界面发现设备已在线并更新最后上线时间。

学新通
第三部分(上传数据):

上传数据的AT指令格式如下所示:

AT MPUB="Topic",1,0,"payload"\r //发送数据

三.上传数据

完成上述步骤后即可开始上传数据,先禁用设备再启用,使设备断开连接。

学新通
然后,补全上传数据的AT指令。

点击产品,设置一个功能。

学新通
再点击添加标准功能,根据需求添加一个标准功能,这里选择添加电压功能。

学新通
添加完成后,点击设备模拟器模拟属性的上报

学新通
模拟发送一个数据。

学新通
可以看到设备到云平台消息中划线部分就是我们要的数据。

将Topic和payload按照格式将AT指令补充完整: AT MPUB=“Topic”,1,0,“payload”\r

发送数据其他的Topic类型可以在产品-Topic类列表里查找。

至此上传数据的AT指令已补充完整。

最后,使用USB转TTL串口模块连接电脑与4G模块。

然后,发送AT\r至4G模块,待4G模块返回OK后即可逐一发送后续指令即可实现数据上传。

注意,在串口助手中发送数据中的引号要改为 \\22并在AT指令结尾处添加 \r,否则无法正常发送,补充完后的指令如下所示。

AT MPUB="/sys/a1cd16zCRA0/863488057879453/thing/event/property/post",1,0,"{\\22id\\22:1661139282955,\\22params\\22:{\\22CurrentVoltage\\22:37},\\22version\\22:\\221.0\\22,\\22method\\22:\\22thing.event.property.post\\22}"\r //发送数据

上传成功的数据将在物模型中显示

更换数值则修改payload中对应的值即可,如这里即是更改CurrentVoltage:后的值。

学新通
至此,4G设备已成功向云发送数据。


结语

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgaeggc
系列文章
更多 icon
同类精品
更多 icon
继续加载