Forum: Mikrocontroller und Digitale Elektronik RS232 RxD Signal ATmega 128 per SW invertieren


von Fourstroker B. (fourstroker)


Lesenswert?

Hallo,

ich habe eine GPS Antenne an der zweiten RS232 Schnittstelle des 
ATmega128 angeschlossen. Da die Antenne ihr TxD Signal genau 
Phasenverdreht schickt (0=1 und 1=0), invertiere ich das Signal im 
Moment mit nem Transistor und gehe dann auf den RxD1 (Pin 27) des ATmega 
128.

Da mich der Wandler im Kabel stört würde ich das Invertieren gerne per 
Software lösen. Ist das möglich? Hat das schon jemand ausprobiert?

Ich hoffe ihr könnt mir helfen,

Fourstroker

von gaston (Gast)


Lesenswert?

> Da die Antenne ihr TxD Signal genau
> Phasenverdreht schickt (0=1 und 1=0), invertiere ich das Signal im
> Moment mit nem Transistor und gehe dann auf den RxD1 (
> Pin 27) des ATmega  128.

da ist das signal des GPS, sicherlich kein TTL-Pegel ?

von Flo (Gast)


Lesenswert?

kannst ja nach empfang des Datenbytes dieses einfach bitweise 
invertieren.

in c mit ~
in assembler mit neg

von H.Joachim S. (crazyhorse)


Lesenswert?

nene, das geht nicht.
Einige MC können das (M16C z.B.), der AVR nicht.
Einziger Ausweg: Software-Uart reinbasteln.

von Simon K. (simon) Benutzerseite


Lesenswert?

Kannst du das Signal im GPS Empfänger nicht vor der Wandlung auf RS232 
Pegel abfangen?

von Nick M. (Gast)


Lesenswert?

> nene, das geht nicht.
> Einige MC können das (M16C z.B.), der AVR nicht.


Der hat kein XOR?


Gruß,
Nick

von Simon K. (simon) Benutzerseite


Lesenswert?

Nick Müller schrieb:
>> nene, das geht nicht.
>> Einige MC können das (M16C z.B.), der AVR nicht.
>
>
> Der hat kein XOR?

Kein Hardware XOR am Pin vor dem Hardware UART. Der xmega kann das 
übrigens auch.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> kannst ja nach empfang des Datenbytes dieses einfach bitweise invertieren.
Das hast du nicht ganz zu Ende gedacht:
Denn leider wird der Empfang nicht klappen, weil vor dem ersten Datenbit 
das Strartbit kommt, und das die falsche Polarität hat...

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Ich würde es beim Transistor belassen. Oder auch den XMega nehmen.

von avr (Gast)


Lesenswert?

Wenn man von einem RS232-Treiber (z.B. Max232) noch
einen Rin-Rout freihat kann man diesen als Inverter verwenden.

avr

von Fourstroker B. (fourstroker)


Lesenswert?

Servus,

Bitweise invertieren kann nicht funktionieren, weil ja wenn 1 und 0 
Level vertauscht sind für den ATmega nur Datenmüll ankommt.

Am GPS Modul kann man dies leider auch nicht umschalten, wäre mir auch 
neu wenn das irgendeines könnte.

Wenn es also nicht per SW am Mega geht, dann werd ich bei der 
Transistorlösung bleiben müssen da meine Schaltung ja bereits für andere 
Zwecke aufgebaut ist und läuft.

Schade eigentlich :-(

von MWS (Gast)


Lesenswert?

Nimmst Du Bascom.

SW UART dort kann das standardmäßig.

von Fourstroker B. (fourstroker)


Lesenswert?

Ich benutze WinAVR.
Angeschlossen ist der Empfänger an der zweiten UART Schnittstelle des 
MEGA 128. Soviel ich weiß handelt es sich dabei um eine SW UART. Daher 
dachte ich eigentlich auch, dass man das irgendwo umschreiben kann.

von MWS (Gast)


Lesenswert?

> ich habe eine GPS Antenne an der zweiten RS232 Schnittstelle des ATmega128 > 
angeschlossen.
...
> Soviel ich weiß handelt es sich dabei um eine SW UART.

Du widersprichst Dir selbst.

Der ATM128 hat 2 HW UARTs, also ist eine Nutzung des zweiten HW UART 
recht wahrscheinlich. Da aber kein Code gezeigt wird, kann man nur 
raten.

Ein SW UART könnte auf invertierend programmiert werden.

von Fourstroker B. (fourstroker)


Lesenswert?

Ich benutze tatsächlich die zweite HW UART. Hab aber mal gehört, dass 
die zweite HW UART sich von der ersten unterscheidet und intern wie ne 
SW UART behandelt wird.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> Hab aber mal gehört, dass die zweite HW UART sich von
> der ersten unterscheidet und intern wie ne
> SW UART behandelt wird.

Wird sie nicht. Wie sollte das auch gehen?

Eine gute dem Hörensagen gegenüber zu bevorzugende Informationsquelle 
sind übrigens Datenblätter.

von Fourstroker B. (fourstroker)


Lesenswert?

Scho recht ;-)

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.