TM1638数码管驱动IC
TM1638是带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成有MCU 数字接口、数据锁存器、LED 高压驱动、键盘扫描等电路。主要应用于冰箱、空调 、家庭影院等产品的高段位显示屏驱动。
一、管脚定义:
二、管脚功能说明:
符号 | 管脚名称 | 说明 |
DIO | 数据输入/输出 | 在时钟上升沿输入/输出串行数据,从低位开始; |
STB | STB | 在上升或下降沿初始化串行接口,随后等待接收指令。STB 为低后的第一个字节作为指令,当处理指令时,当前其它处理被终止。当STB 为高时,CLK 被忽略 |
CLK | 时钟输入 | 上升沿输入/输出串行数据。 |
K1~K3 | 键扫数据输入 | 输入该脚的数据在显示周期结束后被锁存 |
SEG1/KS1~ SEG8/KS8 | 输出(段) | 段输出(也用作键扫描),P管开漏输出 |
SEG9~SEG10 | 输出(段) | 段输出,P管开漏输出 |
GRID1~GRID8 | 输出(位) | 位输出,N管开漏输出 |
VDD | 逻辑电源 | 5V±10% |
GND | 逻辑地 | 接系统地 |
▲ 注意:DIO口输出数据时为N管开漏输出,在读键的时候需要外接1K-10K的上拉电阻(推荐10K)。DIO在时钟的下降沿控制N管的动作,此时读数时不稳定,在时钟的上升沿读数才时稳定。
三、显示寄存器地址
该寄存器存储通过串行接口从外部器件传送到TM1638 的数据,地址从00H-0FH共16字节单元,分别与芯片SGE和GRID管脚所接的LED灯对应,分配如下图: 写LED显示数据的时候,按照从显示地址从低位到高位,从数据字节的低位到高位操作。
写LED显示数据的时候,按照从低位地址到高位地址,从字节的低位到高位操作;在运用中没有使用到的SEG输出口,在对应的BIT地址位写0。
四、键扫描和键扫数据寄存器:
键扫矩阵为8×3bit,如图所示:
键扫数据储存地址如下所示,先发读键命令后,开始读取按键数据BYTE1—BYTE4字节,读数据从低位开始输出;芯片K和KS引脚对应的按键按下时,相对应的字节内的 BIT位为1。
▲注意:
1、TM1638最多可以读4个字节,不允许多读。
2、读数据字节只能按顺序从BYTE1-BYTE4读取,不可跨字节读。例如:硬件上的K2与KS8对应按键按下时,此时想要读到此按键数据,必须需要读到第4个字节的第5BIT位,才可读出数据;当K1与KS8,K2与KS8,K3与KS8三个按键同时按下时,此时BYTE4所读数据的B4,B5,B6位均为1 。
3、组合键只能是同一个KS,不同的K引脚才能做组合键;同一个K与不同的KS引脚不可以做成组合键使用。
五、指令说明
指令用来设置显示模式和LED 驱动器的状态。 在STB下降沿后由DIO输入的第一个字节作为一条指令。经过译码,取最高B7、B6两位比特位以
区别不同的指令。
B7 | B6 | 指令 |
0 | 1 | 数据命令设置 |
1 | 0 | 显示控制命令设置 |
1 | 1 | 地址命令设置 |
如果在指令或数据传输时STB被置为高电平,串行通讯被初始化,并且正在传送的指令或数据无效(之前传送的指令或数据保持有效)。
5.1数据指令设置
该指令用来设置数据写和读,B1和B0位不允许设置01或11。
5.2地址指令设置
该指令用来设置显示寄存器的地址。如果地址设为10H 或更高,数据被忽略,直到有效地址被设定。上电时,地址默认设为00H。
5.3 显示控制
六、串行数据传输格式:
读取和接收1个BIT都在时钟的上升沿操作。
6.1 数据接收(写数据)
6.2 数据读取(读数据)
▲注意:读取数据时,从串行时钟CLK 的第8 个上升沿开始设置指令到CLK 下降沿读数据之间需要一个等待时间(最小1μS)。
七、显示和按键
共阴数码管场合,
如果让该数码管显示“0”,那你需要在GRID1为低电平的时候让SEG1,SEG2,SEG3,SEG4,SEG5,SEG6为高电平,SEG7为低电平, 查看图(2)显示地址表格,只需在00H地址单元里面写数据3FH就可以让数码管显示“0”。
共阳数码管场合,
如果让该数码管显示“0”,那你需要在GRID1,GRID2,GRID3,GRID4,GRID5,GRID6为低电平的时候让SEG1为高电平,在GRID7为低电平的时
候让SEG1为低电平。要向地址单元00H,02H,04H,06H,08H,0AH里面分别写数据01H,其余的地址单元全部写数据00H。
▲注意:SEG1-10为P管开漏输出,GRID1-8为N管开漏输出,在使用时候,SEG1-10只能接LED的阳极,GRID只能接LED的阴极,不可反接。
扫描键盘:
IC在键盘扫描的时候SEGN/KSN的波形:
Tdisp和IC工作的振荡频率有关,500US仅作为参考,以实际测量为准。一般情况下使用下图,可以满足按键设计的要求。