AVR UART Pegel softwaremäßig invertiert?

OP #2506596
Lesenswert?

Hi,
Gibt es eine Möglichkeit die Pegel des AVR UART Receivers und 
Transmitters invertiert auf den IO Pins zu betreiben?
Könnte das extrem gut brauchen, hab aber in der UART Konfig mal nichts 
gefunden. Konkret geht es um einen ATMega162...
Wäre sehr dankbar für einen Tipp!
#2506598
Lesenswert?

Markus H. schrieb:
> Hi,
> Gibt es eine Möglichkeit die Pegel des AVR UART Receivers und
> Transmitters invertiert auf den IO Pins zu betreiben?
> Könnte das extrem gut brauchen, hab aber in der UART Konfig mal nichts
> gefunden. Konkret geht es um einen ATMega162...
> Wäre sehr dankbar für einen Tipp!

Nicht direkt.
Also entweder: externer Inverter oder Software UART.

Allerdings ist es sehr selten, dass man so etwas benötigt. Verrätst du 
uns den Grund für dein Anliegen?
OP #2506609
Lesenswert?

Es geht um eine direkte TTL Kommunikation mit verschiedenen 
Fremdgeräten. Neben Unterschieden des Protokolls und der Parity gibt es 
auch noch Geräte die einen Inverter brauchen und solche die keinen 
brauchen.
Um das Softwaremäßig automatisieren zu können wäre es Toll man könnte 
gleich die UART einmal normal und einmal invertiert betreiben.
Moderator (Firma: Titel) Persönliche Seite #2506616
Lesenswert?

Markus H. schrieb:
> Um das Softwaremäßig automatisieren zu können wäre es Toll man könnte
> gleich die UART einmal normal und einmal invertiert betreiben.
Geht leider nicht.

Karl Heinz Buchegger schrieb:
> Allerdings ist es sehr selten, dass man so etwas benötigt. Verrätst du
> uns den Grund für dein Anliegen?
Ich vermute mal, der Grund ist: "dumm gelaufen, weil nicht richtig 
verstanden". Blöd, wenn sich mal einer nicht an die 
Quasi-Spezifikation gehalten hat:
Zustand    TTL   V.24
1  high    5V    -12V
0  low     0V    +12V

Ruhezustand = '1' = 5V(TTL) bzw. -12V(V.24)
#2506620
Lesenswert?

Hängen die Fremdgeräte alle an einem Bus? Wenn, kommen die damit klar 
dass sie andauernd für sie ungültige Daten erhalten?

Würds eher aufsplitten in mehrere Bussysteme / Protokollinterfaces und 
alles das übers serielle Protokoll läuft über die Hardwareusart (Parity 
ändern usw. verursacht am inaktiven Bus keine Signale und die 
entsprechenden Empfänger verwerfen bei genau gegenteiliger Parität die 
Bytes einfach...), den Rest über Softwaretreiber.
#2506642
Lesenswert?

Lothar Miller schrieb:

> Ich vermute mal, der Grund ist: "dumm gelaufen, weil nicht richtig
> verstanden".

Das hab ich mir jetzt gerade beim Autofahren auch überlegt. Ich kann mir 
nämlich nicht vorstellen, dass irgendein Hersteller eine TTL-RS232 
verkauft, die sich nicht an den 'Standard' hält. Er würde sich damit 
selbst ein Bein stellen, weil er zu nichts und niemandem kompatibel ist.
Ich kann mir aber vorstellen, dass es ein Hersteller bei einer richtigen 
RS232 nicht so ganz genau mit den Pegeln nimmt und sich drauf verlässt, 
dass die Gegenstelle schon noch genug Spielraum hat um ihn trotzdem zu 
verstehen. Ob man das unterstützen sollte oder nicht, steht dann auf 
einem anderen Blatt.

> gibt es auch noch Geräte die einen Inverter brauchen
denn mit diesem Inverter ist ja im Regelfall auch noch ein anderer 
Spannungshub verbunden. Aus TTL-RS232 mit 0..5V Pegeln wird dann 
invertiert 'richtige' RS232 mit -12V..+12V
OP #2506644
Lesenswert?

Hier handelt es sich um eine p2p Verbindung und nicht um einen Bus.
Es werden eben je nach Anlage verschiedene Fremdgeräte angeschlossen. Um 
den Monteueren das Leben zu erleichtern versuchen wir das so gut wie 
möglich zu automatisieren.
Mittlerweile habe ich eine Lösung: Ich nehme ein XOR Gatter und steuere 
mit freien uP Pins die Invertierung des Signals. Freie IO Pins habe ich 
genügend zu Verfügung!
OP #2506646
Lesenswert?

Karl Heinz Buchegger schrieb:
> Lothar Miller schrieb:
>
>> Ich vermute mal, der Grund ist: "dumm gelaufen, weil nicht richtig
>> verstanden".
>
> Das hab ich mir jetzt gerade beim Autofahren auch überlegt. Ich kann mir
> nämlich nicht vorstellen, dass irgendein Hersteller eine TTL-RS232
> verkauft, die sich nicht an den 'Standard' hält. Er würde sich damit
> selbst ein Bein stellen, weil er zu nichts und niemandem kompatibel ist.
> Ich kann mir aber vorstellen, dass es ein Hersteller bei einer richtigen
> RS232 nicht so ganz genau mit den Pegeln nimmt und sich drauf verlässt,
> dass die Gegenstelle schon noch genug Spielraum hat um ihn trotzdem zu
> verstehen. Ob man das unterstützen sollte oder nicht, steht dann auf
> einem anderen Blatt.
>
>> gibt es auch noch Geräte die einen Inverter brauchen
> denn mit diesem Inverter ist ja im Regelfall auch noch ein anderer
> Spannungshub verbunden. Aus TTL-RS232 mit 0..5V Pegeln wird dann
> invertiert 'richtige' RS232 mit -12V..+12V

Natürlich ist es stumpfsinnig sich nicht an diverse Standards zu halten, 
leider habe ich keinen Einfluss auf diese Geräte und muss mit der 
idiotischen Ansteuerung leben!
Ich würde niemals so was bauen!

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