开始把自己的学习写上去

这个是实际测试的,之前因为内存溢出。

 1 //======================================//
 2 //
 3 //参数设置
 4 //
 5 //======================================//
 6 unsigned char Parameter_set(char *setJsonText)
 7 {
 8     cJSON *set;
 9       uint8_t ret,value;
10       char *stype;
11     set = cJSON_Parse(setJsonText);
12         if(set)
13         {
14          value = cJSON_GetObjectItem(set,"SET")->valueint;
15          if(value == 0) //读取设置
16          {
17
18          }else if(value ==1)
19          {
20           stype = cJSON_GetObjectItem(set,"parameter")->valuestring;
21              if(memcmp(stype,"ID",2) == 0)
22              {
23                  stype = cJSON_GetObjectItem(set,"value")->valuestring;
24                I2C_EE_BufferWrite(stype,SET_ID_ADD,20);
25              printf("设置ID号:%s\n",stype);
26              }else if(memcmp(stype,"TIME",4) == 0)
27              {
28                  value = cJSON_GetObjectItem(set,"value")->valueint;  //设置故障上报时间  单位分钟
29
30                TWI_WriteByte(value&0Xff,SET_TIME_L_ADD);
31                  TWI_WriteByte(value>>8,SET_TIME_H_ADD);
32             printf("设置故障上传时间(分钟):%d\n",value);
33              }
34              else if(memcmp(stype,"MinFloor",4) == 0)
35              {
36                  value = cJSON_GetObjectItem(set,"value")->valueint;
37                TWI_WriteByte(value,SET_MinF_ADD);
38             printf("设置最小楼层:%d\n",value);
39              }
40              else if(memcmp(stype,"MaxFloor",4) == 0)
41              {
42                  value = cJSON_GetObjectItem(set,"value")->valueint;
43                TWI_WriteByte(value,SET_MaxF_ADD);
44              printf("设置最大楼层:%d\n",value);
45              }else if(memcmp(stype,"speed",4) == 0)
46              {
47                  value = cJSON_GetObjectItem(set,"value")->valueint;
48                TWI_WriteByte(value,SET_Speed_ADD);
49              printf("设置速度:%d\n",value);
50              }else if(memcmp(stype,"F_Time",3) == 0)
51              {
52                  value = cJSON_GetObjectItem(set,"value")->valueint;  //单位秒
53                TWI_WriteByte(value,SET_Speed_ADD);
54              printf("设置时间(秒):%d\n",value);
55              }
56          }
57         myfree(stype);
58         cJSON_Delete(set);
59         }
60     return ret;
61 }

View Code

转载于:https://www.cnblogs.com/sujianxv/p/6744037.html

STM32 CJSON解析说明相关推荐

  1. 解决方法:STM32使用cJSON解析数据失败

    一.问题 在 STM32 移植 cJSON 库后,使用 cJSON_Parse(),解析失败. char cmd[512] = "{\"msg\":\"this ...

  2. 用cJSON解析心知天气返回的数据包

    目录: 文章目录 调用天气API接口获取天气信息 解析天气信息字符串 测试结果 欢迎关注 后台网友留言,说参考这个链接 天气数据解析1–JSON格式数据 处理天气API接口返回的数据,中间遇到了点问题 ...

  3. 全面详解c语言使用cJSON解析JSON字符

    为什么选择cJSON来解析JSON字符串?因为简洁又简单,而且效率又快,cJSON工程文件也非常简单,仅一个.c文件和一个.h文件! 如果要自己写的话就是重造轮子了,况且效率上也不一定会比cJSON更 ...

  4. cJSON解析和打包

    目录 1. JSON格式 2. 解析 3. 打包 4. 源码分析 5. 问题记录 1. JSON格式 JSON格式 C语言:json库的使用 cJSON库源代码获取:https://github.co ...

  5. 利用cJSON解析JSON格式

    目录 一.JSON格式 二.cJSON下载 三.cJSON常用函数接口 四.cJSON解析JSON案例 1.一层键值 2.多层键值(两次为例) 3.json数组解析 五.JSON添加数据 (与链表类似 ...

  6. openresty cjson解析json数据

    openresty cjson解析json数据 官网:https://github.com/mpx/lua-cjson 文档:https://kyne.com.au/~mark/software/lu ...

  7. STM32嵌入式系统FreeRTOS使用cJSON解析和构建JSON

    一.环境 控制器STM32F407+MDK5.34+cJSON1.7.7 二.安装cJSON MDK中打开Pack Install,选择Generic下边MDK-Pack::cJSON,点击安装Ins ...

  8. cjson 对象是json数组型结构体_C语言 - cJSON解析特定格式 含有数组array类型的数据...

    在ESP32中使用了cJSON库,发现很好用.最近服务器端的JSON格式越来越多样,还是有些注意点,需要做下笔记记录下来. cJSON *MAC_arry = cJSON_GetObjectItem( ...

  9. cjson解析器说明

    1. cJSON cJson 是c语言编写的一个解析器. 是一个超轻巧,携带方便,单文件,简单的可以作为ANSI-C标准的JSON解析器.主要两个文件cJSON.c 和cJSON.h . 主要用来编码 ...

最新文章

  1. php 数组 添加元素、删除元素
  2. 2020-11-12(JNI开发常见错误)
  3. 我对香港数字生活的一些观察
  4. Linux安装gcc、gcc-c++等环境
  5. HR只在这些时间里看你的简历!
  6. segue和delegate实现两个页面传值
  7. ASP.NET Core 运行原理剖析
  8. 5分钟带你看懂 GCanvas渲染引擎的演进
  9. elasticsearch新增_SpringBoot 使用JestClient操作Elasticsearch
  10. 设置 git/npm/bower/gem 镜像或代理的方法
  11. JZ6-旋转数组的最小数字
  12. 服务器上装的hadoop系统,在Ubuntu Server 18.04.1中安装Hadoop系统环境
  13. iphone ping_如何在iPhone上运行Ping(网络诊断)
  14. 信息系统项目管理师 pdf_关于系统集成项目管理工程师和信息系统项目管理师的区别...
  15. 数学分析教程(科大)——2.5笔记+习题
  16. ECharts 饼图的合并显示
  17. 【Linux 】内核签名(签名内核模块)、linux 驱动签名、安装特定版本的 kernel-devel...
  18. 基于TI AM335X的工业网关参考设计分享
  19. 发布苹果App有哪些步骤流程
  20. 不要迷恋我,虽然我利用Python来耍植物大战僵尸,威力加强版

热门文章

  1. 牛客 数素数 (20)
  2. 平时学习中的拙作,希望交更多的朋友,希望得到更多的指导和交流
  3. Vim 高亮显示单词并查找
  4. 任务和特权级保护(一)——《x86汇编语言:从实模式到保护模式》读书笔记27
  5. TCP listen() Backlog 参数详解
  6. Linux SVN 命令详解
  7. HttpClient、OKhttp、RestTemplate对比
  8. mysql 查询有 float 类型的字段查不到
  9. JS:js 数组赋值问题 :值传递还是引用?
  10. 第18届浙江大学校赛 Mergeable Stack