tiny1/mega0 inverted half-duplex

OP #6446790
Lesenswert?
• ▲
▼
Hallo zusammen,

die mittel-neuen AVRs tiny1 und mega0 bieten UARTs mit loop-back-mode 
und open-drain Betrieb. Damit lassen sich wunderbar half-duplex Busse 
realisieren. Etwa solche, wie im RC-Bereich verwendet (IBus, 
Hott-Telemetrie, ...). Es gibt aber auch Bus-Systeme, die benutzen 
invertierte Pegel (etwa S.Port).

Dazu müsste man den UART-Output invertieren können und statt open-drain 
so etwas wie open-source (der FET-Anschluss ist gemeint) realisieren.

Wenn man beides in einem Layout realisieren möchte (inverted / 
non-inverted bus), und dann SW-mäßig umschaltbar, wie würde man das 
realisieren.

Im Moment fällt mir dazu nur ein:

1) auf LBME und ODMODE des AVR zu verzichten

2a) für non-inverted einen abschaltbaren OpenDrain-Treiber (Low-Side) 
für TX und abschaltbaren Puffer für RX, bzw.

2b) für inverted einen abschaltbaren OpenSource-Treiber (High-Side) für 
TX und einen abschaltbaren, invertierenden Puffer für RX

3) Richtungsumkehr per XDir

zu verwenden.

Geht es auch einfacher?
Bin für jeden Hinweis dankbar.
OP
Lesenswert?
• ▲
▼
Veit D. schrieb:
> Hallo,
>
> ich dachte es geht ums invertieren des Pin Levels am TX?

Richtig, allerdings in Kombination mit einem half-duplex bus.

Im "normalen" Modus hat man einen OpenDrain-Output. D.h. mehrere 
Teilnehmer können  gleichzeitig senden: elektrisch zwar ok, es ergibt 
aber eine Kollision, die man dann aber durch das read-back detektieren 
kann.

> Was genau möchtest du invertieren? Ich habs nicht verstanden.

Jetzt das ganze invertiert: also nicht per OpenDrain nach Gnd ziehen, 
sondern per Open-Source (P-Channel) nach High ziehen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.