I/O-Schieberegistersteuerung ohne Inverter möglich?

OP #6608934
Lesenswert?

Hi,

das scheint mir ein Standardproblem zu sein: ich möchte die Eingänge und 
Ausgänge meines PIC controllers um jeweils 8 Stück erweitern.
Dazu habe ich mir eine STP08CP05 Schieberegister-KSQ für LEDs und ein 
74HC165 herausgesucht.

Neben den drei SPI-Pins habe ich aber nur noch einen Pin zum Steuern der 
beiden Register zur Verfügung. Ich stelle mir das so vor:

der STP emfängt 8 Bits über die Hardware-SPI des Controllers. Am Ende 
der Sequenz sorgt ein kurzer positiver Puls am "LatchEnable"-pin dafür, 
dass die empfangenen Daten auf die Ausgänge durchgeschalten und dann 
wieder gehalten werden.

Der 74HC165 hingegen hat einen "!LoadData"-Eingang, der so lange er auf 
"low" liegt, die anliegenden Daten durchschaltet. Für den eigentlichen 
Datenübertragungsvorgang muss der pin dann "high" sein. Daher brauchen 
wir hier also einen kurzen negativen Puls.

Da ich jeweils kurze Pulse in verschiedene Richtungen erzeugen muss, 
aber nur einen Pin habe, muss ich wohl einen Inverter diskret aufbauen, 
richtig?

Kennt ihr eine Alternative zum 74HC165 mit umgekehrter Polarität am 
Load-Eingang? Gibt's irgendwo eine Übersicht über die ganzen Varianten?


https://www.st.com/resource/en/datasheet/stp08cp05.pdf

https://www.ti.com/lit/gpn/sn74hc165
Gast #6608947
Lesenswert?

A. S. schrieb:
> Da ich jeweils kurze Pulse in verschiedene Richtungen erzeugen muss,
> aber nur einen Pin habe, muss ich wohl einen Inverter diskret aufbauen,
> richtig?

Ja. Alternativ könntest du diesen Impuls ohne I/O Pin aus dem Taktsignal 
heraus erzeugen. Wenn für eine gewisse Zeit kein Takt mehr kommt, wird 
der Load-Impuls erzeugt. Das ist allerdings aufwändiger.
Moderator Persönliche Seite #6608955
Lesenswert?

Erstens musst du keinen diskreten Inverter aufbauen, es gibt schließlich 
integrierte von diversen Herstellern, die sie dir sicher gern verkaufen. 
;-) Die bekommt man auch als Einzel- bzw. Doppelgatter im 
SOT-23-Gehäuse.

Zweitens könntest du wohl auch LE vom STP dauerhaft auf H legen und 
stattdessen mit /OE die Ausgänge für die Zeit der Datenübertragung kurz 
abschalten.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren