随着智能家电的普及应用,消费者对于常用家电设备的功能要求也越来越高。对于时钟的要求也不仅仅只满足于看时间和闹钟功能,现在的智能家居几乎都有语音播报、语音提示的功能,能够准确的播报当前的时间,和倒计时功能。
目前产品设计常用的带语音播报和数码管显示的时钟方案一般有:
方案一:MCU+74HC573锁存芯片+时钟芯片+语音播报芯片;
方案二:MCU+74HC573锁存芯片+晶振+语音播报芯片;
而我们下面将要介绍的方案只需要MCU+WT588F02KD-24SS芯片+秒跳芯片即可实现上述方案设计所需的功能需求。
WT588F02KD-24SS数码管时钟方案简介
功能概述
◉可以支持4位数码管调节亮度(可以扩展10个)
◉可以支持32个发光二极管LED单独调光;
◉带按键唤醒,主动扫描功能和带按键返回;
◉内置亮度调节的电路---占空比8级可调,使用1K的频率;
◉可控制数码管显示不同字符,也可对单段数码管进行调节;
◉客户也可以通过配套下载器在线更换芯片内部语音内容。
WT588F02KD-24SS 模块
原理图设计
指令简介
WT588F02KD-24SS内置标准UART异步串口接口,属于3.3V TTL电平接口。通讯数据格式是:起始位:1位;数据位:8位;奇偶位:无;停止位:1位。使用电脑串口调试助手,需要正确设置串口的参数,设置如图
A.播放指令
命令码 |
功能 |
备注 |
A0 |
播放对应地址语音 |
|
AE |
音量调节 |
00为静音,1F为最大音量,共32级音量调节 |
AF |
循环播放当前语音 |
循环播放可被A0、AB、B0指令打断并失效 |
AB |
停止播放当前语音 |
|
B0 |
连码播放 |
B.时钟指令
命令码 |
功能 |
命令码详解 |
备注 |
FF 01 01 |
获取当前时钟 |
FF 01 01+R1 R2 R3 R4 R5 R6 R7 R8 R1:年 千位和百位; R2:年 十位和个位; R3:月; R4:日; R5:时; R6:分; R7:秒; R8:星期; (数据都为16进制) |
00:星期日 01:星期一 02:星期二 03:星期三 04:星期四 05:星期五 06:星期六 |
FF 01 02 R1 R2 R3 R4 R5 R6 R7 |
设置当前时钟信息 |
R1:年 千位和百位; R2:年 十位和个位; R3:月; R4:日; R5:时; R6:分; R7:秒; (数据都为16进制) |
|
FF 01 03 X1 X2 X3 X4 X5 X6 |
设置报警/闹钟信息 |
命令后接 6个数据,分别代表: X1:报警组, X2:报警状态,bit7=1,该报警组使能 X3:星期,bit7=1,星期使能 X4:日期,bit7=1,日期使能 X5:时,bit7=1,小时使能 X6:分,bit7=1,分钟使能 若设置报警组1每天7:30报警则发:7E 0B FF 01 03 01 80 00 00 87 9E B4 EF |
星期和日期二选一使能且只能设置每周某一个星期使能 20组报警组 X1从0x01~0x14 注意:X2的bit0~bit6用户可自定义状态,系统不会改变它的值; |
FF 01 04 |
获取当前报警信息 | 有报警,则反馈:FF 01 04 +如上6个信息 | 查询正在发生的报警。 |
FF 01 05 XX |
清除对应定时 | XX:报警组 | FF代表全部 |
FF 01 06 | 查询多少组定时 | 反馈:FF 01 06+报警组数 | |
FF 01 07 XX |
查询XX组定时信息 | 反馈:FF 01 07 X1 X2 X3 X4 X5 X6 | |
FF 01 08 | 清除报警跟倒计时中断信号 | 成功返回00,失败返回01 | |
FF 01 09 X1 X2 X3 X4 |
设置倒计时 |
X1 :倒计时控制寄存器 B7=1,倒计时使能 B6=1,倒计时重载数据使能 X2:倒计时计数器H X3:倒计时计数器M X4:倒计时计数器L |
最大支持4660小时倒计时,计时单位秒, 若想停止计时器,则让X1的bit7≠1。 |
FF 01 0A | 查询倒计时 | 反馈:FF 01 0A | 查询倒计时剩余秒数 |
FF 01 0B | 查询状态寄存器 |
发送:00 7E 05FF 01 0B 10EF 返回:7E 05FF 01 0BX1X2 X1:bit7=1,有报警信号; bit6=1,有倒计时信号; bit5=1,低电压信号; bit4=1,正在播放; bit3~0,预留 X2:预留 |
命令码 |
功能 |
命令码详解 |
备注 |
FF 02 01 X1 X2 X3 X4 X5 X6 |
写数据到数码管模式 |
X1:表示第几个数码管(C0~C3); X2~X5:数码管对应显示数值; X6:表示亮度,00~08,00最暗,08最亮 |
表示将从哪一个数码管(CX)开始依次亮,如果CX=C0,则表示从第一个数码管开始,1234这4个数码管都要亮。如果CX=C1,则表示从第二个数码管开始,234这三个数码管都要亮,第1个是灭的。 |
FF 02 02 CX XX CX XX |
固定地址模式配置数码管 | 数码管序号+数值+数码管序号+数值+...+数码管序号+数值的指令形式 | 表示指定某个数码管亮什么数值(XX)。可以同时指定4个,也可以指定其中某几个亮。 |
FF 02 03 X1 X2 |
配置每一段数码管的亮度 |
X1:段码范围(0x00-0x1F);表示第XX个数码管; X2:代表亮度,范围是00~08; |
此命令的功能是设置第XX个数码管PWM亮度(PWM档位) |
FF 02 04 | 关闭所有数码管显示 | 例如:00 7E 05 FF 02 04 0A EF | |
FF 02 05 | 查询按键值 | 例如:00 7E 05 FF 02 05 0B EF | |
FF 02 06 | 时钟显示和自定义显示切换 | 例如:00 7E 05 FF 02 06 0C EF |
C.数码管显示指令
方案对比
相比以前的方案,WT588F02KD-24SS芯片相当于一颗74HC573锁存芯片+一颗语音播报芯片,从元器件所需数量上直接节约了一颗锁存芯片;WT588F02KD-24SS能够自主获取秒跳信号进行时间记录并且使用标准的uart串口控制,省去了MCU驱动数码管、获取时间、控制语音播报等开发步骤,极大的缩短了开发周期。
应用拓展领域
数码管显示的电子闹钟
智能家电时间设置和语音提示功能
带灯光效果的音乐玩具