描述:
74HC595是硅结构的CMOS器件, 兼容低电压TTL电路,遵守JEDEC标准。 74HC595是具有8位移位寄存器和一个存储器,三态输出功能。 移位寄存器和存储器是分别的时钟。 数据在SHcp的上升沿输入到移位寄存器中,在STcp的上升沿输入到存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。 移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。
8位串行输入 /8位串行或并行输出 存储状态寄存器,三种状态
并行输出,总线驱动; 串行输出;标准中等规模集成电路
符号 引脚 描述
GND 第8脚 地
Q7’ 第9脚 串行数据输出
MR 第10脚 主复位(低电平)
SHCP 第11脚 移位寄存器时钟输入
STCP 第12脚 存储寄存器时钟输入
OE 第13脚 输出有效(低电平)
DS 第14脚 串行数据输入
VCC 第16脚 电源
功能表
输入 输出 功能
SHCP STCP OE MR DS Q7’ Qn
× × L ↓ × L NC MR为低电平时仅仅影响移位寄存器
× ↑ L L × L L 空移位寄存器到输出寄存器
× × H L × L Z 清空移位寄存器,并行输出为高阻状态
↑ × L H H Q6 NC 逻辑高电平移入移位寄存器状态0,包含所有的移位寄存器状态 移入,例如,以前的状态6(内部Q6”)出现在串行输出位。
× ↑ L H × NC Qn’ 移位寄存器的内容到达保持寄存器并从并口输出
↑ ↑ L H × Q6’ Qn’ 移位寄存器内容移入,先前的移位寄存器的内容到达保持寄存器并出。
注释
H=高电平状态
L=低电平状态
↑=上升沿
↓=下降沿
Z=高阻
NC=无变化
×=无效
当MR为高电平,OE为低电平时,数据在SHCP上升沿进入移位寄存器,在STCP上升沿输出到并行端口。
程序样例
#define u8 unsigned char
#define u16 unsigned int
sbit MR = P1 ^ 6; //寄存器清0,避免数据错位
sbit RCK = P1 ^ 5; //并行输出时钟
sbit DS = P1 ^ 4; //数据线
sbit CLK = P1 ^ 3; //移位输入时钟
void writ_595(u8 dat)
{
u8 i;
MR = 0; //寄存器清0,避免数据错位
MR = 1;
for(i = 0; i < 8; i++)
{
CLK = 0;
if((dat & 0x80) == 0x80)
DS = 1; //串行数据输出
else
DS = 0;
CLK = 1; //移位输入时钟,上升沿输入
dat <<= 1;
}
RCK = 0; //并行输出时钟
RCK = 1;
}
该子函数可以直接调用,比如writ_595(0xfe);Q0-Q7脚则输出对应的二进制码