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.
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];
endmodulePins 16
| Pin | Name | Verwendung |
|---|---|---|
| 1 | QBAusgang | Parallelausgang B |
| 2 | QCAusgang | Parallelausgang C |
| 3 | QDAusgang | Parallelausgang D |
| 4 | QEAusgang | Parallelausgang E |
| 5 | QFAusgang | Parallelausgang F |
| 6 | QGAusgang | Parallelausgang G |
| 7 | QHAusgang | Parallelausgang H |
| 8 | GNDMasse | Masse |
| 9 | QHSAusgang | Serieller Ausgang (QH'): an SER des nächsten 74HC595 für Ketten |
| 10 | nSRCLREingang | Schieberegister löschen, low-aktiv: unbenutzt an VCC |
| 11 | SRCLKEingang | Schiebetakt: steigende Flanke schiebt SER ein |
| 12 | RCLKEingang | Speichertakt (Latch): steigende Flanke kopiert das Schieberegister nach QA–QH |
| 13 | nOEEingang | Ausgangsfreigabe, low-aktiv: GND = Ausgänge an, high = Ausgänge aus (hochohmig) |
| 14 | SEREingang | Serielle Daten ein: das nächste Bit, übernommen mit der steigenden SRCLK-Flanke |
| 15 | QAAusgang | Parallelausgang A (das zuletzt eingeschobene Bit) |
| 16 | VCCVersorgung | Versorgung 2–6 V: 100 nF nach GND |
Parameter 1
Gatterlaufzeit
tpdStandard10n
Leiterplatte
Geprüftes Land-Pattern
SOIC-16_3.9x9.9mm_P1.27mm