联系我们合金采样电阻贴片采样电阻保护元件FAE

品质诚信服务

当前位置:首页 >> 产品和行业资讯 >> 4位数字电子管显示模块驱动器

4位数字电子管显示模块驱动器

TM1637四位数字电子管模块是带有时钟点的4位共阳极数字管(0.36英寸)显示模块。

驱动器芯片为TM1637,驱动模式为IIC。

因此,仅需要两条信号线就可以使单片机控制4位数字。

8段数码管(数码管的8级亮度可调)。

模块的功能如下:显示设备为4位共阳极数字显像管。

数字电子管的8级亮度可调。

接口电平可以是5V或3.3V IIC驱动器。

只需要两个IO引脚即可驱动显示功能。

使用时钟点,可非常方便地应用于电子时钟显示。

TM1637引脚定义硬件连接模块具有4个引脚(GND,VCC,DIO,CLK),GND接地,VCC为电源,DIO为数据输入和输出引脚,CLK为时钟信号引脚。

如下图和表所示,用4根母对母杜邦线连接4位数字电子管显示模块和STM32核心板:4位数字电子管连接线STM32核心板CLK黄色PA3 DIO蓝色PA2 VCC红色3.3V GND黑色GND IIC总线时序分析由于TM1637由IIC总线驱动,因此驱动TM1637的总线时序必须满足IIC总线的要求。

下图是指令数据的传输过程(读取密钥数据时序):上面的时序图需要注意以下几点:IIC总线对数据的有效性要求:输入数据时,当CLK为高电平时,DIO上的信号必须保持不变;仅当CLK的时钟信号为低电平时,才能更改DIO的信号。

因此,写入我们封装的字节的功能是在CLK引脚为低电平时修改DIO的数据。

数据输入的起始条件是:当CLK为高电平时,DIO从高电平变为低电平。

具体的代码实现如下:// IIC start void TM1637_start(void){CLK_1; DIO_1; delay_us(2); DIO_0;}的最终条件是,当CLK为高电平时,DIO从低电平变为高电平。

具体代码实现如下:// IIC停止无效TM1637_stop(void){CLK_0; delay_us(2); DIO_0; delay_us(2); CLK_1; delay_us(2); DIO_1; TM1637带有应答信号ACK的数据发送,在数据发送过程中,将在时钟线的第9个时钟芯片内部产生一个确认信号ACK,以将DIO引脚拉低。

写命令的实现根据上面实现的IIC写字节功能,实现了以下地址自动加1模式将数据写到SRAM。

下图中的时序图和代码部分以相同的颜色和形状相互对应。

在启动信号之后,DIO将TM1637的第一个字节作为指令输入。

内部解码后,使用此字节的两位B7和B6来区分不同的命令。

B7 B6命令0 1数据命令设置1 0显示控制命令设置1 1地址命令设置数据命令设置该命令用于设置数据写入和读取。

不允许将B1和B0位设置为01或11。

可以在上表中找到B7。

= 0,B6 = 1。

例如,命令0x40对应于上表的第一行:将数据写入显示寄存器。

地址命令设置该命令用于设置显示寄存器的地址。

如果地址设置为06H或更高,则将忽略数据,直到设置了有效地址为止。

上电时,地址默认为00H。

例如:0xC0是地址命令,它对应于显示地址00H,即第一个数字显像管的地址。

发送数据后,您可以设置第一个数码管的显示内容。

显示控制例如:0x8F对应二进制数1000 1111,B3 = 1表示打开显示,B2〜B0的111表示脉冲宽度,即显示亮度,0x8F表示表格中的最高亮度。

结果显示该数码管可以显示的内容为:0123456789AbcdEFHLnPU。

以下视频循环显示了这些内容。

信息获取微信公众号后台回复“四位数数码管”,您可以下载本文相应的项目源代码。