第1步:什么是TTGO T-Watch?
TTGO T-Watch是基于ESP32的手表形狀開發套件。 16 MB閃存和8 MB PSRAM都是最高規格。它還內置一個240x240 IPS LCD,觸摸屏,micro-SD卡端口,I2C端口,RTC,3軸加速度計和一個自定義按鈕。背板也可以切換到其他模塊,如LORA,GPS和SIM。
但最重要的是它可以成為一個可用的手表是電力系統。它集成了AXP202多通道可編程電源管理芯片。這是我第一次看到具有I2C可控電源芯片的開發套件!
根據AXP202X_Library接口,您可以控制每個電源通道的開啟和關閉,讀取電池電量,充電狀態甚至直接關閉電源,就像按下電源按鈕一樣。
參考:
https://github.com/Xinyuan-LilyGO/TTGO-T-Watch
步驟2:簡單觀看PoC
電源芯片看起來不錯,但內置180 mAh的持續時間有多長電池?
由于它設計為手表外觀,讓我們從一個簡單的手表示例開始,作為PoC來檢查功率芯片的工作方式。
第3步:設計Watch Face
ESP32是一款功能非常強大的芯片,240 Mhz雙核CPU和80 Mhz SPI速度可以設計出非常流暢的顯示布局。所以我設計了一個不錯的手表面,連續掃描秒針。
然而,設計難度出乎意料的高,不容易在沒有眨眼的情況下取下最后一只秒針。我已經嘗試了4種額外的方法來制作它。上面的圖片顯示失敗的重繪,仍然是屏幕上未刪除的最后一秒像素。設計表面工作有很多話可以說,但在這個項目之外。我可以在下一個教程中詳細說明設計之旅,它應該被稱為“Arduino Watch Core”。
第4步:設置時間
T-Watch內置RTC芯片,這意味著它可以在開發時保持復位之間的時間。在它可以保留時間之前,我們應該先設置時間。
有多種方式設置時間:
ESP32具有WiFi功能,因此您可以同步時間與NTP
類似于其他電子設備,如數碼相機,你可以編寫一個用戶界面來設置時間
你可以使用GPS背板,那么你可以從衛星獲取時間
為了簡單起見,它仍然是一種不同的懶惰方式來設置時間,你可以在某個TFT時鐘示例中找到這種方式。在Arduino中編譯程序時,預處理器定義了2個變量“__DATE__”和“__TIME__”來記錄編譯時間。我們可以利用這些信息制作一個非常簡單的程序來設置RTC時間。
注意:
這個簡單的程序總是設置啟動時間。但編譯時間僅在首次啟動時有效,因此一旦設置時間成功,您應該用其他程序覆蓋。
參考:
https://gcc.gnu .org/onlinedocs/cpp/Standard-Predef 。..
步驟5:功耗
當手表運行時,顯示連續掃描秒針,它消耗的電量略高于60 mA。出于省電原因,它應在一段時間后進入睡眠模式。
如果我關閉LCD背光并呼叫ESP32深度睡眠,則會降至7.1 mA左右。對于180 mAh電池,它只能持續約1天。
我知道LCD芯片消耗的電流約為6 mA。根據ST7789數據手冊,有一個進入睡眠模式的命令。但是目前的TFT_eSPI庫還沒有睡眠模式API。
而且某處還有大約1 mA的耗電量。
步驟6:可編程電源管理芯片
開發套件中有許多芯片,根據他們的數據表,大多數芯片都支持省電模式。但是,并非所有庫都暴露了省電模式API。通過檢查并調用每個模塊進入睡眠模式,這是一個長時間的省電編碼。
直接關閉電源如何直接按下電源按鈕怎么樣? AXP202X_Library可以通過簡單地調用shutdown()函數來實現。在關斷模式下,它僅消耗略低于0.3 mA。 180毫安時電池可以持續25天!
注意:
我剛剛在6月28日為電池充電,您可以關注我的推文,了解最新的電池狀態。
更新:
7月18日電池耗盡,電池可以持續20天。在此期間我每天檢查幾次,我認為手表在正常使用中可以持續1-2周。
參考:
https://github。 com/lewisxhe/AXP202X_Library/pull/2
步驟7:程序
關注https://github.com/Xinyuan-LilyGO/TTGO-T-手冊頁安裝軟件和庫的說明。
在GitHub下載源代碼:https://github.com/moononournation/TTGO-T-Watch
打開,編譯并上傳 Set_RTC.ino 更新RTC日期和時間
打開,編譯和上傳 Arduino-T-Watch-simple.ino
完成!
簡單的監視程序將執行:
讀取RTC日期和時間
繪制時鐘標記(您可以選擇循環或方形時鐘標記)
顯示連續掃描秒針
60秒后關閉電源(或者您可以按住電源按鈕以便立即關機)
按電源按鈕再次打開
第8步:快樂編程!
TTGO T-手表可以做更多的簡單手表,例如
ESP32可以使WiFi和BT無線通信
使用觸摸屏面板可以開發更實用的UI
板載三軸加速度計(BMA423),內置步進計數器算法和其他多功能GS ensor
可更換的背板可以添加LORA,GPS,SIM功能
I2C端口可以擴展更多功能
步驟9: Arduino-T-Watch-GFX
Arduino-T-Watch簡單需要按住微小的電源按鈕才能喚醒并且LCD初始介紹很少秒延遲。所以用戶體驗不太好。
我已經添加了另一個名為Arduino-T-Watch-GFX的程序來改善這一點。此程序更改為使用Arduino_GFX顯示庫,它可以告訴顯示器進入睡眠模式以節省電量。因此,當ESP32進入輕度睡眠狀態時,它現在消耗的電流低于3 mA。此外,它現在可以觸摸屏幕觸發喚醒。 ESP32喚醒和顯示睡眠比整個重啟過程快得多,你可以看到上面的視頻幾乎是即時響應。
-
手表
+關注
關注
1文章
143瀏覽量
25224
發布評論請先 登錄
吊打蘋果,華為史上最薄的智能手表!WATCH FIT4 Pro有何看點?

Apple Watch Series 10全天候顯示秒數功能支持表盤增至四個
蘋果表示Apple Watch表帶用戶可放心佩戴
蘋果Watch Ultra 3將加入衛星通信功能
覽邦Watch Ultra真機上市丨金戈鐵馬,腕上小手機,超乎所見!
特斯拉新版watchOS應用將Apple Watch變身數字車鑰匙
蘋果或因擔憂Apple Watch銷量,據傳取消智能戒指開發項目
華為WATCH GT 5售價1488起,WATCH GT 5 pro售價2488起

華為智能手表WATCH GT 5 Pro可感知人類情緒發生

評論