hc595ag引脚功能图(74HC595用于数码管的级联实例)(1)

1、74HC595是一个8位串行输入、并行/串行输出移位寄存器,具有可控3态输出。本文主要使用595的级联功能。

hc595ag引脚功能图(74HC595用于数码管的级联实例)(2)

功能示意图

hc595ag引脚功能图(74HC595用于数码管的级联实例)(3)

时序图

74HC595锁存功能:串行输入后,8位锁存,可以一直保持输出的8位不变,等待新的8位就位,连同级联的其他74HC595一起更新,然后再次锁存,依次循环。

74HC595的级联功能:例如串行输入16位,前8位会被挤出,从9脚Q7S同样串行输出至下一级芯片,后8位留在本身的Q0-Q7中。

74HC595的使能功能:将每一个74HC595芯片的使能脚一起接受CPU同一个管脚控制,以达到收到新数据的所有74HC595同时输出8位数据,显示一种效果。

2、下面是74HC595使用实例原理图:

hc595ag引脚功能图(74HC595用于数码管的级联实例)(4)

示例图

图中只用3个CPU管脚控制多个4位数码显示,UM1为一级芯片,即发出数据的最后8位,用于选择所有4位数码管的第N位显示。UM2-UM5用于控制每一个4位数码管8段。

利用分时复用原理,

当发出0x9F、0x9F、0x9F、0x9F、0x08,使能后,由于0x08片选,所有每个4位数码管的第一位会显示1。

当发出0x25、0x25、0x25、0x25、0x04,使能后,由于0x04片选,所有每个4位数码管的第二位会显示2。

当发出0x0D、0x0D、0x0D、0x0D、0x02,使能后,由于0x02片选,所有每个4位数码管的第三位会显示3。

当发出0x99、0x99、0x99、0x99、0x01,使能后,由于0x01片选,所有每个4位数码管的第四位会显示4。

依次循环显示。每位显示时长为四分之一周期。

3、汇编程序:

hc595ag引脚功能图(74HC595用于数码管的级联实例)(5)

定时程序

定时程序选择2-5毫秒为宜,也可自己根据自己程序的运行效果尝试着设置。循环显示4位数码管,每位显示时长为四分之一周期。

hc595ag引脚功能图(74HC595用于数码管的级联实例)(6)

子程序

上图为显示第一位的子程序,其他类似。

4、C程序

在定时器(2-5ms)程序中加入下图语句

hc595ag引脚功能图(74HC595用于数码管的级联实例)(7)

定时器加入语句

显示子程序:

hc595ag引脚功能图(74HC595用于数码管的级联实例)(8)

子程序

5、扩展

5.1 举例中UM1只用到了Q4-Q7四位,可将Q0-Q3一起用上,添加4组74HC595 数码管,可得到8x4=32位数码管显示。

5.2 将其中一位数码管变成8个二极管,可显示8个运行状态,其中4位数码管可变32个指示灯。

5.3 CPU加一个IO,可以最多增加8个按键,UM1输出Q0-Q7分别加一个按键,按键另一端共同接在IO上,在分时复用显示每位数码管时,检测IO是否被按下,类似扫描按键程序。

欢迎拍砖,欢迎指正,欢迎私信。

,