如何使用TTGOT-Watch

电子说

1.3w人已加入

描述

第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唤醒和显示睡眠比整个重启过程快得多,你可以看到上面的视频几乎是即时响应。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分