999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于API技術的嵌入式天氣預報設計

2018-02-22 12:32:00劉孝趙王成
無線互聯科技 2018年23期
關鍵詞:單片機

劉孝趙 王成

摘 要:在現實生活中,天氣預報對人們的生活非常重要,很多人一天的計劃和行動都會根據天氣預報進行決定。文章的設計基于將STM32 F103微控制器與天氣數據API互連的設備,經過單片機處理把天氣信息應用在各種顯示設備,既節省了傳感器硬件資源,又能實時播報各個區域的天氣預報,這種設備移動便攜,可以安放在不同場景。

關鍵詞:天氣預報;API;單片機;數據

傳統的氣象顯示系統主要由溫度、濕度等傳感器采集數據,再通過接收模塊將采集到的數據發送給單片機。這樣各傳感器在焊接時可能會有不同程度的損壞,有時候可能某個引腳接觸不良,調試時就會出現各種各樣的問題,而且不易查找。本設計在硬件上省去了各傳感器,通過WiFi模塊連接路由器或手機上的熱點,利用JSONP的方法跨域獲取天氣數據。利用專業的商業氣象數據網站心知天氣,此網站免費提供API接口,不僅穩定還實時更新,可以達到每小時400次刷新,能提供國內200多個城市的天氣實況,6項生活指數,預測未來3天的天氣,使用者也可以隨時切換城市,不受地域限制。

1 天氣API介紹

在網上有很多天氣API,本系統使用的是商業氣象網站心知天氣API。此天氣API是面向開發者,可以提供豐富穩定的天氣數據服務。通過心知天氣API,可以輕松地把心知天氣的數據整合進手機應用、桌面應用、網站,甚至嵌入式操作系統里。心知天氣提供了全球多達2.4萬個城市的天氣數據。而且它還可以支持多達13種語言。心知天氣API不僅可以返回天氣的數據,還可以對氣象災害進行預警,查看當前空氣質量的實況,逐小時潮汐等數據[1]。

每個API里面會設有很多參數。例如location后面是城市名稱或者城市代碼,language后面是返回數據的語言種類,unit后邊為溫度單位,c代表的是攝氏度。

當我們請求API時,服務器將以jason的形式返回天氣數據。

