小安派開源硬件,你的體驗到哪一步了?有大佬@灰太狼在B站和安信可社區(qū)發(fā)布了基于小安派AiPi-Eye-S1的天氣站,來看看過程~
02.作品說明
2.1硬件部分
硬件上使用到了AiPi-Eye-S1開發(fā)板以及3.5寸 240*320像素的電容觸摸屏,日常使用USB線通過開發(fā)板上的typec接口為設(shè)備進行供電。使用USB轉(zhuǎn)TTL工具進行程序下載。
2.2軟件部分
①開發(fā)環(huán)境
個人是在Windows環(huán)境下使用VSCode進行項目的開發(fā),具體的環(huán)境搭建過程可參考論壇中的帖子:【零基礎(chǔ)搭建小安派Windows 開發(fā)環(huán)境】
②UI設(shè)計
本項目使用了LVGL圖形庫,使用相應(yīng)的輔助開發(fā)工具SquareLine Studio來進行界面設(shè)計與C代碼生成。
③天氣信息獲取
本項目使用易客云天氣提供的免費天氣API接口來獲取當前地區(qū)基礎(chǔ)七日天氣與基礎(chǔ)實況天氣。由于請求數(shù)據(jù)時使用到用戶ID與密鑰參數(shù),因此需要進行賬號注冊。
④程序設(shè)計思路
本項目程序參考了官方給的天氣站示例(AiPi-Open-Kits/AiPi-Eyes_weather at master · Ai-Thinker-Open/AiPi-Open-Kits · GitHub),其整體的實現(xiàn)思路如下:
系統(tǒng)初始化
基于FreeRTOS創(chuàng)建多個任務(wù)
(1)wifi_mainWi-Fi運行任務(wù);
(2)lvgl_task運行LVGL,實現(xiàn)觸摸屏顯示與觸摸功能,當觸發(fā)網(wǎng)絡(luò)連接條件時,會向隊列中發(fā)送WiFi名稱密碼數(shù)據(jù);
(3)bl61x_show_heap_size_task通過串口打印內(nèi)存占用情況(設(shè)定波特率為2000000);
(4)queue_task分析處理隊列數(shù)據(jù),執(zhí)行相應(yīng)程序。各任務(wù)間的通信是基于隊列實現(xiàn)的,目前該任務(wù)處理的隊列數(shù)據(jù)包含以下4種:
? a.Wi-Fi名稱密碼數(shù)據(jù) -> 數(shù)據(jù)保存,進行Wi-Fi連接,Wi-Fi連接成功會向隊列中發(fā)送Wi-Fi連接成功數(shù)據(jù);
? b.Wi-Fi連接成功數(shù)據(jù) -> 創(chuàng)建https_get_weather_task任務(wù)來獲取時間、天氣信息;
? c.未來七日天氣數(shù)據(jù) -> 更新屏幕顯示內(nèi)容;
? d.基礎(chǔ)實況天氣數(shù)據(jù) -> 更新屏幕顯示內(nèi)容。
(5)https_get_weather_task通過https獲取未來七日天氣及基礎(chǔ)實況天氣,成功獲取后將向隊列中發(fā)送相應(yīng)數(shù)據(jù)。任務(wù)通過定時器http_timers來設(shè)定數(shù)據(jù)獲取的頻率。
03.固件燒錄
3.1 固件燒錄
以下操作需要再環(huán)境配置完成后進行。
①程序編譯
在項目根目錄下打開終端,輸入make。
如無錯誤,最終會顯示以下內(nèi)容。
②固件燒錄
在終端中輸入make flash COMX=COMxx 其中xx為實際連接的下載器的COM口號,如下圖中COM口為20。
根據(jù)提示按下復位按鈕,進行燒錄。
3.2 網(wǎng)絡(luò)配置與天氣賬號
(1)在網(wǎng)絡(luò)配置菜單中輸入要連接的WiFi名稱及密碼。
(2)在天氣賬號菜單中輸入注冊易客云天氣后個人的appid與appsecret。
(3)點擊連接按鈕,若配置正確,則會跳轉(zhuǎn)到以下界面。
04.說明
4.1界面切換說明
在主界面下點擊下圖所示的對應(yīng)區(qū)域,可切換至相應(yīng)界面,在子界面下觸摸底部按鈕可切換至主界面。
4.2其他說明
需要注意的是,如果長時間運行,會因http服務(wù)器連接問題偶然出現(xiàn)卡死的問題,正嘗試進行解決......
審核編輯:湯梓紅
-
usb
+關(guān)注
關(guān)注
60文章
8158瀏覽量
271772 -
觸摸屏
+關(guān)注
關(guān)注
42文章
2380瀏覽量
118288 -
WINDOWS
+關(guān)注
關(guān)注
4文章
3610瀏覽量
91195 -
安信可
+關(guān)注
關(guān)注
0文章
188瀏覽量
4417
原文標題:0元用小安派AiPi-Eye-S1,做1個高顏值的天氣站
文章出處:【微信號:安信可科技,微信公眾號:安信可科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
零基礎(chǔ)開發(fā)小安派-Eyes-S1外設(shè)篇——GPIO 輸入輸出

零基礎(chǔ)開發(fā)小安派-Eyes-S1外設(shè)篇——I2S

零基礎(chǔ)開發(fā)小安派-Eyes-S1 外設(shè)篇——DAC

零基礎(chǔ)開發(fā)安信可小安派-Eyes-S1【入門篇】——初識小安派-Eyes-S1
零基礎(chǔ)開發(fā)小安派-Eyes-S1【入門篇】——初識小安派-Eyes-S1

用安信可的小安派小安派,DIY個簡單的CC表

零基礎(chǔ)開發(fā)小安派-Eyes-S1 外設(shè)篇 ——I2C

零基礎(chǔ)開發(fā)小安派-Eyes-S1【外設(shè)篇】——FLASH

零基礎(chǔ)開發(fā)小安派-Eyes-S1——初識LVGL并搭建最小工程
用小安派 DSL做一個天氣站

評論