74HC595简介:
74HC595作为一款常用的高速CMOS数字芯片,经常被用作以下用途:
1、作为CMOS结构的芯片,驱动能力还是可以的,因此常用来驱动LED点阵屏;
2、串转并,在单片机IO口不足时可以扩展IO口使用;
主要特点:
1、三态门输出,即高低电平、高阻态;
2、CMOS结构,驱动能力比较强,一般可以用来直接驱动点阵屏;
3、串转并输出,具有数据锁存功能,可用来扩展单片机IO口;
4、SPI协议;
5、可级联多片;
引脚定义及真值表:
QA--QH:八位并行输出端,可以直接控制数码管的8个段。
Q'H:级联输出端。将它接下一个595的SER端。
SER:串行数据输入端,级联的话接上一级的Q'H。
SCLR(10脚):低电平时将移位寄存器的数据清零。通常我将它接Vcc。
SCK(11脚):上升沿时数据寄存器的数据移位。Q0->Q1->Q2-->Q3-->...-->Q7;下降沿移位寄存器数据不变。(脉冲宽度:5V时,大于几十纳秒就行了。我通常都选微秒级)
RCK(12脚):上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。通常我将RCK置为低电平,当移位结束后,在RCK端产生一个正脉冲(5V时,大于几十纳秒就行了。我通常都选微秒级),更新显示数据。
G(13脚):高电平时禁止输出(高阻态)。如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。比通过数据端移位控制要省时省力。
注1)74HC164和74HC595功能相仿,都是8位串行输入转并行输出移位寄存器。74HC164的驱动电流(25mA)比74HC595(35mA)的要小,14脚封装,体积也小一些。
注2)74HC595的主要优点是具有数据存储寄存器,在移位的过程中,输出端的数据可以保持不变。这在串行速度慢的场合很有用处,数码管没有闪烁感。
工作过程:
根据以上芯片各个引脚的功能描述,作如下设置:
Pin13输出使能引脚G我们一直让它使能,即置为低电平;Pin10复位引脚SCLR我们一直让它无效,及置为高电平,这两个引脚在硬件设计时为了方便,就直接给它们连到相应的电平上了;
程序中我们只需要关注Pin14数据输入引脚SER、Pin11移位脉冲引脚SCK和Pin12锁存脉冲引脚RCK;
74HC595是一个8位串行输入、并行输出的移位缓存器,并行输出为三态输出。在SCK的上升沿,串行数据由SER输入到内部的8位位移缓存器,并由Q'H输出,而并行输出则是在RCK的上升沿将在8位位移缓存器的数据存人到8位并行输出缓存器。当Pin13-输出使能脚G的控制信号为低电平使能时,并行输出端的输出值等于并行输出缓存器所存储的值。而当G为高电位,也就是输出关闭时,并行输出端会维持在高阻抗状态。
第一步:目的:将要准备输入的位数据移入74HC595数据输入端上。方法:送位数据到74HC595。
第二步:目的:将位数据逐位移入74HC595,即数据串入方法:SCK产生一上升沿,将DS上的数据移入74HC595移位寄存器中,先送低位,后送高位,如下图,一个字节数据需要经过SCK引脚产生8次上升沿:
第三步:目的:并行输出数据。即数据并出方法:RCK产生一上升沿,将由SER已移入数据寄存器中的数据送入到输出锁存器,如下图:
说明:从上可分析:从SCK产生一上升沿(移入数据)和RCK产生一上升沿(输出数据)是二个独立过程,实际应用时互不干扰。即可输出数据的同时移入数据。
注:配套同期的视频效果更佳!