STM32中使用cJSON
cJSON 下载地址
https://github.com/DaveGamble/cJSON
将其拉取到本地是有很多文件,但只有两个比较重要 “cJSON.c” ,“cJSON.h”
我们将其添加到自己工程目录下
其中 在进行函数操作 cJSON 会进行malloc 申请内存,而其申请的内存在堆上面 ,堆空间不足时可能会导致一系列的错误。
因此我们需要扩展STM32的堆内存, 默认情况下时 0x200
我们在工程中找到对应的 .s 文件 如
startup_stm32f030xc.s
找到
Heap_Size EQU 0x200
这一行将0x200 修改为对应的数值如下图所示,即可
因为cJSON会大量的申请内存,若不及时释放可能会导致,内存泄漏等问题
如下是cJSON中会申请内存,及其对应的释放函数
上面一系列,完成后就可以在STM32的工程中使用cJSON