Bringup
Editor öffnen
Verilog (Digital-Engine)74HC595v_hc595

74HC595 (8-Bit-Schieberegister, gespeicherte Ausgänge)

74HC595: seriell ein (SER, SRCLK), parallel aus QA–QH über ein Speicherregister (RCLK) mit Tri-State-Ausgängen (OE̅), Kaskadenausgang QH'. Funktionales Verilog-Modell, nummerierte SOIC-16-Anschlüsse nach TI-Datenblatt.

QBQCQDQEQFQGQHGNDQHSnSRCLRSRCLKRCLKnOESERQAVCC74HC595
Schaltplansymbol

Wichtige Daten

Kategorie
Logik (Verilog)
Simulationsmodell
Verilog (Digital-Engine)
Hersteller-Teilenummer
74HC595
Referenzpräfix
U
Pins
16
Land-Pattern
SOIC-16_3.9x9.9mm_P1.27mm

Hinweise

  • Arduino: shiftOut(dataPin, clockPin, MSBFIRST, value) an SER und SRCLK, danach ein Puls an RCLK zeigt das Byte an QA–QH (QH = erstes gesendetes Bit bei MSBFIRST).
  • Mehrere Chips verketten: QH' an SER des nächsten, SRCLK und RCLK parallel.
  • SRCLR̅ an VCC und OE̅ an GND legen, wenn sie nicht gebraucht werden; jeder Ausgang treibt eine LED über einen eigenen Widerstand.

Simulationsmodell

Der Verilog-Quelltext wird mit Yosys (WebAssembly) zu Gattern synthetisiert und ereignisgesteuert simuliert. Ausgänge treiben die Analogschaltung wie CMOS-Pins über einen Treiberwiderstand zur Versorgung; Eingänge schalten bei 30 % und 70 % der Versorgung.

Versorgungspins
16 / 8
Top-Modul
v_hc595
Ausgangs-Treiberwiderstand
50 Ω
Verilog-Quelltext

module v_hc595(input SER,SRCLK,RCLK,nSRCLR,nOE,output QA,QB,QC,QD,QE,QF,QG,QH,QHS);
reg [7:0] sr,st;
always @(posedge SRCLK or negedge nSRCLR) if(!nSRCLR)sr<=8'b0;else sr<={sr[6:0],SER};
always @(posedge RCLK) st<=sr;
assign {QH,QG,QF,QE,QD,QC,QB,QA}=nOE?8'bzzzzzzzz:st;
assign QHS=sr[7];
endmodule

Pins 16

PinNameVerwendung
1QBAusgangParallelausgang B
2QCAusgangParallelausgang C
3QDAusgangParallelausgang D
4QEAusgangParallelausgang E
5QFAusgangParallelausgang F
6QGAusgangParallelausgang G
7QHAusgangParallelausgang H
8GNDMasseMasse
9QHSAusgangSerieller Ausgang (QH'): an SER des nächsten 74HC595 für Ketten
10nSRCLREingangSchieberegister löschen, low-aktiv: unbenutzt an VCC
11SRCLKEingangSchiebetakt: steigende Flanke schiebt SER ein
12RCLKEingangSpeichertakt (Latch): steigende Flanke kopiert das Schieberegister nach QA–QH
13nOEEingangAusgangsfreigabe, low-aktiv: GND = Ausgänge an, high = Ausgänge aus (hochohmig)
14SEREingangSerielle Daten ein: das nächste Bit, übernommen mit der steigenden SRCLK-Flanke
15QAAusgangParallelausgang A (das zuletzt eingeschobene Bit)
16VCCVersorgungVersorgung 2–6 V: 100 nF nach GND

Parameter 1

Gatterlaufzeittpd
Standard10n

Leiterplatte

Geprüftes Land-PatternSOIC-16_3.9x9.9mm_P1.27mm