SN74HC373N: gem otte bit med en transparent latch

En processor kan sende otte bit på en databus, men bussen skal snart bruges til noget andet. SN74HC373N kan fastholde de otte bit på sine udgange. Her lærer du, hvad en transparent latch er, og hvordan du skriver en byte uden at lade to kredse drive samme bus.

Grundideen: gennemsigtig eller gemt

En latch gemmer én bit. Når LE (latch enable) er HØJ, er den transparent: hver Q-udgang følger sin tilsvarende D-indgang. Når LE går LAV, gemmes den sidste værdi, og Q holder den, selv om D ændres. Denne chip har otte kanaler, 1D–8D og 1Q–8Q; den bruger ikke bitnumrene 0–7.

Hvad gør OE?

OE på ben 1 er aktiv LAV. Med OE LAV er de gemte værdier synlige på Q. Med OE HØJ er alle Q-udgange højimpedante (3-state): de slipper forbindelsen, men de gemte bit slettes ikke. Derfor kan flere enheder dele en bus, hvis højst én har sine udgange aktiveret ad gangen.

Top-view pinout

SN74HC373N i 20-bens PDIP, set oppefra med hakket øverst. Skråstregen foran OE viser aktiv LAV.
SN74HC373N i 20-bens PDIP, set oppefra med hakket øverst. Skråstregen foran OE viser aktiv LAV.

En komplet byte-skrivning

Antag, at en 5 V-controller vil gemme 10100101 på udgangene 8Q…1Q. Hold først OE HØJ, så udgangene ikke driver den fælles bus.

  1. Hold LE LAV og sæt 8D…1D til 10100101. Med LE LAV ændres det lagrede ord endnu ikke.
  2. Sæt LE HØJ. Latchen åbner, og de otte interne bit følger D. Hold data stabile, før LE sænkes.
  3. Sæt LE LAV. Nu er 10100101 gemt; D kan ændres uden at ændre de lagrede bit.
  4. Når bussen er fri, sæt OE LAV: 8Q…1Q driver 10100101. Sæt OE HØJ igen, før en anden enhed får lov at drive bussen.
Én skrivecyklus: åbn latchen med LE HØJ, stil data, luk med LE LAV; OE bestemmer separat, om Q driver bussen.
Én skrivecyklus: åbn latchen med LE HØJ, stil data, luk med LE LAV; OE bestemmer separat, om Q driver bussen.

Prøv den på breadboard

Til et enkeltstående testkredsløb: sæt DIP-20 over breadboardets midterrille. Forbind ben 20 til reguleret +5 V, ben 10 til GND og en 100 nF keramisk kondensator tæt mellem dem. Forbind hver D-indgang via sin egen 10 kΩ pull-down til GND og en kontakt til +5 V. Giv LE og OE hver en defineret tilstand med 10 kΩ modstand; en kontakt kan ændre niveauet. Tilslut én Q-udgang til en LED med 2,2 kΩ seriemodstand mod GND. Gentag kun for andre Q-ben, hvis den samlede udgangsbelastning er kontrolleret. Dette er en lokal demonstration, ikke et komplet bus-interface.

Elektriske grænser og fejl at undgå

Brug ikke en ubeskyttet 3,3 V-logikudgang som garanteret HØJ ved 5 V-forsyning: HC-indgangens garanterede HØJ-grænse ved 4,5 V er 3,15 V, så marginen er lille og skal vurderes for den konkrete controller. En 5 V-Q-udgang må ikke føres direkte til en ikke-5 V-tolerant indgang. Til en blandet 3,3/5 V-løsning kan en passende HCT-indgang eller niveautilpasning være nødvendig. Undgå flydende CMOS-indgange, og overhold databladets setup-, hold- og pulsbreddekrav ved høje hastigheder. OE er ikke en nulstilling; ved opstart er latchens indhold ukendt, til du selv skriver en værdi.

Relaterede guider

Vil du i stedet holde fire bit på en delt bus, se guiden til MC74HC173-registret. For selve busretningen mellem to systemer, se guiden til 74HC245-bustransceiveren.

Produkt og kilde

Den lagerførte del er Texas Instruments SN74HC373N i 20-bens PDIP (N). Pinout, LE/OE-funktion og grænser er kontrolleret mod TI-databladet SCLS140G.

Se SN74HC373N-produktsiden · Læs TI-databladet