最近有些地區的天氣前一秒還是晴空萬里,轉眼一言不合就帶來一場大風大雨。
上周安信可推出了小安派的2款開源硬件——AiPi-Eyes-S1、AiPi-Eyes-S2,安信可應用開發團隊用小安派開源硬件制作了一款桌面天氣站,為出行做好參考~
01功能分析
02Gui Guider模擬運行結果
也可到文末鏈接下載資料包,含GUI Guider 軟件及本次項目的GUI Guider 工程。
03UI 代碼移植
1、文件移植
因為此前已經把屏幕和觸摸的驅動寫好了,并且在Lvgl 下測試成功,所以本文不會介紹Lvgl 的移植。GUI Guider 在成功運行之后,才會生成最新的UI代碼。需要移植的程序代碼如下:
以上文件夾復制到工程的UI位置:Ai-Pi_Eeys/demos/240X320_ui。 因為M6X_SDK中的Lvgl沒有dclock 時鐘組件,所以也要把dclock 移植到SDK當中。dclock的目錄如下:M6x_Eyeslvglsrcextrawidgets
把整個dclock文件夾復制到:Ai-Pi_Eeysaithinker_Ai-M6X_SDKcomponentsgraphicslvglextrawidgets目錄下。
2、代碼修改
1)工程添加UI代碼
只需要在CMakeLists.txt中添加以下內容:
然后在main.c中引用gui_guider.h和custom.h,并定義lv_ui全局變量,且使用setup_ui()函數進行初始化:
2)HTTPS GET請求及時間獲取
然后隨手把HTTPS請求天氣的邏輯實現一下,大概就是寫一個HTTPS的客戶端,然后發送請求,時間可以在響應頭中獲取,Date參數中獲取,北京時間只要把小時+8就OK,比如:
?
天氣情況獲取,這里使用的是天氣API的免費的未來七天天氣接口
請求數據如下:
天氣站最高可以顯示未來七天的天氣情況,我們這里只顯示未來三天的數據。 3)WiFi 連接功能 天氣站使用的屏幕是電容觸摸屏,所以可以通過觸摸輸入WiFi 名稱及密碼連接WiFi。輸入完成后,點擊確定按鈕即可觸發WiFi連接,天氣站在連接成功WiFi之后,會保存當前的路由信息,下次重啟時可以自動連接這次的WiFi。按鈕的點擊事件及讀取輸入的WiFi名稱及密碼代碼:
審核編輯:湯梓紅
-
移植
+關注
關注
1文章
379瀏覽量
28130 -
開源硬件
+關注
關注
8文章
208瀏覽量
29815 -
開發板
+關注
關注
25文章
5050瀏覽量
97456 -
上位機
+關注
關注
27文章
942瀏覽量
54810 -
安信可
+關注
關注
0文章
152瀏覽量
3984
原文標題:用小安派開源硬件制作一個桌面天氣站
文章出處:【微信號:安信可科技,微信公眾號:安信可科技】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論