CH456 WCH | Alldatasheet

Document overview

  • Manufacturer or author: Provided By ALLDATASHEET.COM(FREE DATASHEET DOWNLOAD SITE)
  • PDF pages: 7

Technical content

CH456手册 1 16位数码管驱动及键盘控制芯片CH456 手册 版本: 1 http://wch.cn 1、概述 CH456 是16 位数码管显示驱动和键盘扫描控制芯片。CH456 内置时钟振荡电路,可以动态驱动 最多16 只数码管或者128只LED发光管;同时还可以进行64键的键盘扫描;CH456通过2 线串行接 口与单片机等交换数据。 2、特点

  • 内置显示电流驱动级,段电流不小于25mA,字电流不小于150mA。
  • 动态显示扫描控制,直接驱动16只数码管或者128只发光管LED。
  • 内部限流,通过占空比设定提供多级亮度控制。
  • 内置64 键键盘控制器,基于8×8矩阵键盘扫描。
  • 兼用的低电平有效的键盘中断,提供按键释放标志位,可供查询按键按下与释放。
  • 部分未用到的显示驱动引脚X12~X15 可以作为GPO通用输出引脚。
  • 高速2 线串行接口,时钟速度从0 到2MHz,兼容两线I C 总线,节约引脚。
  • 内置时钟振荡电路,不需要外部提供时钟或者外接振荡元器件,更抗干扰。
  • 支持3V、3.3V、5V电源电压。
  • 支持低功耗睡眠,节约电能,可以被按键唤醒或者被命令操作唤醒。
  • 提供DIP20、SOP20、DIP16和SOP16 四种无铅封装形式,兼容RoHS。 3、封装 X15~X0 X15 SCL SDA CH456芯片 单片机 MCU 等 16只 数码管 或 128 只 发光管 8×8 矩阵 64键键盘

