你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32上cJSON的移植与使用

[复制链接]
szongen 发布时间:2020-6-17 16:52
JSON是在互联网领域数据传输中较常用的协议,该协议比较轻量级也通俗易懂,在物联网快速发展的时代,物物与平台服务器的连接越来越多,JSON在他们之间的数据通信中也是应用越来越多。" U3 m7 ~* J1 d

- \& l9 S; ], [. W先是使用STM32cubemx创建工程,这里使用的STM32f407,只使能了USART1。4 P* f; `6 V; n( S
创建工程.jpg
7 A5 ^, ?9 ?# Q4 `0 R: M9 B8 f' h8 H/ F
接下来是在MDK上安装cJSON的拓展包+ d- L9 ?+ X2 m7 x7 h8 A
安装cJSON.jpg
: `# c1 V) `: F5 u* y
+ a. Q' k- t/ M; S将cJOSN添加至STM32工程中; {: x8 _) A, j# p+ i- e8 c
添加至工程.jpg ( i* e: N, C: y
在cJOSN.h可以看到所有的API! A# Z2 r( f/ Z! J- |/ c
cJOSN.h.jpg   p# S6 }& R% f# X2 ~; ^
# w; v3 c0 Y3 e9 N3 u* ~% Z
接下来创建一个JSON数据( P" F3 ^5 O' ^5 T
JSON.jpg ) j+ I# C. o* P) }
, M5 D$ v( Y7 z3 u% G
使用cJSON_Parse函数进行解析
: Q3 \3 \2 C$ X( c# ?& I7 P 解析.jpg 4 e- ^  B0 s1 \( \  H8 q5 x

1 g- n% g" E2 E再将键值存入变量中,再打印出来。最后输出cJSON的指针
) D3 y" g& C( Y7 A4 G4 u$ r5 y 打印.jpg 1 T2 d8 g! Z" o3 W4 j  T% {0 O

4 F; H! T. A% ~7 Z: X8 {; Z串口监视器输出结果
) `. w' T2 r4 c3 ~" A) P6 q 串口.jpg
$ K0 t$ l9 B  \& H) `与预设的的数据键值一致,解析完成。
0 B; J& q* d, n- `! V$ h如果使用了cJSON_Print函数一点要记得释放内存,不然会造成内存泄漏。. L$ @  T( y0 z; d: G$ O# L

json.zip

下载

671.35 KB, 下载次数: 192

工程

赞 收藏 3 评论4 发布时间:2020-6-17 16:52

举报

4个回答
李康1202 回答时间:2020-6-18 08:55:11
顶一下
huaishan 回答时间:2020-6-19 13:26:50
谢谢楼主分享!!
Saoskywalker 回答时间:2021-2-21 11:58:40
谢谢分享
w014017 回答时间:2021-2-21 14:57:47
谢谢楼主分享
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版