本作品由安信可社區(qū)用戶
noonezero制作
以下是我的項(xiàng)目之再也不用手動(dòng)關(guān)燈系列,為了方便小伙伴們看效果,大家可以先點(diǎn)擊看視頻。
https://www.bilibili.com/video/BV1BN411V7Ad/?vd_source=54c5db21948db2378659b7e8e42bafbf
一個(gè)消息框設(shè)置成時(shí)間,這里給服務(wù)器設(shè)置了一個(gè)MQTT遺囑消息,每隔一分鐘發(fā)下服務(wù)器時(shí)間,有緊急事情可以直接發(fā)消息顯示,或者崩潰后顯示遺囑消息。
下面是兩個(gè)開關(guān),之前寫代碼是想把分別接入GPIO0和GPIO1上,這樣接LED或者繼電器都OK,結(jié)果發(fā)現(xiàn)LVGL代碼中把這兩IO口都上拉了,除了IIC,touch都上拉了,作罷。
于是,我就又用安信可的ESP12F和繼電器模塊做了一個(gè)控制器(如圖),非大電流電器都可以控制。
01、代碼運(yùn)行思路講解
首先是聯(lián)網(wǎng),需要寫下Wi-Fi賬戶和密碼:
加載LVGL動(dòng)畫,然后在custom.c中實(shí)現(xiàn)連接MQTT和接收消息處理,MQTT服務(wù)器采用SDK示例中的mosquitto,本來是想連接巴法,能后續(xù)實(shí)現(xiàn)智能音箱的同步控制,但是使用巴法訂閱和發(fā)布消息得從底層重寫,暫時(shí)沒那么大的能力和時(shí)間。
實(shí)現(xiàn)效果:
在屏幕上點(diǎn)擊開關(guān),控制命令會(huì)直接發(fā)布到對應(yīng)主題上,當(dāng)收到MQTT消息后,根據(jù)對應(yīng)主題及命令實(shí)現(xiàn)對應(yīng)功能,也可以用MQTT客戶端發(fā)送命令,讓小安派來實(shí)現(xiàn)。
02、lvgl代碼生成
●這里用得是GUI-Guider生成,下載地址
●具體使用可以看社區(qū)另一個(gè)用戶(ID:ifwz1729)的帖子,鏈接在此https://bbs.ai-thinker.com/forum.php?mod=viewthread&tid=43707&_dsign=2e71ea3a
最后復(fù)制到工程目錄,./demos/240X320_ui 修改圖片這里,引用lvgl就可以了,步驟在上述用戶(ID:ifwz1729)帖子里有具體講解。
03、MQTT代碼
本人也是用的示例,不過在master分支中已經(jīng)沒有這兩了,但找到了在其他分支中有,可以點(diǎn)鏈接 。
這部分代碼在./demos/240X320_ui/custom/custom.c文件中。
如果有Homeassistant的小伙伴,可以通過nodered接入HA,這樣就可以實(shí)現(xiàn)更多的聯(lián)動(dòng)效果了,大家想用的可以直接下載代碼使用,也能學(xué)習(xí)下LVGL。
相關(guān)代碼,點(diǎn)擊原貼查看https://bbs.ai-thinker.com/forum.php?mod=viewthread&tid=43867&extra=page%3D1&_dsign=fe357e1d
審核編輯 黃宇
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
8963瀏覽量
85087 -
MQTT
+關(guān)注
關(guān)注
5文章
647瀏覽量
22392 -
LVGL
+關(guān)注
關(guān)注
1文章
79瀏覽量
2887
發(fā)布評論請先 登錄
相關(guān)推薦
評論