Forum: Mikrocontroller und Digitale Elektronik Mögliche Schaltung für bidirektionale Pegelwandlung


von Thomas Wiemken (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,
ich habe eine Frage zum Thema Pegelwandlung. Keine Sorge, ich habe die
im Forum vorhandenen Artikel dazu, schon gelesen. Ich hoffe mal, dass
ich auch alle gefunden habe.
Jedenfalls habe ich eine Frage zu einer Schaltung, die ich ausprobieren
wollte. Wollte aber gerne eine erste Meinung von euch haben, ob es
überhaupt gehen kann.

Es ist eine 3,3 Volt Ebene vorhanden und eine 5 Volt Ebene vorhanden.
Das ganze soll wie schon gesagt bidirektional sein. Auf der 3,3 Volt
Eben ist ein Chip mit 1-wire Interface, auf der 5 Volt Ebene ist ein
Atmega168 µC, der das Interface belauschen und beschreiben soll.
Zum lauschen wird der externe Interrupt 0 des Kontrollers verwendet und
zum schreiben ein normaler PORTPIN. In der Zeit des schreibens ist der
INT0 abgeschaltet, beim lauschen wirde der zum schreiben benutzte
PORTPIN in den Tristate Zustand versetzt.

Zur Pegelwandlung wollte ich Single-Schmitt-Trigger Inverter von Typ
74LVC1G14 benutzen, die ich in einer Schaltung angeordnet habe, wie sie
im Dateianhang zu sehen ist.

Was meint Ihr dazu.

Gruß und Freude
Thomas

von Dirk (Gast)


Lesenswert?

Hi,

spricht etwas gegen einen richtigen bidirektonalen Leveltransmitter?

z.B. ST2368 erhaeltich bei www.csd-electronics.de

Gruß,

Dirk

von Dirk (Gast)


Lesenswert?

Mist,

sollte ST2378 heissen.

von Thomas Wiemken (Gast)


Lesenswert?

@Dirk

Hallo Dirk, natürlich kann ich auch sowas einsetzen, jedoch wollte ich
gerne Wissen ob es auch so gehen kann.

Das ST2378 kostet außerdem 3,25€. Das ist mir zuviel.
Ansonsten ist es genau das wa ich umsetzen will.

Vielleicht schaffe ich es heute noch, meine Schaltung aufzubauen.

Aber zu weiteren Meinungen bin ich immer offen.

Gruß
Thomas

von A.K. (Gast)


Lesenswert?

Wenn das links wirklich ein 1-Wire-Bus ist, wird's interessant. Denn
der ist ja sehr bidirektional und deine Schaltung wirkt so nebenbei als
Latch für 0-Pegel. Überleg dir mal wie du damit 1-Wire Lesezyklen
hinkriegen willst.

Geht allenfalls indem du den INT0-Pin als Eingang verwendest und vor
dem Widerstand anschliesst, nicht dahinter. Den anderen Pin kannst du
dann als Open-Drain-Ausgang direkt an den 1-Wire hängen. Bleibt davon
dann nur noch ein Pegelwandler für den Eingang übrig. Und wenn der
invertiert, stört das auch nicht sonderlich, spart aber ein Gatter ein.
Das wiederum ein normales HCT sein darf.

von Dirk (Gast)


Lesenswert?

Hi,

> Das ST2378 kostet außerdem 3,25€. Das ist mir zuviel.
> Ansonsten ist es genau das wa ich umsetzen will.

hm wirklich zu teuer? Fuer die 3,25 Euro duerfte deine eigene
Entwicklung nicht länger als 5 Minuten dauern, ansonsten ist die eigene
Loesung teurer.


Dirk

von Thomas Wiemken (Gast)


Lesenswert?

@A.K.

Jup, links ist ein 1-Wire-Bus und der ist wie Du schon gesagthast
bidirektional. Inwiefern wirkt es als 0-Pegel Latch?

Mal angenommen:
Vom 1-Wire-Bus kommen Daten. Der PORTPIN befindet sich im Tristate
Zustand und der INT0 horcht ab. Nun liegt eine logische 1 links vom Bus
kommend an und zwar mit 3,3 Volt. Diese 3,3 Volt sind am Eingang des
ersten 5 Volt Schmitt-Triggers und werden zum Ausgang hin invertiert.
Am zweiten wird dies nochmal invertiert und somit befindet sich dessen
Ausgang eine logische 1 mit 5 Volt Pegel.

OK diese logische 1 mit 5 Volt wird selbstverständlich über die beiden
unteren Schmitt-Trigger, zurück zum Bus geführt, aber das stört doch
soweit nicht.

Wenn nun ein Wechsel von logisch 1 auf logisch 0 geschied, dann sollte
der 1-Wire-Bus in der Lage sein diesen Pegel zu treiben, da die Signale
vom Schmitt-Trigger her durch den Widerstand gedämpft werden.

Somit liegt nun eine logische 0 mit 0 Volt an dem Eingang der ersten 5
Volt Schmitt-Triggers und der Ablauf ist wie zuvor.

Also bis hierhin sehe ich keine Probleme, oder täusche ich mich?

Zu dem Text ab: "Geht allenfalls indem du..." könntest du dazu
vielleicht eine Schaltung zeichen, ist allemal verständlicher. Sonst
kommt es nur zu Missverständnissen.

Ok ich mach nu Feierabend. Werde dann zuhause weiterschauen.

von A.K. (Gast)


Lesenswert?

1-Wire Lesezyklus: Master (Controller) legt für 1µs 0-Pegel an. Lässt
danach los, der Pullup zieht auf 1 hoch. Der Slave lässt dies zu (wenn
1) oder zieht selber runter (wenn 0). Möchte nun von dir wissen, wie du
gleichzeitig den Bus hochziehen und feststellen willst, ob er dort auch
ankommt.

von A.K. (Gast)


Lesenswert?

3,3V
                            |
                           .-.
                           | |
                           | |
                           '-'
                            |
                            |  |\
                  1-Wire ---o--| >O------- Eingang
                            |  |/
                            |
                            '------------- Ausgang

von A.K. (Gast)


Lesenswert?

Ansonsten tut's auch ein simpler MOSFET-Pegelwandler, wie er sich bei
I2C oft findet.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.