使用UI‑Debugger控制RTC时钟
一、RTC特殊寄存器总表(全部为16bit无符号寄存器)
| 寄存器地址 | 功能 | 有效值(现实逻辑十进制) | 报文内传输16bit十六进制值 |
|---|---|---|---|
0x7002 |
年 | 2000‑2099 | 十进制年份直接转为16bit十六进制,例:2025 → 0x07E9 |
0x7003 |
月 | 1‑12 | 例:9月 → 0x0009 |
0x7004 |
日 | 1‑31 | 例:9日 → 0x0009 |
0x7005 |
小时 | 0‑23(强制24小时制,无12小时模式) | 例:12点 → 0x000C |
0x7006 |
分钟 | 0‑59 | 例:30分 → 0x001E |
0x7007 |
秒 | 0‑59 | 例:45秒 → 0x002D |
0x7008 |
时间确认寄存器 | 固定写1 | 0x0001 |
✅关键点:
- 先依次写
0x7002 ~ 0x7007;最后必须写0x7008 = 0x0001,写入的整套时间才加载进硬件RTC开始计时,不写确认,时间完全不生效。- 星期:芯片内部自动计算,没有写寄存器,也不能写星期。
- 寄存器报文传输:发送的是16位二进制数值(写成16进制方便代码编写),不是ASCII字符串。
- UI‑Debugger‑III调试软件输入框填十进制数字,软件内部自动转换成16bit十六进制报文;手写原始串口报文,必须填转换后的十六进制字节。
二、UI编辑器中两个时钟控件使用
1. 数字时钟 Digital Clock
- 直接放置控件,不需要填写writeAddr变量地址;
- 控件自动读取芯片内部RTC寄存器,画面自动实时刷新时间;
- 可配置:字库ID、字体颜色、时间显示格式(Y‑M‑D H:M:S等);
- MCU串口修改RTC寄存器后,画面自动更新,不需要额外给时钟控件发指令。
2. 模拟时钟 Analog Clock(表盘指针时钟)
- 无需绑定变量地址;自动读取系统RTC;
- 需要配置表盘底图、时针/分针/秒针图片素材;
- RTC时间变化,指针自动旋转。
❗重要:这两个时钟控件不能通过
parameterAddr参数地址直接修改时间,只能修改控件外观;修改时间只能操作0x7002‑0x7008特殊寄存器。
三、写RTC时间完整操作流程(示例时间:2025‑09‑09 12:30:45)
按照乐升【串口写数据指令】,依次发送7条写寄存器指令:
- 写地址
0x7002,值0x07E9(年=2025) - 写地址
0x7003,值0x0009(月=9) - 写地址
0x7004,值0x0009(日=9) - 写地址
0x7005,值0x000C(小时=12) - 写地址
0x7006,值0x001E(分钟=30) - 写地址
0x7007,值0x002D(秒=45) - 写地址
0x7008,值0x0001,确认生效RTC时间
发送确认指令完成后,屏幕时钟立刻更新,芯片硬件RTC从此开始自动计时。
四、读取RTC时间
MCU发送串口读数据指令,依次读取寄存器0x7002~0x7007;
屏幕返回2字节原始16bit数值,MCU收到后,把十六进制数值转换为十进制,得到当前年、月、日、时、分、秒。
五、两种开发方案
方案A:使用LT7589硬件RTC(推荐)
- 硬件必要条件:板子焊接32.768KHz外部晶振 + RTC后备电池。
- 有晶振+电池:断电之后RTC继续跑,上电不用重同步时间。
- 无晶振:断电时间丢失,每次上电MCU必须重新设置一遍RTC时间。
- MCU上电同步一次时间;之后芯片内部硬件自动走时。
- UI放置数字/模拟时钟,画面自动跑时间;MCU不需要循环刷屏。
方案B:MCU外部RTC,不使用屏内置RTC
MCU自己管理RTC,每秒把年月日时分秒,通过普通writeAddr变量推送给字库数字控件显示;
不需要32.768K晶振,但是MCU需要持续不断发送串口更新画面。
六、高频踩坑清单(全部来自手册与实际工程)
- ❌忘记写确认寄存器
0x7008 = 0x0001:写完全部年月日时分秒,时钟完全不变。 - ❌小时使用12小时制:RTC只支持24小时制。
- ❌试图给时钟控件发parameterAddr修改时间:时钟控件只读取系统寄存器,parameterAddr只能修改外观,不能设置时间。
- ❌报文直接发十进制ASCII字符:串口报文必须是16bit二进制数值,不是’2’’0’’2’’5’这类ASCII字符。
- ❌断电时间归零:检查32.768K晶振焊接、RTC后备电池电压。
- ✔模拟器UI_Emulator‑III:模拟器默认跟随电脑系统时间;串口写RTC指令在模拟器同样可以生效。
作者:龚李欣 创建时间:2026-10-28 18:17
最后编辑:龚李欣 更新时间:2026-11-02 20:02
最后编辑:龚李欣 更新时间:2026-11-02 20:02