資料介紹
硬件設(shè)備由 MCU、MCU 上的 OS、各種傳感器、WIFI/藍(lán)牙/3G/4G 以及其他聯(lián)網(wǎng)通信模塊和應(yīng)用程序構(gòu)成。 其中硬件設(shè)備有兩種接入方式, 第一種就是通過(guò)聯(lián)網(wǎng)通信模塊接入網(wǎng)關(guān), 通過(guò)網(wǎng)關(guān)完成數(shù)據(jù)的發(fā)送與接收, 最終將數(shù)據(jù)轉(zhuǎn)發(fā)到云平臺(tái)或者手機(jī)端。 第二種就是硬件設(shè)備直接與手機(jī)實(shí)現(xiàn)本地連接, 進(jìn)行數(shù)據(jù)的交換包括配網(wǎng)等操作。 因?yàn)樵贫似脚_(tái)數(shù)據(jù)傳輸采用JSON協(xié)議,因此,硬件堆JSON的解析非常重要。傳統(tǒng)的C JSON解析非常龐大,在微處理器中,這無(wú)疑是一個(gè)巨大的問(wèn)題。因此,編寫(xiě)了一個(gè)非常簡(jiǎn)單的JSON你判定,解析,與鍵值校驗(yàn)的三個(gè)純C語(yǔ)言函數(shù)。占用空間非常小。具體的代碼如下文所示:
硬件設(shè)備由 MCU、MCU 上的 OS、各種傳感器、WIFI/藍(lán)牙/3G/4G 以及其他聯(lián)網(wǎng)通信模塊和應(yīng)用程序構(gòu)成。 其中硬件設(shè)備有兩種接入方式, 第一種就是通過(guò)聯(lián)網(wǎng)通信模塊接入網(wǎng)關(guān), 通過(guò)網(wǎng)關(guān)完成數(shù)據(jù)的發(fā)送與接收, 最終將數(shù)據(jù)轉(zhuǎn)發(fā)到云平臺(tái)或者手機(jī)端。 第二種就是硬件設(shè)備直接與手機(jī)實(shí)現(xiàn)本地連接, 進(jìn)行數(shù)據(jù)的交換包括配網(wǎng)等操作。
因?yàn)樵贫似脚_(tái)數(shù)據(jù)傳輸采用JSON協(xié)議,因此,硬件堆JSON的解析非常重要。傳統(tǒng)的C JSON解析非常龐大,在微處理器中,這無(wú)疑是一個(gè)巨大的問(wèn)題。因此,編寫(xiě)了一個(gè)非常簡(jiǎn)單的JSON你判定,解析,與鍵值校驗(yàn)的三個(gè)純C語(yǔ)言函數(shù)。占用空間非常小。具體的代碼如下文所示:
/***************************************
name: JSON C函數(shù)庫(kù) C文件
***************************************/
#include "include.h"
/***************************************
name: 函數(shù)聲明
input:
output:
description:
***************************************/
char json_check(char *str); //JSON 校驗(yàn)函數(shù)
char json_get_value(char *json,char *json_key , char *json_value); //JSON獲取鍵值
char json_check_value(char *str1, char *str2); //JSON 鍵值對(duì)比函數(shù)
/***************************************
name: JSON 校驗(yàn)函數(shù)
input: 字符串
output: 合法JAON 返回1 不合法JSON 返回0
description:
***************************************/
char json_check(char *str)
{
char str_length; //定義字符長(zhǎng)度變量
str_length = strlen(str); //計(jì)算字符長(zhǎng)度
if(str[0] == '{' && str[str_length-1] == '}') //通過(guò)首尾大括號(hào)判斷是否為JSON
{
return 1; //如果字符串為合法JSON 返回1
}
else
{
return 0; //如果字符串為合法JSON 返回0
}
}
/***************************************
name: JSON 獲取鍵值函數(shù)
input: JSON字符串 要獲取的鍵名 獲取鍵值的字符串
output: 如果獲取成功返回1 獲取失敗返回0
description:
***************************************/
char json_get_value(char *json,char *json_key , char *json_value)
{
char *json_key_start; //定義鍵名開(kāi)始的位置
char *json_key_end; //定義鍵名結(jié)束的位置
char json_key_length; //定義鍵名長(zhǎng)度
char *json_value_start; //定義鍵值開(kāi)始的位置
char *json_value_end; //定義鍵值結(jié)束的位置
char json_value_length; //定義鍵值長(zhǎng)度
json_key_start = strstr(json,json_key); //獲取鍵名開(kāi)始的位置
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 自編適用于嵌入式單片機(jī)Json封包與解析的程序
- 極簡(jiǎn)單片機(jī)最小系統(tǒng)制作完全圖解 11次下載
- 單片機(jī)最小應(yīng)用系統(tǒng)及外部擴(kuò)展總線(xiàn)資料下載
- 面向NoSQL數(shù)據(jù)庫(kù)的JSON文檔異常檢測(cè)模型 20次下載
- 單片機(jī)音樂(lè)程序的設(shè)計(jì)原理解析資料下載
- 適用于PIC和AVR器件的JSON解碼器 6次下載
- 設(shè)計(jì)并制作一個(gè)單片機(jī)最小系統(tǒng) 37次下載
- 使用單片機(jī)做一個(gè)簡(jiǎn)單的流水燈的程序和燒寫(xiě)資料免費(fèi)下載
- 51單片機(jī)中斷的簡(jiǎn)單學(xué)習(xí)資料免費(fèi)下載
- 51單片機(jī)最小系統(tǒng)是什么?51單片機(jī)最小系統(tǒng)的電路介紹
- 使用單片機(jī)模擬電話(huà)鍵盤(pán)的資料合集免費(fèi)下載
- java生成json格式數(shù)據(jù) 和 java遍歷json格式數(shù)據(jù) 0次下載
- aJson-master(arduino的json解析很好) 78次下載
- JSON教程 29次下載
- 單片機(jī)從入門(mén)到精通系列講座(一)之單片機(jī)最小系統(tǒng)及I/O應(yīng)用 8159次下載
- 單片機(jī)最小系統(tǒng)原理圖講解 1.5w次閱讀
- 怎么用C+JS結(jié)構(gòu)來(lái)處理JSON數(shù)據(jù)? 803次閱讀
- 分享幾個(gè)格式化輸出json文件的方法 6060次閱讀
- 51單片機(jī)的最小系統(tǒng)應(yīng)用說(shuō)明 8207次閱讀
- 單片機(jī)最小體系電路原理 9707次閱讀
- 在Python中高效使用JSON的四種方法 2750次閱讀
- 如何自制一個(gè)AVR單片機(jī)ISP下載線(xiàn) 4227次閱讀
- 單片機(jī)最小系統(tǒng)的組成及其原理解析 6.3w次閱讀
- 單片機(jī)最小系統(tǒng)板制作方法 2.3w次閱讀
- 怎么編寫(xiě)一個(gè)最簡(jiǎn)單的單片機(jī)程序? 3.6w次閱讀
- 告訴你怎么編寫(xiě)一個(gè)最簡(jiǎn)單的單片機(jī)程序 4.3w次閱讀
- 自動(dòng)根據(jù)json字符串生成javabean類(lèi) 6464次閱讀
- ARDUINO IDE編寫(xiě)和AVR單片機(jī)程序的下載 1w次閱讀
- 關(guān)于一個(gè)簡(jiǎn)單單片機(jī)項(xiàng)目的一些想法 904次閱讀
- 單片機(jī)入門(mén)指南:單片機(jī)最小系統(tǒng)組成電路及其作用 8189次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論