RT-Thread
使用STM32CubeMX
添加RT-Thread
:
https://www.rt-thread.org/document/site/tutorial/nano/nano-port-cube/an0041-nano-port-cube/
使用ST官方的G0板卡
STM32G070RBx
物联网平台阿里云IoT
使用MQTT.fx接入物联网平台:https://help.aliyun.com/document_detail/140507.html?spm=a2c4g.11186623.6.565.798c243eZYQQkE
通信模组2G GPRS模块
配置服务器地址和端口:
AT+IPPORT="a1TAQrjlyNl.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883
配置用户和用户密码:
AT+USERPWD="STM32G0_Node&a1TAQrjlyNl","9F42B96E4E8BACB4C1AC18780C103B7E46433F82"
配置ClientID:
AT+CLIENTID="12345|securemode=3,signmethod=hmacsha1,timestamp=10|"
IDE
Keil5-MDK
数据使用jansson库进行json数据解析
jansson库github:https://github.com/akheron/jansson
keil-MDK添加jansson pack以及用法:https://blog.csdn.net/yannanxiu/article/details/52712723
json数据格式化在线工具:https://www.json.cn/
上报json数据:
{
"version": "V1.0",
"id": 12345,
"params": {
"CurrentTemperature" : 28.3 //CurrentTemperature——阿里云IoT中定义的物模型数据
},
"method": "thing.event.property.post"
}
问题记录
DS18B20温度采集
刚开始用RT-Thread Studio来玩,玩了之后发现RT-Thread Studio真不好用。已经在RT-Thread做好的DS18B20的温度采集程序,将DS18B20程序移植使用STM32CubeMX生成的MDK工程中就采集不了。时序中延时函数使用的是RT-Thread提供的微妙延时函数。后面发现是时钟设置不对导致的。
使用json_pack生成json格式数据失败 解析和生成json的时候要保证有足够的堆空间,STM32G0的HAL库的启动文件默认分配堆只有512bytes,堆太小导致生成不了json。 guangjieMVP 原创文章 68获赞 46访问量 2万+ 关注 私信 展开阅读全文