教你用STM32獲取新冠疫情數(shù)據(jù)(裸機版)
掃描二維碼
隨時隨地手機看文章
文章目錄
- 前言
- 開發(fā)板的選擇
- 獲取疫情數(shù)據(jù)API接口
- ESP8266發(fā)送HTTPS請求
- LCD顯示
- 代碼下載
- 在其他MCU上的實現(xiàn)
前言
2020,新冠肺炎疫情在全球蔓延,國內(nèi)得到了有效的控制,最近國內(nèi)部分地區(qū)的疫情形勢又緊張起來。不知道大家是否了解我之前做的一個新冠肺炎疫情監(jiān)控平臺,基于跨平臺Qt實現(xiàn),從桌面Qt,到嵌入式Qt,相關(guān)文章:基于桌面Qt環(huán)境的疫情監(jiān)控平臺開發(fā)筆記:- [開源]基于桌面Qt的肺炎疫情監(jiān)控平臺
- [開源]基于桌面Qt的肺炎疫情監(jiān)控平臺1.1版本
- [開源]我用STM32MP1做了個疫情監(jiān)控平臺1—交叉編譯環(huán)境搭建
- [開源]我用STM32MP1做了個疫情監(jiān)控平臺2—Qt環(huán)境搭建
- [開源]我用STM32MP1做了個疫情監(jiān)控平臺3—疫情監(jiān)控平臺實現(xiàn)
- [開源]我用STM32MP1做了個疫情監(jiān)控平臺4—功能完善界面重新設(shè)計
開發(fā)板的選擇
開發(fā)板用的是我在大四時自己設(shè)計的STM32開發(fā)板——NiceDay,基于STM32F103RET主控。前幾天看大佬說有學(xué)生在大一就自己畫板打樣了,我感到自愧不如??!這是我設(shè)計的第二塊板子(第一塊是畢業(yè)設(shè)計兩輪平衡車主板),是在大四快畢業(yè)時,畢設(shè)實物和論文完成之后還有點時間,就設(shè)計了這款板子,最開始是準備做桌面天氣時鐘的。獲取疫情數(shù)據(jù)API接口
2020新冠疫情的爆發(fā),各大互聯(lián)網(wǎng)IT公司和個人都開發(fā)了實時疫情地圖平臺,騰訊新聞、丁香園、網(wǎng)易、新浪等等,這些數(shù)據(jù)大小都在幾百KB,對于PC和嵌入式Linux來說,不用在意數(shù)據(jù)量的大小,但是對于存儲非常有限的MCU來說,數(shù)據(jù)量的大小是不得不考慮的一個問題,而且對于ESP8266來說,AT指令的方式,SSL緩存最大只有4096個字節(jié)的緩存!經(jīng)過網(wǎng)上一番搜索,找到了幾個數(shù)據(jù)量小的API,但是有的接口連接不穩(wěn)定,剛連上就掉線了,最后終于找到了一個連接穩(wěn)定,數(shù)據(jù)量小,數(shù)據(jù)齊全的接口:https://lab.isaaclin.cn/nCoV/zh
這是一位國人使用服務(wù)器爬蟲獲取了丁香園的數(shù)據(jù),然后開放了API接口供大家免費使用,目前已經(jīng)被調(diào)用了2千萬次,這個網(wǎng)站還包括了多個接口,我只使用到了其中的疫情數(shù)據(jù)這一個接口:https://lab.isaaclin.cn/nCoV/api/overall
,數(shù)據(jù)量大概為1300個字節(jié)。JSON數(shù)據(jù)內(nèi)容如下:https://lab.isaaclin.cn/nCoV/api/overall
這個接口地址,可以很容易的獲取到我們想要的信息:服務(wù)器地址:47.102.117.253
端口號:443
API地址:https://lab.isaaclin.cn/nCoV/api/overall
關(guān)于端口號,如果API地址是http開頭的,一般是選擇TCP連接類型,80端口;如果是https開頭的,一般是選擇SSL連接類型,443端口。這個信息在后面會用到。