S/P-Wandlung mit TTL-Pegel

OP #3429575
Lesenswert?

Hallo,

ich habe folgendes Problem:
Ich möchte auf einer Zweidraht-Schnittstelle von Seite (A) ein 4 Bit 
Datenwort schicken. Auf Seite (B) möchte ich das Datenwort (Beispiel: 
1101) parallel ausgeben. Da fällt mir sofort ein Schieberegister ein. 
Das Datenwort soll aber so lange an den parallelen Ausgängen des 
Schieberegisters anliegen, bis ich die nächsten 4 bit seriel an die 
Seite (B) schicke (Gerät(B) soll dafür nicht bedient werden müssen).
Der Takt an dem Schieberegister wird doch aber dafür sorgen, dass die 
Daten nicht erhalten bleiben oder habe ich da etwas falsch in 
Erinnerung?

Gruß
Sebastian
Gast #3429586
Lesenswert?

Es gibt Schieberegister mit einem vorgeschalteten Latch.
Allerdings keine 4-Bit weiten (wenn ich nicht irre).
Du musst Du den Latch-Übernahme-Impuls noch mit einem zusätzlichen 
Zähler erzeugen.

Es gibt irgendwo im Netz (in Ermangelung eines der guten alten 
Eulenbücher) ein Verzeichnis der 74er- und 40er-Reihe. Blätter da mal 
durch.
#3429996
Lesenswert?

Sebastian W. schrieb:
> eine Zweidraht-Schnittstelle

Das ist der Knackpunkt. Welche denn? und zählst du GND da schon dazu 
oder nicht?

Mit 2 Leitungen + GND könnte man I²C (aka TWI) verwenden. Da gibt es 
mehr als einen Baustein der 4 (oder mehr) digitale Ausgänge hat. Für ein 
"nacktes" Schieberegister braucht es wenigstens 3 Leitungen: Takt, Daten 
und Latch. Prinzipiell kann man das Latch zwar weglessen - aber dann 
wackeln die Leitungen halt, wenn man neue Daten einschiebt.


XL
OP #3430193
Lesenswert?

Hab auch gerade gesehen, dass I2C drei Leitungen  braucht.
Sender und Empfänger haben bei meiner Idee eine eigene 
Spannungsversorgung. Als Verbindung stehen mir nur zwei Leitungen zur 
Verfügung. Eine für GND und eine für Tx-Daten. Mit einer RS232 
Schnittstelle würde es ja gehen, lieber wäre mir eine einfache Lösung 
mit TTL-Pegel gewesen.
#3430216
Lesenswert?

Bitkracherl schrieb:
> Das geht durchaus. Wie oben schon beschrieben: Zähler und
> Schieberegister mit Latch.

Da muss man aber noch einiges dazu basteln, um auf einer Leitung Daten 
und Clock zu verschicken - z.B. einen Machnester-Kodierer bzw. 
Dekodierer. Dann ist ein kleiner µC mit UART doch wesentlich 
einfacher...

Bitkracherl schrieb:
>>Du brauchst dann auf beiden Seiten z.B. einen µC mit UART.
>
> Ein UART ist nicht notwendig.

Dann sag mal, wie Du das machen willst.

Gruß Dietrich
Gast #3430259
Lesenswert?

Ein typisches Beispiel für einen falschen Fokus bei der Fragestellung.

Der TO fragt danach wie er eine Veränderung an den Ausgängen des 
Schieberegisters bei der Übertragung verhindert. Dafür ist natürlich die 
Voraussetzung, das er schon Takt und Daten übertragen kann. Das er da 
von Zwei-Draht-Schnittstelle schreibt, mag hingehen, denn man redet auch 
von 1-Wire, was ja auch zwei Verbindungen benötigt.

In Wirklichkeit aber, ist das Problem der Übertragung selbst noch 
garnicht gelöst.

Na jedenfalls würde ich dann auch I2C empfehlen.
#3430275
Lesenswert?

Dietrich L. schrieb:
> Und wie taktest Du die Daten in das Schieberegister? Mit nur /einer/
> Leitung?

1. Monoflop an Leitung, Dauer 50% des Taktes. Mit dessen Ablauf wird das 
Schieberegister getaktet.

2. Monoflop an Leitung, Dauer 150% des Taktes, retriggerbar. Mit dessen 
Ablauf wird das Outputregister getaktet.

Daten PWM-moduliert, 25%/75%. Nach den Bits mindestens 1 Takt Pause 
lassen.

Aufwand: 1x Dual-Monoflop 4538, 1x Shift+Register 4094.
ALternativ: 1x 8-Pin µC.

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