Forum: Mikrocontroller und Digitale Elektronik Spannung auf TX Leitung zur Unzeit


von ArduStemmi (Gast)


Lesenswert?

Ich habe in einem etwas komplexeren Programm zu debugging Zwecken über 
uart und USB ein Terminal angeschlossen.

Ich benutze die Bibliothek von Peter Fleury. Leider kommt seit geraumer 
Zeit nur noch Unfug am Computer an! Heute hab ich mir mal die Mühe 
gemacht, der Sache auf den Grund zu gehen. Ergebnis: sofort nach dem 
Initialisieren der uart Schnittstelle liegt auf der TX Leitung eine 
Spannung an! Schließe ich dann noch den USB Adapter an, liegt auch auf 
der RX Leitung eine Spannung an.

Ich habe mit einem einfachen Programm daraufhin das Verhalten der PINs 
getestet, (Ausgang, mit/ohne Pull UP, Eingang), hat alles 
erwartungsgemäß funktioniert. Auch uart geht prinzipiell. Es kommt eben 
nur großer Blödsinn am Computer an. Und zwar jedes mal anderer Blödsinn, 
was Innhalt und Länge der Botschaft angeht!

Kennt dieses Verhalten jemand? Ist vielleicht der Atmega328p im Eimer?

von H.Joachim S. (crazyhorse)


Lesenswert?

Klingt nach einem Baudratenproblem.

von (prx) A. K. (prx)


Lesenswert?

ArduStemmi schrieb:
> Initialisieren der uart Schnittstelle liegt auf der TX Leitung eine
> Spannung an! Schließe ich dann noch den USB Adapter an, liegt auch auf
> der RX Leitung eine Spannung an.

Wär schlimm, wenn es nicht so wäre. Ruhezustand von UARTs ist "high".

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


Lesenswert?

ArduStemmi schrieb:
> Ergebnis: sofort nach dem Initialisieren der uart Schnittstelle liegt
> auf der TX Leitung eine Spannung an!
Das ist normal. Der Ruhepegel der seriellen Schnitte ist 5V. Vermutlich 
liegt dein Problem woanders...

von H.Joachim S. (crazyhorse)


Lesenswert?

A. K. schrieb:
> Ruhezustand von UARTs ist "high".

meist ja, aber nicht immer. Beim M16 z.B. kann man die Pegel 
invertieren.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

H.Joachim Seifert schrieb:
> meist ja, aber nicht immer. Beim M16 z.B. kann man die Pegel
> invertieren.

Ist aber nicht sonderlich schlau, wenn man einen USB-Seriell-Adapter 
oder einen normalen RS232-Treiber anschließen möchte.

von H.Joachim S. (crazyhorse)


Lesenswert?

Natürlich nicht. Und das ist ja hier auch nicht das Problem. Die meisten 
MCs können es eh nicht.

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


Lesenswert?

Der uC ist exakt definiert. Es ist einer mit "high" als Ruhepegel.
Denn ArduStemmi schrieb:
> der Atmega328p

von M. P. (phpmysqlfreak)


Lesenswert?

ArduStemmi schrieb:
> Kennt dieses Verhalten jemand? Ist vielleicht der Atmega328p im Eimer?

Wie bereits erwähnt: Baudraten-Problem ist möglich. Dazu:
Welche Taktquelle speist den AVR? Wie sieht die Einstellung des 
Baudraten-Registers aus?

von ArduStemmi (Gast)


Lesenswert?

Ich habe den Hinweis mit der Baudrate aufgenommen und mal ein bisschen 
probiert.

Wenn ich die Baudrate im Terminal auf 4800 stelle funktioniert es. 
Obwohl ich im µC 9600 eingestellt habe!

von Peter II (Gast)


Lesenswert?

ArduStemmi schrieb:
> Wenn ich die Baudrate im Terminal auf 4800 stelle funktioniert es.
> Obwohl ich im µC 9600 eingestellt habe!

dann wird er µC wohl nicht mit dem Takt laufen den du erwartest.

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.