资料介绍
硬件设备由 MCU、MCU 上的 OS、各种传感器、WIFI/蓝牙/3G/4G 以及其他联网通信模块和应用程序构成。 其中硬件设备有两种接入方式, 第一种就是通过联网通信模块接入网关, 通过网关完成数据的发送与接收, 最终将数据转发到云平台或者手机端。 第二种就是硬件设备直接与手机实现本地连接, 进行数据的交换包括配网等操作。 因为云端平台数据传输采用JSON协议,因此,硬件堆JSON的解析非常重要。传统的C JSON解析非常庞大,在微处理器中,这无疑是一个巨大的问题。因此,编写了一个非常简单的JSON你判定,解析,与键值校验的三个纯C语言函数。占用空间非常小。具体的代码如下文所示:
硬件设备由 MCU、MCU 上的 OS、各种传感器、WIFI/蓝牙/3G/4G 以及其他联网通信模块和应用程序构成。 其中硬件设备有两种接入方式, 第一种就是通过联网通信模块接入网关, 通过网关完成数据的发送与接收, 最终将数据转发到云平台或者手机端。 第二种就是硬件设备直接与手机实现本地连接, 进行数据的交换包括配网等操作。
因为云端平台数据传输采用JSON协议,因此,硬件堆JSON的解析非常重要。传统的C JSON解析非常庞大,在微处理器中,这无疑是一个巨大的问题。因此,编写了一个非常简单的JSON你判定,解析,与键值校验的三个纯C语言函数。占用空间非常小。具体的代码如下文所示:
/***************************************
name: JSON C函数库 C文件
***************************************/
#include "include.h"
/***************************************
name: 函数声明
input:
output:
description:
***************************************/
char json_check(char *str); //JSON 校验函数
char json_get_value(char *json,char *json_key , char *json_value); //JSON获取键值
char json_check_value(char *str1, char *str2); //JSON 键值对比函数
/***************************************
name: JSON 校验函数
input: 字符串
output: 合法JAON 返回1 不合法JSON 返回0
description:
***************************************/
char json_check(char *str)
{
char str_length; //定义字符长度变量
str_length = strlen(str); //计算字符长度
if(str[0] == '{' && str[str_length-1] == '}') //通过首尾大括号判断是否为JSON
{
return 1; //如果字符串为合法JSON 返回1
}
else
{
return 0; //如果字符串为合法JSON 返回0
}
}
/***************************************
name: JSON 获取键值函数
input: JSON字符串 要获取的键名 获取键值的字符串
output: 如果获取成功返回1 获取失败返回0
description:
***************************************/
char json_get_value(char *json,char *json_key , char *json_value)
{
char *json_key_start; //定义键名开始的位置
char *json_key_end; //定义键名结束的位置
char json_key_length; //定义键名长度
char *json_value_start; //定义键值开始的位置
char *json_value_end; //定义键值结束的位置
char json_value_length; //定义键值长度
json_key_start = strstr(json,json_key); //获取键名开始的位置
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 基于Json格式的文本视图验证工具 8次下载
- C语言简单数据解析 8次下载
- 自编适用于嵌入式单片机Json封包与解析的程序 12次下载
- 极简单片机最小系统制作完全图解 11次下载
- 面向NoSQL数据库的JSON文档异常检测模型 20次下载
- 解析单片机与CPU的区别资料下载 2次下载
- 单片机modbus例程解析资料下载 13次下载
- 看码源总结Keil C 51单片机延时程序编写资料下载 8次下载
- 适用于PIC和AVR器件的JSON解码器 6次下载
- Json如何进行写入与读取详细方法说明 7次下载
- PHP如何返回json格式的数据给jquery的详细资料说明 7次下载
- java生成json格式数据 和 java遍历json格式数据 0次下载
- android使用JSON进行网络数据交换 0次下载
- aJson-master(arduino的json解析很好) 77次下载
- JSON教程 29次下载
- 单片机的最小系统由什么组成 单片机的最小系统包括哪些 728次阅读
- 单片机最小系统原理图讲解 5504次阅读
- 怎么用C+JS结构来处理JSON数据? 464次阅读
- 分享几个格式化输出json文件的方法 4656次阅读
- 单片机的最小系统及基本原理 1.5w次阅读
- 51单片机实现最小系统的原理和电路与编程设计说明 7999次阅读
- 51单片机的最小系统应用说明 7050次阅读
- 单片机最小体系电路原理 9055次阅读
- 在Python中高效使用JSON的四种方法 2387次阅读
- 单片机最小系统的组成及其原理解析 5.9w次阅读
- 单片机最小系统板制作方法 2.2w次阅读
- ajax请求json数据实例 2480次阅读
- 单片机最小系统的组成详解(电源、晶振、复位电路) 30.3w次阅读
- 自动根据json字符串生成javabean类 6239次阅读
- ARDUINO IDE编写和AVR单片机程序的下载 9392次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多