TM1650使用经验
TM1650芯片功能
TM1650 是一种带键盘扫描接口的 LED(发光二极管显示器)驱动控制专用电路。内部集成有 MCU输入输出控制数字接口、数据锁存器、LED 驱动、键盘扫描、辉度调节等电路。TM1650 性能稳定、质量可靠、抗干扰能力强,可适用于 24 小时长期连续工作的应用场合。TM1650 采用 2 线串行传输协议通讯(注意该数据传输协议不是标准的I2C协议)。该芯片只需要通过二个引脚与MCU通讯就可以完成数码管的驱动,可以节省MCU引脚资源,可以简化数码管显示电路的复杂度。可以在百度搜索“基于STM32的常用数码管芯片TM1650驱动”一文
TM1650芯片引脚
TM1650通讯协议
1:开始信号(START)/结束信号(STOP)
开始信号:保持 SCL 为“1”电平,SDA 从“1”跳“0”,认为是开始信号, 如(图 3)A 段;
结束信号:保持 SCL 为“1”电平,SDA 从“0”跳“1”,认为是结束信号, 如(图 3)E 段;
2:ACK 信号
如果本次通讯正常,芯片在串行通讯的第 8 个时钟下降沿后,TM1650 主动把 SDA 拉低。直到检测到 SCL 来了上升沿,SDA 释放为输入状态(对芯片而言),如(图 3)D 段。
3: 写“1”和写“0”。
写“1”:保持 SDA 为“1”电平,SCL 从“0”跳到“1”,再从“1”跳到“0”,则认为是写入“1” 如(图 3)B 段。
写“0”:保持 SDA 为“0”电平,SCL 从“0”跳到“1”,再从“1”跳到“0”,则认为是写入“0” 如(图 3) C 段。
4:一个字节数据传输格式
一个字节数据的传输格式如图 4,数据发送时 MSB 在前,LSB 在后。微处理器的数据通过两线总线接口和 TM1650 通信,在输入数据时当 SCL 是高电平时,SDA 上的信号必须保持不变;只有 SCL 上的时钟信号为低电平时,SDA 上的信号才能改变。数据输入的开始条件是 SCL 为高电平时,SDA 由高变低;结束条件是 SCL 为高时,SDA 由低电平变为高电平。
5:对显存地址写数据的时序:
MCU向TM1650发指令的过程:发START指令