CH456手册 2 封装形式 宽度 引脚间距 封装说明 订货型号 DIP20 7.62mm 300mil 2.54mm 100mil 标准20脚双列直插 CH456K SOP20 7.62mm 300mil 1.27mm 50mil 标准的宽20脚贴片 CH456H DIP16 7.62mm 300mil 2.54mm 100mil 标准16脚双列直插 CH456M SOP16 3.90mm 150mil 1.27mm 50mil 标准的16脚贴片 CH456G CH456K/H支持16只数码管或128只LED及64键,CH456M/G支持12只数码管或96只LED 及32键 4、引脚 20 脚封装 的引脚号 16脚封装 的引脚号 引脚名称 类型 引脚说明 12 14 VCC 电源 正电源,持续电流不小于150mA 5 7 GND 电源 公共接地,持续电流不小于150mA 10~11, 13~18 12~13, 15~16, 1~4 X0~X7 (KI0~KI7) 三态输出 及 键扫输入 数码管的段驱动,高电平有效, 数码管的字驱动,低电平有效, 键盘扫描输入,高电平有效,内置下拉电阻 9~7 11~9 X8~X10 (KO0~KO2) 三态输出 及 键扫输出 数码管的段驱动,高电平有效, 数码管的字驱动,低电平有效, 键盘扫描输出,高电平有效 6 8 X11 (KO3) (INT#) 三态输出 及 键扫输出 数码管的段驱动,高电平有效, 数码管的字驱动,低电平有效, 键盘扫描输出,高电平有效, 可以被设置为键盘中断输出,低电平有效 2,1, 20 无 X12~X14 (KO4~KO6) 三态输出 及 键扫输出 数码管的字驱动,低电平有效, 键盘扫描输出,高电平有效, 可以被设置为GPO 通用输出 19 无 X15 (KO7) (INT#) 三态输出 及 键扫输出 数码管的字驱动,低电平有效, 键盘扫描输出,高电平有效, 可以被设置为键盘中断输出,低电平有效 4 6 SDA 开漏输出 及输入 2 线串行接口的数据输入和输出, 内置上拉电阻 3 5 SCL 输入 2 线串行接口的时钟输入 5、功能说明 5.1. 一般说明 本手册中的数据,以B 结尾的为二进制数,以H 结尾的为十六进制数,否则为十进制数,标注 为x 的位表示该位可以是任意值。 5.2. 显示驱动 CH456对数码管和发光管采用动态扫描驱动,X0至X15分别连接16只数码管的阴极。当其中一 个引脚吸入电流时,其它引脚则不吸入电流。数码管的段G~段A 以及数码管的小数点分别对应CH456 的8 个动态转换的段驱动引脚。CH456内部具有电流驱动级,可以直接驱动0.5英寸至1英寸的共阴 数码管,CH456也可以连接8×16矩阵的发光二级管LED 阵列或者128 只独立发光管。 CH456 内部具有16 个8 位的数据寄存器,用于保存16 个字数据,分别对应于CH456 所驱动的 16 保数码管或者16 组每组8 只的发光二极管。数据寄存器中字数据的位7~位0 分别对应8 个数码 管的小数点和段G~段A,对于发光二极管阵列,则每个字数据的数据位唯一地对应一个发光二级管。

CH456手册 3 当数据位为1时,对应的数码管的段或者发光管就会点亮;当数据位为0 时,则对应的数码管的段或 者发光管就会熄灭。例如,第三个数据寄存器的位0为1,所以对应的第三个数码管的段A点亮。 下图是数码管的段名称。 下表是当前字驱动引脚与当前段驱动引脚之间的动态对应关系。 当前字引脚 X0 X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15 段引脚S0/A X4 X4 X4 X4 X0 X0 X0 X0 X0 X0 X0 X0 X0 X0 X0 X0 段引脚S1/B X5 X5 X5 X5 X1 X1 X1 X1 X1 X1 X1 X1 X1 X1 X1 X1 段引脚S2/C X6 X6 X6 X6 X2 X2 X2 X2 X2 X2 X2 X2 X2 X2 X2 X2 段引脚S3/D X7 X7 X7 X7 X3 X3 X3 X3 X3 X3 X3 X3 X3 X3 X3 X3 段引脚S4/E X8 X8 X8 X8 X8 X8 X8 X8 X4 X4 X4 X4 X4 X4 X4 X4 段引脚S5/F X9 X9 X9 X9 X9 X9 X9 X9 X5 X5 X5 X5 X5 X5 X5 X5 段引脚S6/G X10 X10 X10 X10 X10 X10 X10 X10 X6 X6 X6 X6 X6 X6 X6 X6 段引脚S7/DP X11 X11 X11 X11 X11 X11 X11 X11 X7 X7 X7 X7 X7 X7 X7 X7 5.3. 键盘扫描 CH456的键盘扫描功能支持8×8矩阵的64键键盘。在键盘扫描期间,KO7~KO0 引脚(即X15~ X8)用于列扫描输出,KI7~KI0引脚(即X7~X0)都带有内部下拉电阻,用于行扫描输入。 CH456 定期在显示驱动扫描过程中插入键盘扫描。在键盘扫描期间,KO7~KO0 引脚按照KO0 至 KO7 的顺序依次输出高电压,其余引脚输出低电压;KI7~KI0 引脚的输出被禁止,当没有键被按下时, KI7~KI0 都被下拉为低电压;当有键被按下时,例如连接KO3 与KI4 的键被按下,则当KO3 输出高 电压时KI4检测到高电压。经过抗干扰处理后,如果CH456 确认检测到有效的按键,则记录下该按键 代码,并通过INT#引脚(即X15 或者X11 在使能中断输出之后)产生低电平有效的键盘中断,此时 单片机可以通过串行接口读取按键代码;在没有检测到新的有效按键之前,CH456不再产生任何键盘 中断。CH456不支持组合键,同一时刻,不能有两个或者更多的键被按下。 CH456 所提供的按键代码为7 位,位2~位0 是列扫描码,位5~位3 是行扫描码,位6 是状态 码(键按下为1,键释放为0)。例如,连接KO3 与KI4的键被按下,则按键代码是1100011B或者63H, 键被释放后,按键代码通常是0100011B 或者23H(也可能是其它值,但是肯定小于40H),其中,对 应KO3 的列扫描码为011B,对应KI4 的行扫描码为100B。单片机可以在任何时候读取按键代码,但 一般在CH456检测到有效按键而产生键盘中断时读取按键代码,此时按键代码的位6 总是1,另外, 如果需要了解按键何时释放,单片机可以通过查询方式定期读取按键代码,直到按键代码的位6为0。 下表是在KI7~KI0与KO7~KO0之间8×8 矩阵的按键编址。由于按键代码是7位,键按下时位 6 总是1,所以当键按下时,CH456所提供的实际按键代码是表中的按键编址加上40H,也就是说,此 时的按键代码应该在40H到7FH之间。 编址 KO7/X15 KO6/X14 KO5/X13 KO4/X12 KO3/X11 KO2/X10 KO1/X9 KO0/X8 KI0/X0 07H 06H 05H 04H 03H 02H 01H 00H KI1/X1 0FH 0EH 0DH 0CH 0BH 0AH 09H 08H KI2/X2 17H 16H 15H 14H 13H 12H 11H 10H KI3/X3 1FH 1EH 1DH 1CH 1BH 1AH 19H 18H KI4/X4 27H 26H 25H 24H 23H 22H 21H 20H KI5/X5 2FH 2EH 2DH 2CH 2BH 2AH 29H 28H KI6/X6 37H 36H 35H 34H 33H 32H 31H 30H KI7/X7 3FH 3EH 3DH 3CH 3BH 3AH 39H 38H

CH456手册 4 5.4. 串行接口 CH456具有硬件实现的2线串行接口,包含2个主要信号线:串行数据时钟输入线SCL、串行数 据输入和输出线SDA。其中,SCL是输入信号线;SDA是带上拉电阻的准双向信号线,默认是高电平。 除此之外,X15或X11引脚在使能中断输出之后可以作为INT#引脚,输出键盘中断,默认是高电平。 SDA 用于串行数据输入和输出,高电平表示位数据1,低电平表示位数据0,串行数据输入的顺 序是高位在前,低位在后。 SCL 用于提供串行时钟,CH456在其上升沿从SDA输入数据,在其下降沿从SDA 输出数据。 在SCL 为高电平期间发生的SDA 下降沿定义为串行接口的启动信号,在SCL 为高电平期间发生 的SDA 上升沿定义为串行接口的停止信号。CH456只在检测到启动信号后才接收并分析命令。所以在 单片机I/O引脚资源紧张时,可以在保持SDA 引脚状态不变的情况下,将SCL引脚与其它接口电路共 用;如果能够确保SDA引脚的变化仅在SCL引脚为低电平期间发生,那么SCL引脚和SDA 引脚都可以 与其它接口电路共用。 INT#用于键盘中断输出,默认是高电平。当CH456 检测到有效按键时,INT#输出低电平有效的 键盘中断;单片机被中断后,对CH456执行读操作,CH456将INT#恢复为高电平,并从SDA 输出按键 代码,单片机从SDA获得一个字节的数据,其中低7位是按键代码。 单片机与CH456 的通讯过程总是分为6 个步骤,按单片机的操作方向分成两种类型,一种是写 操作,用于输出数据,一种是读操作,用于输入数据。具体过程可以参考例子程序中的说明。 写操作包括以下6 个步骤:输出启动信号、输出字节1、应答1、输出字节2、应答2、输出停 止信号。其中,启动信号和停止信号如上所述,应答1 和应答2 总是固定为1,输出字节1和输出字 节2 各自包含8个数据位,即一个字节数据。 读操作包括以下6 个步骤:输出启动信号、输出字节1、应答1、输入字节2、应答2、输出停 止信号。其中,启动信号和停止信号如上所述,应答1 和应答2 总是固定为1,输出字节1和输入字 节2 各自包含8个数据位,即一个字节数据。 下图是一个写操作的实例,字节1为01001000B,即48H;字节2为00000001B,即01H。 6、操作命令 CH456的操作命令分为3组。各命令的启动信号、停止信号、应答1 和应答2 都相同,区别在于 输出字节1和字节2的数据不同以及字节2 的传输方向不同。字节1的位6是2 线串行接口的地址识 别位,默认为1,厂商也可提供定制的地址识别位默认为0 的CH456芯片,便于两只CH456并联操作。 6.1. 设置系统参数命令 该命令的字节1为01001000B,即48H;字节2为[SLEEP][INTENS][X_INT]0[KEYB][DISP]B。 该命令用于设定CH456 的系统级参数:显示驱动使能DISP、键盘扫描使能KEYB、X15 中断输出 使能X_INT、显示驱动亮度控制INTENS、低功耗睡眠控制SLEEP。 当DISP 位为1时允许显示输出,当DISP位为0时关闭显示驱动。 当KEYB 位为1时启用键盘扫描,当KEYB位为0时关闭键盘扫描。 当X_INT 位为1 时,最多只支持15 只数码管,X15引脚或者X11 引脚作为INT#引脚用于键盘中 断输出;当X_INT位为0时,最多支持16只数码管,X15 和X11与X0~X10等类似作为显示驱动。 INTENS用于控制显示驱动的亮度,包含3 位数据,有8 种组合:数据001B~111B分别设置显示 驱动占空比为1/8~7/8,数据000B设置显示驱动占空比为8/8,对应最高亮度。 SLEEP 用于使CH456 进入低功耗睡眠状态,从而可以节约电能。处于低功耗睡眠状态中的CH456 可以被下述两种事件中的任何一种唤醒,第一种事件是检测到由KO3~KO0 扫描输出的按键,有效按

CH456手册 5 第二种事件是接收到单片机发出的下一个操作命令。当CH456 被唤醒后,SLEEP 位会自动清0。睡眠 和唤醒操作本身不会影响CH456的其它工作状态。如果KEYB位为1 则唤醒后产生按键中断,如果KEYB 位为0 则不支持第一种事件唤醒,所以唤醒后也不产生按键中断。 该命令不影响内部数据缓冲区中的数据。 如果X_INT=0(默认),那么没有键盘中断输出引脚INT#,禁止GPO 通用输出引脚,X12~X15 作 为显示驱动和键盘扫描输出引脚,CH456支持最多16只数码管。 如果X_INT=1,那么CH456将提供键盘中断输出引脚INT#,具体配置参考下表。 参数 状态 附加条件参数 配置功能 X15_bit[0] =0 X15 作为键盘中断输出引脚INT#(适用于20脚封装) X15_bit[0] =1 X11 作为键盘中断输出引脚INT#(适用于16脚封装) (会影响X0~X7引脚上数码管的显示,只支持7 段) X15_bit[1] =0 禁止GPO 引脚,X12~X14 与X10类似功能 X15_bit[1] =1 X15_bit[0]=0 X12~X14 作为GPO 通用输出引脚,对应X15_bit[4~6] X15_bit[1] =1 X15_bit[0]=1 X12~X15 作为GPO 通用输出引脚,对应X15_bit[4~7] X15_bit[2] =0 全部显示驱动,支持最多15只数码管(X0~X14引脚) X15_bit[2] =1 减半显示驱动,支持最多8 只数码管(X0~X7引脚) 上表中X15_bit 是指X15 引脚对应的数据寄存器中的8 位数据,该数据是通过加载字数据命令 7EH 写入CH456芯片中的,默认值为00H,X15_bit[0]是指其位0的值,以此类推。 当X12~X15作为GPO通用输出引脚时,可以通过修改X15_bit[4]~X15_bit[7]的值来设置各GPO 引脚的输出电平。例如X15_bit[5]=0时,X13 输出低电平,X15_bit[5]=1时,X13输出高电平。 减半显示驱动会将单只数码管的显示驱动扫描占空比从1/16提高到1/8,从而提高显示亮度。 6.2. 加载字数据命令 该命令的字节1为011[DIG_ADDR]0B,即60H、62H、64H、66H、68H、6AH、6CH、6EH、70H、72H、 74H、76H、78H、7AH、7CH、7EH;字节2为[DIG_DATA]B,即00H到0FFH之间的值。 加载字数据命令用于将字数据DIG_DATA 写入DIG_ADDR指定地址的数据寄存器中。DIG_ADDR通 过4 位数据指定数据寄存器的地址,数据0000B~1111B 分别指定地址0~15,对应于X0~X15 引脚 驱动的16 只数码管。DIG_DATA 是8 位的字数据。例如,命令数据01100000B、01111001B 表示将字 数据79H 写入第1个数据寄存器,使X0引脚驱动的数码管将显示E。 6.3. 读取按键代码命令 该命令的输出字节1为01001101B,即4DH(或者为01001111B,即4FH);输入字节2 的低7位 为按键代码。 读取按键代码命令用于获得CH456 最近检测到的有效按键的按键代码。该命令属于读操作,是 具有数据返回的命令,单片机必须先释放SDA 引脚(三态输出禁止或者上拉到高电平),然后CH456 从SDA 引脚输出按键代码,按键代码的有效数据是位6~位0,其中位6 是状态码,位5~位0 是扫 描码和按键编址。 7、参数 7.1. 绝对最大值(临界或者超过绝对最大值将可能导致芯片工作不正常甚至损坏) 名称 参数说明 最小值 最大值 单位 TA 工作时的环境温度 -40 85 ℃ TS 储存时的环境温度 -55 125 ℃ VCC 电源电压(VCC接电源,GND 接地) -0.5 6.0 V VIO 输入或者输出引脚上的电压 -0.5 VCC+0.5 V IMdrv 单个显示驱动引脚的连续驱动电流 0 100 mA IMall 所有显示驱动引脚的连续驱动电流的总和 0 150 mA

CH456手册 6 7.2. 电气参数(测试条件:TA=25℃,VCC=5V) 名称 参数说明 最小值 典型值 最大值 单位 VCC 电源电压 3.0 5 5.3 V ICC 电源电流 80 150 mA ICCs 静态电流(SDA为高电平,KEYB=0) 0.05 0.5 mA VIL SCL和SDA引脚低电平输入电压 -0.5 0.8 V VIH SCL和SDA引脚高电平输入电压 VCC/2 VCC+0.5 V VOLx 显示驱动引脚低电平输出电压(-100mA) 0.7 V VOHx 显示驱动引脚高电平输出电压(20mA) 4.5 V IUP SDA引脚的输入上拉电流 200 400 800 uA VR 上电复位的默认电压门限 2.1 2.4 2.7 V 7.3. 内部时序参数(测试条件:TA=25℃,VCC=5V) (注:本表时序参数都是内置时钟周期的倍数,内置时钟的频率随着电源电压的降低而降低) 名称 参数说明 最小值 典型值 最大值 单位 TPR 电源上电检测产生的复位时间 8 15 30 mS TDP 显示扫描周期 4 8 14 mS TKS 按键响应时间(两次键盘扫描) 20 50 mS 7.4. 接口时序参数(测试条件:TA=25℃,VCC=5V,参考附图) (注:本表计量单位以纳秒即10 秒为主,未注明最大值则理论值可以无穷大) 名称 参数说明 最小值 典型值 最大值 单位 TSSTA SDA下降沿启动信号的建立时间 100 nS THSTA SDA下降沿启动信号的保持时间 100 nS TSSTO SDA上升沿停止信号的建立时间 100 nS THSTO SDA上升沿停止信号的保持时间 100 nS TCLOW SCL时钟信号的低电平宽度 100 nS TCHIG SCL时钟信号的高电平宽度 100 nS TSDA SDA 输入数据对SCL上升沿的建立时间 30 nS THDA SDA 输入数据对SCL上升沿的保持时间 10 nS Rate 平均数据传输速率 0 2M bps 8、应用 8.1. 应用电路 CH456 可以动态驱动16只共阴数码管,通过2 线串行接口SCL 和SDA 与外部的单片机相连接。 电容C2 和C1布置于CH456的电源引脚附近,用于电源退耦,减少驱动大电流产生的干扰。

CH456手册 7 8.2. 抗干扰 由于CH456驱动数码管或者LED的电流较大,会在电源上产生较大的毛刺电压,所以如果电源线 或者地线的PCB布线不合理,将有可能影响单片机或者CH456 的稳定性,建议使用较粗的电源线和地 线,并靠近CH456在正负电源之间并联电源退耦电容。 对于强干扰的应用环境,单片机可以每隔数秒定期对CH456 进行刷新,包括重新加载各个数码管 的数据寄存器,以及重新开启显示。 另外,如果由标准MCS-51单片机的I/O 引脚对CH456进行较远距离的驱动,通常要加强MCS-51 单片机的I/O引脚的上拉能力,以便在远距离传输时保持较好的数字信号波形。上拉电阻的阻值可以 是1KΩ到10KΩ,近距离无需上拉电阻。 8.3. 单片机接口程序 CH456 芯片的接口程序与CH453及CH423芯片基本兼容,可以直接使用CH453或者CH423芯片的 子程序和例子程序,网站上提供了部分单片机的C 语言和ASM 汇编接口程序。