数码管简介
74HC595同数据相关的引脚可以分为三类:
DS:串行数据输入,接单片机的某个数字I/O引脚。
Q0~Q7:8位并行数据输出,可以直接控制8个LED,或者是七段数码管的8个引脚。
Q7′:级联输出端,与下一个74HC595的DS相连,实现多个芯片之间的级联。
74HC595同控制相关的引脚一共有四个:
SH_CP:移位寄存器的时钟输入。上升沿时移位寄存器中的数据依次移动一位,即Q0中的数据移到Q1中,Q1中的数据移到Q2中,
依次类推;下降沿时移位寄存器中的数据保持不变。
ST_CP:存储寄存器的时钟输入。上升沿时移位寄存器中的数据进入存储寄存器,下降沿时存储寄存器中的数据保持不变。应用时
通常将ST_CP置为低点平,移位结束后再在ST_CP端产生一个正脉冲更新显示数据。
MR:重置(RESET),低电平时将移位寄存器中的数据清零,应用时通常将它直接连高电平(VCC)。
OE:输出允许,高电平时禁止输出(高阻态)。引脚不紧张的情况下可以用单片机的一个引脚来控制它,这样可以很方便地产生闪
烁和熄灭的效果。实际应用时可以将它直接连低电平(GND)。
对于一个最简单的74HC595应用来讲,可以用单片机的三个数字I/O端口分别控制DS、SH_CP和ST_CP,然后将MR和OE分别接VCC和地。
单片机与74LS595(8位输出锁存移位寄存器)的使用方法
74HC595的数据端:
QA--QH: 八位并行输出端,可以直接控制数码管的8个段。
QH': 级联输出端。我将它接下一个595的SI端。
SI: 串行数据输入端。
74HC595的控制端说明:
/SCLR(10脚): 低点平时将移位寄存器的数据清零。通常我将它接Vcc。
SCK(11脚):上升沿时数据寄存器的数据移位。QA-->QB-->QC-->...-->QH;下降沿移位寄存器数据不变。(脉冲宽度:5V时,大于几十
纳秒就行了。我通常都选微秒级)
RCK(12脚):上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。通常我将RCK置为低电平,当移位结束后,
在RCK端产生一个正脉冲(5V时,大于几十纳秒就行了。我通常都选微秒级),更新显示数据。
/G(13脚): 高电平时禁止输出(高阻态)。如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。比通过数据端移位控制要省时省力。
数码管模块与arduino连接示意图
接线说明:
数码管的VCC – arduino上的5V
数码管的GND -- arduino上的GND
数码管的DS -- arduino上的A0
数码管的ST_CP -- arduino上的A1
数码管的SH_CP -- arduino上的A2
程序下载进去后,数码管显示1 2 3 4 5 6 7 8
级联的连线说明:
级联的时候只需要数码管的数码管的VCC、GND、DS 、ST_CP、SH_CP。和另一个数码管的
VCC、GND、DS 、ST_CP、SH_CP连到一起。
以上硬件购买链接如下:
cepark.taobao.com