前言
最近疫情形势又紧张起来了,全国多地出现零星病例,这也表明疫情并没有随着时间的过去而结束,大家还是要保持
常态化防控,做好个人防护,尽快打疫苗建立免疫屏障。
为了学以致用,去年春节疫情期间,我做了个基于STM32的新冠肺炎疫情监控平台,从 桌面PC 到 嵌入式ARM Linux ,再到 MCU平台
。有需要的朋友可以使用公众号的搜索功能,查找相关内容。今天分享
一篇之前发的文章:基于STM32 MCU的疫情
监控平台,STM32通过串口和ESP8266进行AT指令交互,连接API接口获取最新的疫情数据,并显示在LCD显示屏上,可以直观方便的了解到最新的疫情数据信息。最终效果如下:
获取疫情数据API接口
2020新冠疫情的爆发,各大互联网IT公司和个人都开发了实时疫情地图平台,腾讯新闻、丁香园、网易、新浪等等,这些数据大小都在几百KB,对于PC和嵌入式Linux来说,不用在意数据量的大小,但是对于存储非常有限的MCU来说,数据量的大小是不得不考虑的一个问题,而且对于ESP8266来说,AT指令的方式,SSL缓存最大只有4096个字节的缓存!经过网上一番搜索,找到了几个数据量小的API,但是有的接口连接不稳定,刚连上就掉线了,最后终于找到了一个连接稳定,数据量小,数据齐全的接口:
https://lab.isaaclin.cn/nCoV/zh
这是一位国人使用服务器爬虫获取了丁香园的数据,然后开放了API接口供大家免费使用,目前已经被调用了2千万次,这个网站还包括了多个接口,我只使用到了其中的疫情数据这一个接口:
https://lab.isaaclin.cn/nCoV/api/overall
,数据量大概为1300个字节。JSON数据内容如下:
为了能使用ESP8266获取这个API返回的内容,我们还需要知道以下信息:TCP连接类型,端口号,API地址。我们在浏览器中按F12,打开开发者模式,在地址栏输入
https://lab.isaaclin.cn/nCoV/api/overall
这个接口地址,可以很容易的获取到我们想要的信息:
服务器地址:81.68.90.103
端口号:443
API地址:https://lab.isaaclin.cn/nCoV/api/overall
关于端口号,如果API地址是http开头的,一般是选择TCP连接类型,80端口;如果是https开头的,一般是选择SSL连接类型,443端口。这个信息在后面会用到。图中的IP是很久之前的了,最新的API地址是:
81.68.90.103ESP8266发送HTTPS请求
WiFi模块选择的是乐鑫的ESP8266-01S模组,支持AP、Station和AP
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。