目錄:
天氣資料解析1–json格式資料處理天氣api介面返回的資料,中間遇到了點問題,裡面涉及到的知識:串列埠通訊、json字串咱們之前都有介紹過,那我就藉此機會,利用cjson處理一下這個資料報吧。
有時我們的應用想要獲取天氣預報資訊,網上有不少天氣預報api提供天氣資料服務,我們以心知天氣提供的api為例,看看如何使用cjson解析心知天氣api返回的資料報。
上面加粗的地方,key處替換為你自己的私鑰;dalian處替換為你要查詢的目標城市;zh-hans處替換為en就是英文的顯示方式了。我們為了oled顯示方便,先使用英文的顯示方式。
為了可以動態顯示天氣資訊,我們使用串列埠傳送資料至stm32,用來模擬網路獲請求到的資料,然後微控制器解析完之後顯示到oled屏上,顯示城市資訊和天氣溫度。
以後會寫乙個使用網路模組實時呼叫網路上天氣資訊的例程,敬請留意。解析過程**現的問題:
解決辦法:
將malloc.**件中的巨集定義更改如下:
原來#define mem_max_size 35*1024
改為#define mem_max_size 16*1024
此引數的大小由返回的json資料報大小決定,緩衝區大小要比最大的包要大一些才可以。實現的功能:
pc機的串列埠助手設定位元率為115200,拷貝心知天氣api返回的字串直接串列埠傳送;
stm32f103c8t6微控制器的串列埠1接收上面的字串,使用cjson解析此字串;
解析之後的結果儲存至結構體中暫存;
oled顯示結構體中天氣和溫度的值。
因為乙個字元寬度為8px,所以一行可以顯示128px/8px=16個字元,使用oled_showstr來顯示字串的話,注意控制字串長度,如果格式化之後超過16個字元,那麼顯示會有序列的現象。歡迎注
解析心知天氣API介面返回的json資料
json資料結構如下 北京今天和未來4天的預報 心知天氣json資料型別說明原址 daily last update 2015 09 20t18 00 00 08 00 資料更新時間 該城市的本地時間 解析如下 jsonobject jsonobject new jsonobject respons...
cjson構建 cJSON的構造和解析
對於cjson的使用,我主要是用來模擬遠端伺服器端返回的乙個json型別的目錄結構,客戶端進行獲取並進行解析,把解析出來的目錄按照原本的結構顯示在本地。cjson是乙個超輕巧,攜帶方便,單檔案,簡單的可以作為ansi c標準的json解析器。cjson結構體 typedef struct cjson...
cJSON的構造和解析
對於cjson的使用,我主要是用來模擬遠端伺服器端返回的乙個 json 型別的目錄結構,客戶端進行獲取並進行解析,把解析出來的目錄按照原本的結構顯示在本地。cjson 是乙個超輕巧,攜帶方便,單檔案,簡單的可以作為 ansi c 標準的json 解析器。進入cjson.h標頭檔案中可以檢視cjson...