Forum: Mikrocontroller und Digitale Elektronik ATMega64 USART defekt?


von Alexander Höller (Gast)


Lesenswert?

Hallo,

beide USART meines ATMega64 verhalten sich sehr merkwürdig:
meist dauert es nach dem Starten einige Zeit (im Minuten-Bereich) bis
am USART auch etwa 3,3V als High ausgegeben werden ... so als würde es
sich langsam "aufladen" müssen

Und außerdme wird dann nur das untere Nibbel (unteren 4 Bit) richtig
übertragen ... das obere Nibble "schwnakt" immer ... woran kann das
liegen?
Hatte genau die selben Erfahrungen mit einem anderen ATmega64 vorher
gemacht .. den dann ausgelötet (SMD löten - juhuuu ;p) .. und nen neuen
eingelötet! Und der verhielt sich von anfang an gleich so!
Der erste funktionierte ab und zu ... dann wieder nicht!

Die Leitungen der RxD udn TxD sind nicht sonderlich kurz gehalten -
aber das kann doch nocht die merkwürdige "Spannungsaufladung" am
Anfang erklären!

Ich hab leider gar keine Erklärung dafür ... falls es wichtig sein
sollte: beide wurden in der 25. Kalenderwoche 2004 erzeugt.

mit freundlichen Grüßen,
aleX

von Jens123 (Gast)


Lesenswert?

villeicht spinnt auch dein pegelwandler
kontrollier den mal

von Alexander Höller (Gast)


Lesenswert?

Sitz' eh grad @ School im Labor und versuch den Fehler zu finden:

Jetzt gibt die USART konstant 3,3V aus ... vorher wurde sie auf 3,3v
gezogen wenn ich den Pegelwandeler angeschlossen habe

Aber am Pegelwandler sollt's nicht liegen, hab vorher nen
Loop-Back-Test  (RxD udn TxD vom Pegelwandler verbunden) ... das
funktionierte einwandfrei!

Das Board ist auch ein "professional" geäztes Board .. also kein
fliegender Aufbau... vorallem abgesehen von den beiden USARTs und der
SPI funktioniert alles einwandfrei!!!


mit freundlichen Grüßen,
Alexander

von Alexander Höller (Gast)


Lesenswert?

Hallo,

derzeit ist es so:
USART 0 funktioniert gar nicht (wenn ich den Pegelwandleranschleiße
messe ich 3,3v ohne 0V)

USRAT 1 sendet zwar ... übertägt das obere Nibbel aber falsch. z.B.
statt 0x12 kommt 0x22 oder 0x32

Den Fehler kann ich mir einfach überhaupt nicht erklären !!

mit freundlichen Grüßen,
aleX

von Christof Krüger (Gast)


Lesenswert?

Dass das obere Nibble schwankt hast du nachgemessen (Oszi bzw. LA) oder
siehst du das an der Terminal-Software? Das klingt so ein wenig nach
Timing problemen (nach 4 Bits laufen die beiden Kommunikationspartner
"out of sync"). Was für einen Takt benutzt du und welche
Übertragungsgeschwindigkeit?

von Jens123 (Gast)


Lesenswert?

was mich wundert ist das mit den 3,3V
wieso nicht 5V bist du dir sicher, dass das uart richtig angesprochen
wird?? und du am terminal die gleichen sinetellungen hast

PS: der hyperterminal taucht nix =) nim den von Br@y

von Alexander Höller (Gast)


Lesenswert?

@Christof:
Verwend einen "USART-freundlichen" Takt von 7,3... MHz udn hab das
ganze mit 9600 und sogar nur 600 baud probiert!

@Jens:
Weil ich den Controller mit 3,3V versorge ;p
Verwend eh den von Br@y .. der ist echt spitze!


Ein Prof. meinte, dass es ev. an einer "unsauberen"
Versorgungsspannung liegen könnte?!??!

von Alexander Höller (Gast)


Lesenswert?

Guten Morgeeeen!

Problem gelöst:
USART1: war tatsächlich ein Timeing-Problem ... hab mich bei der
Baudrate vertippt und hab's ewig nicht gemerkt !

USART0: war eine kalte Lötstelle - also ein rein mech. Problem!


Vielen Dank für eine Ratschläge, Ideen, etc...

mit freundlichen Grüßen,
aleX

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.