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

安信可開源硬件:小安派Demo固件編譯和燒錄指南

開源硬件創(chuàng)客 15個(gè)酷應(yīng)用玩轉(zhuǎn)樹莓派 (工業(yè)智能新技術(shù)系列)

用小安派 DSL做一個(gè)天氣站

評論