這幾天一直在講理論基礎,估計大家都看膩了。今天帶着大家一起來做一款天氣顯示屏。可以顯示當地天氣,氣溫,當前環境溫度
而且,這次我們要用到SPI模式的12864屏幕,U8G2庫,18b20溫度傳感器,一鍵配網,HTTP協議等。算是對以前學過知識的補充吧。先上全套圖:
先說U8g2庫頭文件的引用,我們使用ESP8266的硬件SPI引腳,所以在引用的時候就不必再聲明MISO,MOSI2個引腳了,需要聲明的是cs,dc,reset。而且一定要注意,這些引腳号指的是芯片的GPIO引腳,不是模塊的管腳号。
然後聲明18b20單總線引腳。這裡使用的就是模塊的管腳号了。
整個程序用到了前幾篇文章的範例,通過HTTP請求天氣數據。然後通過程序轉換,在屏幕上繪制圖标。
同樣的,我們需要現在心知天氣上注冊一個賬号,取得APIKEY.,填入程序中,然後再聲明你想要顯示的城市拼音。
在程序中,定義不同字段代表的不同天氣
根據不同的天氣,調用屏幕繪圖函數。
讀取溫度傳感器數據,并在屏幕顯示出來
在屏幕上顯示城市名稱
根據天氣數據,在屏幕上繪制符号。因為隻是個演示,我沒有加雨量、雪、霧等天氣圖标,這些圖标在“u8g2_font_open_iconic_weather_4x_t”庫中沒有,所以需要大家自己繪制,用取模軟件取模後在程序中調用。
有興趣的朋友,可以把18b20換成溫濕度傳感器,在屏幕下方再加一行濕度數據。
使用時,需要用SmartConfig工具配網。
老規矩。想要的留郵箱,把代碼發給大家。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!