Skip to main content

wokwi-74hc595模块参考

8位串行并行输出(SIPO)移位寄存器

74HC595

使用74HC595移位寄存器扩展微控制器上的_output_引脚数量。对于输入移位寄存器(例如,使用单个输入引脚读取多个按钮),请参阅wokwi-74hc165

引脚名称

Pin描述
DS串行输入
SHCP串行时钟
STCP锁存引脚
OE输出使能,低有效。如果不使用,请连接到GND。
Q0…Q7并行输出
Q7S串行输出*
MR复位(清除),低有效。如果不使用,请连接到VCC
GND接地
VCC接电源

* 使用Q7S将多个74HC595单元连接在一起。将Q7S连接到链中的下一个74HC595芯片的DS引脚。

在Arduino中使用

您需要将至少3个引脚连接到微控制器:DS、SHCP和STCP。

OE引脚可用于禁用移位寄存器的输出。如果您需要该功能,请将其连接到您的微控制器。否则,将其连接到地面以永久启用输出。

移位寄存器的输出引脚Q0到Q7,通常连接到 LEDs或7段显示器。

以下代码示例假设您将DS连接到Arduino引脚2,SHCP连接到Arduino引脚3,并且STCP到Arduino的4号引脚。它输出一个8位的数,该数每秒翻转两次:

const int dataPin = 2;   /* DS */
const int clockPin = 3; /* SHCP */
const int latchPin = 4; /* STCP */

void setup() {
pinMode(dataPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(latchPin, OUTPUT);
}

int pattern = 0b10101010;
void loop() {
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, LSBFIRST, pattern);
digitalWrite(latchPin, HIGH);
delay(500);
pattern = ~pattern; // Invert the pattern
}

你可以 尝试该项目.

仿真实例