ESP 8266 tft屏幕顯示之2.8寸(320x240)
先看效果

簡介
esp8266驅(qū)動2.8寸TFT屏幕,加載有動畫,顯示太空人動畫!
esp8266物聯(lián)網(wǎng)控制屏幕亮度,空調(diào)。
物聯(lián)網(wǎng)部分用的是阿里云,控制端用的是微信小程序,控制方式是云產(chǎn)品流轉(zhuǎn)(數(shù)據(jù)流轉(zhuǎn))mqtt方式。
使用TFT_eSPI庫驅(qū)動

? ? ? ? 這個庫的操作方式,可以百度一下,上面的文章有很多,這里就不介紹了。
? ? ? ? 本項目可分為由兩部分組成,一個開機界面,一個運行界面



先來說說開機界面
首先把庫函數(shù)簡單封裝一下,方便后面直接調(diào)用!

? ? ? ?開機動畫可以分解成三部分,既人物動畫,提示語動畫,還有加載動畫。人動畫是最簡單的部分,用軟件提取GIF動圖轉(zhuǎn)成jpg文件,然后jpg文件轉(zhuǎn)hex代碼直接導(dǎo)入,然后依次循環(huán)即可。? ? ? ??
? ? ? ? 然后就是提示語動畫,把提示語動畫看成一句一句的,然后放進數(shù)組,然后也是循環(huán)播放即可。
?? ? ?最后就是進度條,可以理解為外面一個空心圓角矩形,里面動的是實心圓角矩形,然后用循環(huán)調(diào)整y軸向前進就OK了。(注意y軸最大要比屏幕長度小一些,具體小多少依自己屏幕來調(diào)整)


? ? ? ??

?效果:
? ? ? ?

運行界面
先是繪畫出文字線框,根據(jù)驅(qū)動庫線條函數(shù)一條一條繪制即可。

效果:

接下來就是各區(qū)域了!
依舊可以用上面封裝的函數(shù),把矩形去掉,調(diào)一下參數(shù)即可!
例如城市和日期

效果:

其它的也可以依照上面的方法復(fù)刻制作!
最后效果:(粉色底色,方便查看)

最最最最重要的是,讓它動起來!還各動各的。
充分運用millis()函數(shù)就OK了。

那么時間顯示就是:


? ? ? ?最后在loop函數(shù)中直接調(diào)用就OK了!
? ? ? ? 至于信息來源,有各種平臺(心知天氣)平臺的好處是穩(wěn)定,方便,可能有現(xiàn)成的庫文件可以用有,但是可能會收費使用。或者可以裸API獲取信息,得靠自己解析使用,至于來源嘛!莫度后自己試可用性,好處是白嫖,壞處就是穩(wěn)定性不一定好,麻煩找!
物聯(lián)網(wǎng)
? ? ? ? 可以給它加入物聯(lián)網(wǎng)屬性,這里就需要用一個物聯(lián)網(wǎng)平臺,平臺有很多(百度,阿里,華為等等)
? ? ? ?這里我用的是阿里的,mqtt協(xié)議直連,但是mqtt賬號和密碼是通過編碼得到的。再但是
有人封裝了現(xiàn)成的庫可以用,那就直接用就OK了!
? ? ? ?設(shè)備上云了,還得有控制方式才可以,
我這里使用的是微信小程序,自己弄一個。小程序控制的方式可以分為兩種,一種是API控制
一種是mqtt轉(zhuǎn)發(fā),兩種各有好處,API的好處是官方的,有各種API操作,覆蓋了整個物聯(lián)網(wǎng)需要的,不好的地方我目前感覺的地方是請求公共參數(shù)(也就是API封裝)。mqtt轉(zhuǎn)發(fā)不好的地方是需要在平臺注冊兩個設(shè)備,對于微信小程序來說還有一個合法域名的問題(這個問題很嚴(yán)重,但是自己玩就還好)。
API方式可以看這個鏈接:https://blog.csdn.net/weixin_42852371/article/details/104997213
mqtt轉(zhuǎn)發(fā)的方式可以看這個鏈接:https://www.bilibili.com/read/mobile?id=4992901
上面的文章都很詳細,對于API的封裝問題上面鏈接已解決。
如果不會弄小程序,我自己制作了一個小程序,可以控制設(shè)備!到時候我可以提供。