深圳市天微电子有限公司 地址:深圳市南山区高新技术产业园北区紫光信息港A栋10层 原厂销售总部:手机18682063283 QQ:709072958 E-mail: [email protected] LED 驱动控制专用电路 TM1639 一、 概述 TM1639是带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集 成有MCU 数字接口、数据锁存器、LED 高压驱动、键盘扫描等电路。主要应用于冰箱、 空调 、家庭影院等产品的高段位显示屏驱动。 二、 特性说明 • • • • • • • • 采用功率CMOS 工艺 显示模式 8段×8 位 键扫描(4×2bit) 辉度调节电路(占空比8 级可调) 串行接口(CLK,STB,DIO) 振荡方式:RC 振荡(450KHz+5%) 内置上电复位电路 采用DIP24封装 三、、 管脚定义: 1 2 3 4 5 6 7 8 9 10 11 12 GRID4 GRID5 GRID3 GRID6 GND GND GRID2 GRID7 GRID1 GRID8 DIO SEG12 CLK SEG11 TM1639 STB SEG10 K0 SEG9 K1 SEG4/KS4 VDD SEG3/KS3 SEG1/KS1 SEG2/KS2 24 23 22 21 20 19 18 17 16 15 14 13 www.titanmec.com -1- LED 驱动控制专用电路 TM1639 四、管脚功能说明: 符号 管脚名称 说明 DIO 数据输入/输出 在时钟上升沿输入/输出串行数据,从低位开始; STB 片选 在上升或下降沿初始化串行接口,随后等待接收 指令。STB 为低后的第一个字节作为指令,当处 理指令时,当前其它处理被终止。当STB 为高时, CLK 被忽略 CLK 时钟输入 K1~K3 键扫数据输入 SEG1/KS1~ SEG4/KS4 输出(段) 段输出(也用作键扫描),P管开漏输出 SEG9~SEG10 输出(段) 段输出,P管开漏输出 GRID1~GRID8 输出(位) 位输出,N管开漏输出 VDD 逻辑电源 5V±10% GND 逻辑地 接系统地 上升沿输入/输出串行数据; 输入该脚的数据在显示周期结束后被 锁存 ▲ 注意:DIO口输出数据时为N管开漏输出,在读键的时候需要外接1K-10K的上拉电阻。本公司推 荐10K的上拉电阻。DIO在时钟的下降沿控制N管的动作,此时读数时不稳定,你可以参考图(6), 在时钟的上升沿读数才时稳定。 VCC 芯片内部 电路 10K DIO CT GND 图(1) www.titanmec.com -2- LED 驱动控制专用电路 TM1639 五、 显示寄存器地址和显示模式: 该寄存器存储通过串行接口从外部器件传送到TM1639的数据,地址从00H-0FH共16字节单元, 分别与芯片SGE和GRID管脚所接的LED灯对应,分配如下图: 写LED显示数据的时候,按照从显示地址从低位到高位,从数据字节的低位到高位操作。 4 G E S 3 G E S 2 G E S B2 B3 9 G E S 1 G E S B1 X xxHU(高四位) B4 B5 00HL 02HL 04HL 06HL 08HL 0AHL 0CHL 0EHL B6 0 1 G E S B0 X SEG12 xxHL(低四位) X SEG11 X xxHL(低四位) B7 B0 B1 00HU 02HU 04HU 06HU 08HU 0AHU 0CHU 0EHU B2 X X X X xxHU(高四位) B3 B4 01HL 03HL 05HL 07HL 09HL 0BHL 0DHL 0FHL B5 B6 B7 01HU 03HU 05HU 07HU 09HU 0BHU 0DHU 0FHU GRID1 GRID2 GRID3 GRID4 GRID5 GRID6 GRID7 GRID8 图(2) 写LED显示数据的时候,按照从低位地址到高位地址,从字节的低位到高位操作;在运用中没有 使用到的SEG输出口,在对应的BIT地址位写0。 六、 键扫描和键扫数据寄存器: 键扫矩阵为4×2bit,如图(3)所示: K1 K0 KS1 KS2 KS3 KS4 图(3) 键扫数据储存地址如图(4)所示,先发读键命令后,开始读取按键数据BYTE1—BYTE2字节, 读数据从低位开始输出,芯片K和KS引脚对应的按键按下时,相对应的字节内的 BIT位为1。 B0 X B1 X B2 K1 KS1 KS3 B3 K0 B4 X B5 X B6 K1 KS2 KS4 B7 K0 BYTE1 BYTE2 图(4) ▲注意:1、TM1639最多可以读2个字节,不允许多读。 2、读数据字节只能按顺序从BYTE1-BYTE2读取,不可跨字节读。例如:硬件上的K1与KS4 www.titanmec.com -3- LED 驱动控制专用电路 TM1639 对应按键按下时,此时想要读到此按键数据,必须需要读到第2个字节的第6BIT位,才可读出数据; 当K1与KS4,K0与KS4两个按键同时按下时,此时BYTE2所读数据的B6,B7位均为1。 3、组合键只能是同一个KS,不同的K引脚才能做组合键;同一个K与不同的KS引脚不可以 做成组合键使用。 七、 指令说明: 指令用来设置显示模式和LED 驱动器的状态。 在STB下降沿后由DIO输入的第一个字节作为一条指令。经过译码,取最高B7、B6两位比特位以 区别不同的指令。 B7 0 1 1 B6 1 0 1 指令 数据命令设置 显示控制命令设置 地址命令设置 如果在指令或数据传输时STB被置为高电平,串行通讯被初始化,并且正在传送的指令或数据 无效(之前传送的指令或数据保持有效)。 7.1 数据命令设置 该指令用来设置数据写和读,B1和B0位不允许设置01或11。 MSB LSB B7 B6 0 0 0 0 0 0 1 1 1 1 1 1 B5 B4 B3 无关项, 填0 B2 0 1 0 1 B1 B0 功能 说明 0 1 0 0 数据读写模式 设置 地址增加模式 设置 测试模式设置 (内部使用) 写数据到显示寄存器 读键扫数据 自动地址增加 固定地址 普通模式 测试模式 www.titanmec.com -4- LED 驱动控制专用电路 TM1639 7.2 地址命令设设置 MSB LSB B7 B6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 B5 B4 B3 B2 B1 B0 显示地址 无关项, 填0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 00H 01H 02H 03H 04H 05H 06H 07H 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH 该指令用来设置显示寄存器的地址。 如果地址设为10H 或更高,数据被忽略,直到有效地址被设定。 上电时,地址默认设为00H。 7.3 显示控制 MSB LSB B7 B6 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 B5 B4 B3 无关项, 填0 0 1 B2 B1 B0 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 功能 消光数量设置 显示开关设置 说明 设置脉冲宽度为 1/16 设置脉冲宽度为 2/16 设置脉冲宽度为 4/16 设置脉冲宽度为 10/16 设置脉冲宽度为 11/16 设置脉冲宽度为 12/16 设置脉冲宽度为 13/16 设置脉冲宽度为 14/16 显示关 显示开 www.titanmec.com -5- LED 驱动控制专用电路 TM1639 八、串行数据传输格式: 读取和接收1个BIT都在时钟的上升沿操作。 8.1 数据接收(写数据) CLK 1 2 3 4 5 6 7 8 DIO B0 B1 B2 B3 B4 B5 B6 B7 STB 图(5) 8.2 数据读取(读数据) CLK 1 2 `````` 8 DIO B0 B1 `````` B7 B0 B1 B2 B3 STB 送读按键命 令 读取按键数 据 Twait 图(6) ▲注意:读取数据时,从串行时钟CLK 的第8 个上升沿开始设置指令到CLK 下降沿读数据之间需要 一个等待时间Twait(最小1μS)。 九、 显示和按键: (1) 显示: 1、驱动共阴数码管: SEG1 SEG2 SEG3 SEG4 SEG5 SEG6 SEG7 1 1 1 1 1 1 GRID1 SEG1 SEG2 SEG3 SEG4 SEG5 SEG6 SEG7 A DPY a B C f g b D c Ee d F G [LEDgn] GRID1 1 图(7) 图7给出共阴数码管的连接示意图,如果让该数码管显示“0”,那你需要在GRID1为低电平 的时候让SEG1,SEG2,SEG3,SEG4,SEG5,SEG6为高电平,SEG7为低电平, 查看图(2)显示地址表格,只需在00H地址单元里面写数据3FH就可以让数码管显示“0” 。 www.titanmec.com -6- LED 驱动控制专用电路 SEG8 0 B7 SEG7 0 B6 SEG6 1 B5 SEG5 1 B4 SEG4 1 B3 SEG3 1 B2 SEG2 1 B1 TM1639 SEG1 1 B0 00H 2、驱动共阳数码管: GRID1 GRID2 GRID3 GRID4 GRID5 GRID6 GRID7 1 GRID1 GRID2 GRID3 GRID4 GRID5 GRID6 GRID7 1 1 1 SEG1 1 1 A DPY a B f b C g D c Ee d F [LEDgn] G SEG1 1 图(8) 图8给出共阳数码管的连接示意图,如果让该数码管显示“0” ,那你需要在GRID1,GRID2, GRID3,GRID4,GRID5,GRID6为低电平的时候让SEG1为高电平,在GRID7为低电平的时候让SEG1为 低电平。要向地址单元00H,02H,04H,06H,08H,0AH里面分别写数据01H,其余的地址单元全部 写数据00H。 SEG8 0 0 0 0 0 0 0 B7 SEG7 0 0 0 0 0 0 0 B6 SEG6 0 0 0 0 0 0 0 B5 SEG5 0 0 0 0 0 0 0 B4 SEG4 0 0 0 0 0 0 0 B3 SEG3 0 0 0 0 0 0 0 B2 SEG2 0 0 0 0 0 0 0 B1 SEG1 1 1 1 1 1 1 0 B0 00H 02H 04H 06H 08H 0AH 0CH ▲注意:SEG1-8为P管开漏输出,GRID1-8为N管开漏输出,在使用时候,SEG1-8只能接LED的阳极, GRID只能接LED的阴极,不可反接。 (2)按键: 键扫描由TM1639自动完成,不受用户控制,用户只需要按照时序读键值。完成一次键扫需 要2个显示周期,一个显示周期大概需要T=8x500US,在8MS先后按下了2个不同的按键,2次读到的 键值都是先按下的那个按键的键值。 按照图(9)用示波器观察SEG1/KS1和SEG2/KS2的输出键扫波形,见图(10) 。 www.titanmec.com -7- LED 驱动控制专用电路 GRID4 GRID3 GND GRID2 GRID1 DIO TM1639 CLK STB K0 K1 VDD SEG1/KS1 VCC 接示波器探头1 接示波器探头2 R1 1k TM1639 GRID5 GRID6 GND GRID7 GRID8 SEG12 SEG11 SEG10 SEG9 SEG4/KS4 SEG3/KS3 SEG2/KS2 R1 1k 图(9) IC在键盘扫描时候SEGN/KSN的波形: SEG1/KS1 SEG2/KS2 SEG3/KS3 SEGN/KSN Tdisp=500us 图(10) Tdisp和IC工作的振荡频率有关,我司TM1639经过多次完善,振荡频率不完全一致。500US 仅仅提供参考,以实际测量为准。 一般情况下使用图(11) ,可以满足按键设计的要求。 K1 K0 KS1 KS2 KS3 KS4 图(11) 当S1被按下的时候,在第1个字节的B0读到“1”。如果多个按键被按下,将会读到多个“1” , 当S2,S3被按下的时候,可以在第1个字节的B1,B3读到“1” 。 www.titanmec.com -8- LED 驱动控制专用电路 TM1639 十、 应用时串行数据的传输: 10.1 地址增加模式 使用地址自动加1模式,设置地址实际上是设置传送的数据流存放的起始地址。起始地址命令 字发送完毕,“STB”不需要置高紧跟着传数据,最多16BYTE,数据传送完毕才将“STB”置高。 CLK DIO Command1 Command2 Command3 Data1 Data2 ``````` Data n Command4 STB Command1: 设置显示模式 Command2: 设置数据命令 Command3: 设置显示地址 Data1~ n: 传输显示数据至Command3地址和后面的地址内(最多16 bytes) Command4: 显示控制命令 10.2 固定地址模式 使用固定地址模式,设置地址其实际上是设置需要传送的1BYTE数据存放的地址。地址发送完 毕,“STB”不需要置高,紧跟着传1BYTE数据,数据传送完毕才将“STB”置高。然后重新设置第2 个数据需要存放的地址,最多16BYTE数据传送完毕,“STB”置高。 CLK DIO Command1 Command2 Command3 Data1 Command4 Data2 ``````` Command5 STB Command1: 设置显示模式 Command2: 设置数据命令 Command3: 设置显示地址1 Data1: 传输显示数据1至Command3地址内 Command4: 设置显示地址2 Data2: 传输显示数据2至Command4地址内 Command5: 显示控制命令 10.3 读按键时序 CLK DIO Command1 Data1 Data2 Data3 Data4 STB Command1: 设置显示模式 Data1~4:读取按键数据 www.titanmec.com -9- LED 驱动控制专用电路 TM1639 10.4 程序设计流程图 采用地址自动加一程序设计流程图: 开始 设置读键数据 命 令 ( 42H) 初始化 No 读 1BTYE内 容 设置写显存的数据命令, 采 用 地 址 自 动 加 1( 40H) 设置起始地 址 ( 0C0H) 将按键值存放在 MCU的 寄 存 器 中 No 传送数据 读 完 4BYTE 吗? Yes 16BYTE数 据 传送完毕了? No Yes Yes 传显示控制命令设置 最 高 亮 度 ( 8FH) 有按键被按 下吗? 按键处理程 序 结束 www.titanmec.com - 10 - LED 驱动控制专用电路 TM1639 采用固定地址的程序设计流程图: 开始 传显示控制命令设置 最 高 亮 度 ( 8FH) 初始化 设置读键数据 命 令 ( 42H) 设置写显存的数据命令 采 用 固 定 地 址 ( 44H) No 读 1BTYE内 容 设置地址 ( 0C0H) 传 送 1BYTE 数据 读 完 4BYTE 吗? Yes 重新设置地 址 ( 0C1H) 将按键值存放在 MCU的 寄 存 器 中 有按键被按 下吗? No ……传 完 所 有的数据 Yes 传 送 1BYTE 数据 按键处理程 序 结束 www.titanmec.com - 11 - LED 驱动控制专用电路 TM1639 十一.应用电路: 11.1 TM1639驱动共阳数码屏硬件电路,如图(16): DVD GR1 GR2 GR3 GR4 GR5 GR6 GR7 SG1 SG2 SG3 SG4 SG9 SG10 SG11 SG12 1 2 3 4 5 6 7 8 9 dts DDD a b c d e f g VCD MP3 PBC GR4 GR3 VCC VCC C1 100uF R3 10K R2 10K 10K R1 C2 104 DIO CLK STB GR2 GR1 C3 K0 K1 C4 C5 VCC 101 注 :滤波电容与芯片VDD, GND之间回路尽量短. SG1 101 GRID4 GRID3 GND GRID2 GRID1 DIO CLK TM1639 STB K0 K1 VDD SEG1/KS1 GRID5 GRID6 GND GRID7 GRID8 SEG12 SEG11 SEG10 SEG9 SEG4/KS4 SEG3/KS3 SEG2/KS2 GR5 GR6 GR7 SG12 SG11 SG10 SG9 SG4 SG3 SG2 101 SG4 SG3 SG2 SG1 S2 S5 S8 S11 S3 S6 S9 S12 K0 K1 图(16) www.titanmec.com - 12 - LED 驱动控制专用电路 TM1639 11.2 TM1639驱动共阳数码屏硬件电路,如图(17): DVD GR1 GR2 GR3 GR4 GR5 GR6 GR7 GR8 SG1 SG2 SG3 SG4 SG9 SG10 SG11 SG12 1 2 3 4 5 6 7 8 dts DDD a b c d e f g h VCD MP3 PBC VCC GR4 GR3 VCC C1 100uF C2 104 R3 10K R2 10K 10K R1 DIO CLK STB GR2 GR1 C3 K0 K1 C4 C5 注 :滤波电容与芯片VDD, GND之间回路尽量短. VCC 101 SG1 101 GRID4 GRID3 GND GRID2 GRID1 DIO TM1639 CLK STB K0 K1 VDD SEG1/KS1 GRID5 GRID6 GND GRID7 GRID8 SEG12 SEG11 SEG10 SEG9 SEG4/KS4 SEG3/KS3 SEG2/KS2 GR5 GR6 GR7 GR8 SG12 SG11 SG10 SG9 SG4 SG3 SG2 101 SG4 SG3 SG2 SG1 S2 S5 S8 S11 S3 S6 S9 S12 K0 K1 图(17) ▲注意: 1、VDD、GND之间滤波电容在PCB板布线应尽量靠近TM1639芯片放置,加强滤波效果。 2、连接在DIO、CLK、STB通讯口上三个100P电容可以降低对通讯口的干扰。 3、因蓝光数码管的导通压降压约为3V,因此TM1639供电应选用5V。 十二、 电气参数: www.titanmec.com - 13 - LED 驱动控制专用电路 TM1639 极限参数(Ta = 25℃, Vss = 0 V) 参数 符号 范围 单位 逻辑电源电压 VDD -0.5 ~+7.0 V 逻辑输入电压 VI1 -0.5 ~ VDD + 0.5 V LED Seg 驱动输出电流 IO1 -50 mA LED Grid 驱动输出电流 IO2 +200 mA 功率损耗 PD 400 mW 工作温度 Topt -40 ~ +80 ℃ 储存温度 Tstg -65 ~+150 ℃ 正常工作范围(Ta = -20 ~ +70℃,Vss = 0 V) 参数 符号 最小 典型 逻辑电源电压 VDD 高电平输入电压 VIH 0.7 VDD - 低电平输入电压 VIL 0 - 最大 单位 测试条件 V - VDD V - 0.3 VDD V - 5 电气特性(Ta = -20 ~ +70℃,VDD = 4.5 ~ 5.5 V, Vss = 0 V 参数 符号 最小 典型 最大 单位 测试条件 Ioh1 -20 -25 -40 mA Seg1~Seg11, Vo = vdd-2V Ioh2 -20 -30 -50 mA Seg1~Seg11, Vo = vdd-3V 低电平输出电流 IOL1 80 140 - mA Grid1~Grid6 Vo=0.3V 低电平输出电流 Idout 4 - - mA VO = 0.4V,dout 高电平输出电流 www.titanmec.com - 14 - LED 驱动控制专用电路 高电平输出电流容 许量 Itolsg 输出下拉电阻 RL 输入电流 II - - 高电平输入电压 VIH 0.7 VDD - 低电平输入电压 VIL - - 滞后电压 VH - 动态电流损耗 IDDdyn - - TM1639 % VO = VDD – 3V, Seg1~Seg11 KΩ K1~K3 μA VI = VDD / VSS V CLK,DIN,STB 0.3 VDD V CLK,DIN,STB 0.35 - V CLK,DIN,STB - 5 mA 无负载,显示关 - 5 10 ±1 开关特性(Ta = -20 ~ +70℃,VDD = 4.5 ~ 5.5 V) 参数 符号 最小 典型 最大 单位 测试条件 振荡频率 fosc - 500 - KHz R = 16.5 KΩ tPLZ - - 300 ns CLK → DOUT tPZL - - 100 ns CL = 15pF, RL = 10K Ω TTZH 1 - - 2 μs 传输延迟时间 Seg1~Seg11 CL = 300p F 上升时间 Grid1~Grid4 Seg12/Grid7~ Seg14/Grid5 TTZH 2 - - 0.5 μs 下降时间 TTHZ - - 120 μs CL = 300pF,Segn, Gridn 最大时钟频率 Fmax 1 - - MHz 占空比50% 输入电容 CI - - 15 pF - 时序特性(Ta = -20 ~ +70℃,VDD = 4.5 ~ 5.5 V) www.titanmec.com - 15 - LED 驱动控制专用电路 TM1639 参数 符号 最小 典型 最大 单位 测试条件 时钟脉冲宽度 PWCLK 400 - - ns - 选通脉冲宽度 PWSTB 1 - - μs - 数据建立时间 tSETUP 100 - - ns - 数据保持时间 tHOLD 100 - - ns - CLK →STB 时间 tCLK STB 1 - - μs CLK↑→STB↑ 等待时间 tWAIT 1 - - μs CLK↑→CLK↓ 时序波形图: 十三、 封装尺寸 www.titanmec.com - 16 - LED 驱动控制专用电路 TM1639 z All specs and applications shown above subject to change without prior notice. (以上电路及规格仅供参考,如本公司进行修正,恕不另行通知。) 本应用文档最后更新日期为:2008-8-4 www.titanmec.com - 17 -