RT-Thread 使用cjson软件包发送64位长整型数据
cJSON
Ultralightweight JSON parser in ANSI C
项目地址:https://gitcode.com/gh_mirrors/cj/cJSON
免费下载资源
·
开发环境:野火的stm32f407,rt-thread studio版本是版本: 2.2.6,stm32f4的资源包为0.2.2,rt-thread版本为4.1.1,cjson软件包使用的版本是latest。
使用过程如下,获取当前时钟的时间戳,如果使用的是秒级数字的话,测试部分代码如下:
cJSON_AddLongLongToObject(cjson_root, "timestamp", (long)tv.tv_sec);
此时是正常的。转换工具测试也是正常的如下:
如果使用毫秒级的时间戳,转换工具测试是正常的,如下:
修改成如下代码:
cJSON_AddLongLongToObject(cjson_root, "timestamp", (long)tv.tv_sec*1000);
测试发现时间戳是负值,溢出了。搜索发现cjson库不支持64位,如果需要支持64位的话,需要自己修改代码。搜索之后发现了一篇文章,参考网址如下:
https://blog.csdn.net/zh7152106/article/details/115506265
根据说明修改cjson相关文件即可。
测试结果如下:
可以看到,打印的时间戳不在是负值而是正常值。
GitHub 加速计划 / cj / cJSON
10.45 K
3.16 K
下载
Ultralightweight JSON parser in ANSI C
最近提交(Master分支:2 个月前 )
424ce4ce
This reverts commit 5b502cdbfb21fbe5f6cf9ffbd2b96e4281a741e6.
Related to #860
4 个月前
32497300 - 5 个月前
更多推荐
已为社区贡献2条内容
所有评论(0)