作者:sonatasss
前言
上篇部分網友反饋邏輯問題
首先檢討下上篇文章敘事過程
因為我本身也是邊學邊寫
過程是
需求——官網例子——發現問題——解決問題
原本打算連遇到的坑也一併寫了
免得大家再採坑
而且也本打算一篇講完
結果寫一半發現內容有點多
而且也搞到凌晨三點多了
就打算程式碼部分另起一篇詳細說
事先沒規劃好篇幅是我的錯
之前程式碼示例為了安全性也都只是程式碼片段
以後上完整yaml檔案,只要接線一樣
到手直接點選編譯安裝就能用
這樣應該麼問題了吧
直接喂到嘴裡好了吧
至於接線還沒考慮好繼續用軟體模擬
還是這樣簡單畫圖
還是乾脆接線過程也路個影片?
大家給個意見
程式碼部分
圓規正轉
上期只能顯示固定內容是沒有意義的
固定內容列印張只貼上去好了
1。條件觸發顯示特定內容和溫溼度示例
示例程式碼
https://gitee。com/sonata1/esphome/raw/master/墨水屏/溫溼度+人體感應翻頁。yaml
使用針腳
所用字型
https://gitee。com/sonata1/esphome/raw/master/墨水屏/WenQuanDengKuanWeiMiHei-1。ttf
我們想顯示中文就需要中文字型
可中文字型一般檔案尺寸都在4M-10M之間
esp32 flash只有4M
除了用精簡版字型,和擴充flash之外還可以只燒錄特定字元
在glyphs: 後面跟上要用到的字元即可
這樣只需要呼叫字型檔裡的部分字元,就沒有容量問題了
我們建立大小兩種字元分別命名font1 font2呼叫
這裡建立了page1 page2兩個頁面
第一個頁面第一行的 0 20
代表 在螢幕X座標0Y座標20輸入SMZDM字元
至於center_left代表對齊方式,這個和網頁css類似
有需要的可以自行研究
第二行顯示的時間 time1
是在time模組生成的
%H %M意味著只顯示小時分鐘
至於三四行 溫度後面的 %。1f則是佔位符 ,
代表顯示的內容是逗號後面的感測器資料
看著不太好理解
我們分解一下,就好理解了
就是保留一位小數顯示溫度和溼度
紅外感測器顯示有人會翻頁
程式碼如圖
第五篇講過
2。顯示圖片
我們製作一個smzdm網站的二維碼圖片
儲存在配置檔案目錄
增加image元件並設定ID後
下面的程式碼就變成了紅外觸發就會顯示二維碼
大家可以嘗試自己製作2個溫溼度圖片代替文字
其實esphome有專門的二維碼元件
有需要的可以去看看示例
3,表格
首先新增畫圖元件graph
繪製兩個表格
表二本身是多線條的
這裡沒有多餘感測器只畫了一條線
這裡沒設好網格和標題
回頭弄一個好看點的介面
更新在gitee上
總結
這期沒什麼實際操作內容,主要是理解程式碼
大家可以以此類推自己做co2或者甲醛 天然氣的監控顯示器
建議的大家多看看官網
大部分都有示例的