"results": [{ “location”: { “id”: “C23NB62W20TF”, “name”: “西雅圖”, “country”: “US”, “timezone”: “America/Los_Angeles”, “timezone_offset”: “-07:00” },

這個是返回的一部分jason數據。id后面代表的是城市ID,name后面代表的是城市名稱,country后面代表的是城市所在的國家。

2 系統設計

2.1 系統結構

本設計的整個系統由STM32F103單片機、ESP8226 WiFi模塊和顯示屏幕組成。同樣的也需要一個能夠連接互聯網的WiFi路由設備。STM32F103的MCU通過串口連接到ESP8226 WiFi模塊,顯示屏通過SPI協議進行通信,ESP8226 WiFi模塊通過Internet與天氣服務器通信。整體的結構如圖1所示。STM32 F103首先通過串口向ESP8226 WiFi模塊發送命令,允許ESP8226 WiFi模塊連接到Internet,然后,通過請求API數據,獲得天氣服務器上的天氣數據,最后通過解析獲得天氣數據,把天氣信息顯示在液晶顯示屏上[2]。

2.2 WiFi電路設計

ESP8226 WiFi模塊的原理如圖2所示。模塊可以為其他設備聯網,也可以自己單獨作為控制器,因為它接受標準的聯網協議。在作為一個WiFi模塊時,既能單獨存在,也能嵌入其他設備當中。內部包含了ROM和SRAM存儲寄存器,MCU可以通過不同的接口訪問寄存器,當搭載在其他主機中運行時,其內部的高速存儲寄存器能夠在減少內存方面作出很大的貢獻,提高系統整體的性能。ESP8266在承擔適配器的任務時,能通過SPI接口或IIC接口將其加入其他微控制器中,而且連接方法很簡單。該模塊強大的存儲和處理能力體現在通過GPIO端口集成傳感器和其他設備的能力,以最大限度地減少開發和運營過程中的資源,整個模塊在設計上以最低的價格發揮了最優的實用性[3]。

2.3 顯示電路設計

本設計采用液晶屏作為顯示模塊,這是一款通用式電阻式觸摸屏,LCD模塊外加玻璃鋼化屏,外部排針是黃色全銅鍍金,不僅美觀還耐用。采用ILI9341驅動IIC,可以與CPU接口直接連接。這里所用的液晶屏是16位并口驅動模式,其中利用DB1至DB8和DB10至DB17這16個引腳,讓它們與MCU的D0至D15口連接,實現液晶屏與開發板的通信。需要特別指出的是這個液晶屏模塊采用雙電源來供電,主電源和背光供電引腳都需要接上才能正常顯示。

3 系統軟件設計

3.1 主程序設計

系統軟件由3部分組成:天氣預報、客戶端和天氣服務器,天氣預報總結了客戶需求的基本數據。其中天氣預報結論提供客戶需求的基礎數據,客戶端的設計重點是地圖瀏覽,以及把用戶訪問請求(漫游、放大、縮小等)發送給服務器,心知天氣服務器則負責處理用戶的訪問請求。

軟件在設計的過程中主要通過串口給WiFi模塊發送指令,與WiFi模塊通信,解析天氣數據,以及驅動液晶顯示屏的操作。單片機首先做一些初始化工作,比如時鐘初始化,WiFi初始化,液晶屏幕初始化,使能RTC時鐘,然后先獲取一次天氣信息。最后等待,一直等待到整點的時候,再更新一次天氣信息。每到一次整點的時候,都會重新獲取一次天氣信息,并且把它顯示到液晶屏幕上[4]。

3.2 初始化地圖元素

要顯示地圖,使用者需要使用天氣服務器API提供的類和方法創建天氣預報的基本地圖信息。在心知天氣服務器的相關地圖服務中創建一個地圖,并定義一個中心點坐標,將某個城市定義為地圖中心坐標,并設置地圖顯示級別,一般城市級別設置為10,縣級別設置為14。部分代碼如下:

var map = new Map.Map(“dituContent”); var point = new Map.Point(102.55,24.3333)map.centerAndZoom(point,10

3.3 查詢天氣

獲取到城市名稱后,就可以直接讓ESP8226 WiFi模塊連接到互聯網,然后再通過請求API數據獲取到心知天氣服務器上的天氣數據,最后解析得到的天氣數據,把天氣信息顯示在液晶顯示屏上。

WeatherStateweatherState=new WeatherState();

if(result!=null)

{

String state1=result.getProperty(5).toString(); //

溫度

String state2=result.getProperty(10).toString(); //

天氣實況

}

3.4 獲取城市碼數據庫文件

數據庫文件存儲了中國許多省市的數量,天氣主要通過使用城市代碼獲得,如果系統是第一次運行,系統將從心知天氣服務器API端口獲取城市名代碼,然后將其解析,創建數據庫,再將數據填入數據庫對應的表中,如果不是第一次運行,系統就直接訪問數據得到城市代碼[5]。

3.5 界面顯示調試

為了獲得更好的界面顯示效果,對系統的界面進行調試,屏幕上顯示天氣的狀況需要用到天氣圖標,這個圖標可以自己在網站中查找,然后將輸出灰度選為單色,這樣的好處是得到最小的取模數據。在調試的時候嘗試調出兩種不同的效果,如圖3—4所示。

4 結語

此次實時天氣系統的設計采用keil5作為調試軟件進行總程序的調試,設計中主要涉及對stm32系列的MCU研究。總體上想要完成本設計,需要熟練掌握SPI通信和SPI FLASH存儲,JSONP跨域獲取天氣數據,還有ESP8266無線模塊配置模式等,設計將單片機與互聯網技術聯系起來,有一定的技術基礎。主要實現的功能是對當天天氣情況進行實時更新,也能對未來3天天氣情況進行預報,還能隨時改變顯示城市,有一定的實用性。

[參考文獻]

[1]李澤椿,畢寶貴,金榮花,等.近10年中國現代天氣預報的發展與應用[J].氣象學報,2014(6):1069-1078.

[2]余衛東,張廣周,張弘.河南省農用天氣預報業務系統的設計與應用[J].氣象與環境科學,2011(3):79-82.

[3]譚曉光,羅兵.天氣預報分析型數據模型及生成[J].應用氣象學報,2014(1):120-128.

[4]吳亞林.淺析基于Android的天氣預報系統設計與實現[J].山東工業技術,2015(24):123.

[5]羅顯發.氣象網站公眾天氣預報更新方法淺析[J].青海科技,2010(1):68-69.

Abstract:In real life, weather forecasts are very important to peoples lives. Many people plan and act on a daily basis based on weather forecasts. The design of the design of a single chip based on the microcontroller and the weather API weather forecast, it can get the weather data on the Internet, after the MCU STM32F103 processing can display the weather information on the LCD screen.

Key words:weather forecast; API; single chip microcomputer; data

猜你喜歡
單片機
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的多功能智能插排
電子制作(2019年11期)2019-07-04 00:34:48
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
小議PLC與單片機之間的串行通信及應用
電子制作(2018年12期)2018-08-01 00:48:04
MSP430單片機在仿真中要注意的幾點問題
電子制作(2017年9期)2017-04-17 03:00:53
基于單片機的平衡控制系統設計
電子制作(2017年19期)2017-02-02 07:08:27
基于單片機的三維LED點陣設計
電子制作(2016年21期)2016-05-17 03:52:51
Microchip推出兩個全新PIC單片機系列
基于Proteus的單片機控制系統的仿真設計
主站蜘蛛池模板: 亚洲欧美自拍一区| 久久精品亚洲中文字幕乱码| 日韩中文欧美| 强乱中文字幕在线播放不卡| 久久a毛片| 午夜国产理论| 亚洲aaa视频| 久久久久国产一区二区| 国产传媒一区二区三区四区五区| 18禁不卡免费网站| 久久精品国产精品青草app| 欧美成人精品一级在线观看| 四虎影视国产精品| 日韩区欧美区| 国产精品短篇二区| 婷婷五月在线视频| 亚洲欧洲免费视频| 国产精选小视频在线观看| 99re精彩视频| 久久香蕉国产线看观看精品蕉| 国产亚洲精品97AA片在线播放| 91九色国产在线| 午夜无码一区二区三区| 爽爽影院十八禁在线观看| 福利在线免费视频| 中文国产成人精品久久一| 91国内在线观看| 色综合五月| 一级在线毛片| 精品国产自在在线在线观看| 国产成人免费| av一区二区人妻无码| 在线观看欧美国产| 亚洲美女高潮久久久久久久| 国产网友愉拍精品视频| 亚洲欧美日本国产专区一区| 亚洲最大福利视频网| 欧美 国产 人人视频| 不卡午夜视频| 国产噜噜噜| 欧美激情网址| 欧美激情视频在线观看一区| 毛片久久网站小视频| 激情成人综合网| 欧美日韩专区| 亚洲婷婷在线视频| 亚洲精品免费网站| 欧美日韩动态图| 亚洲成aⅴ人片在线影院八| 99久久国产自偷自偷免费一区| 一级毛片免费观看久| 99精品热视频这里只有精品7| AV老司机AV天堂| 丝袜久久剧情精品国产| 欧美激情,国产精品| 久久精品日日躁夜夜躁欧美| 久久国产亚洲欧美日韩精品| 欧美日韩国产在线播放| 深爱婷婷激情网| 欧美视频在线播放观看免费福利资源| 岛国精品一区免费视频在线观看 | 免费观看无遮挡www的小视频| 91久久国产成人免费观看| 天天综合亚洲| 国产精品三级专区| 黄色片中文字幕| 国产人碰人摸人爱免费视频| 色综合天天综合中文网| 国产丝袜一区二区三区视频免下载| 亚洲无码免费黄色网址| 国产精品无码翘臀在线看纯欲| 国产国语一级毛片在线视频| 97久久免费视频| 国产免费a级片| 毛片手机在线看| 最新国产你懂的在线网址| 在线播放真实国产乱子伦| 亚洲Va中文字幕久久一区| 欧美区国产区| 国内精品九九久久久精品 | 全部无卡免费的毛片在线看| 在线观看欧美精品二区|