PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Merkwürdiges Verhalten beim XMega128A1



Kampi
02.05.2012, 19:52
Hallo Forum,

ich habe einen XMega128A1 und habe mit diesem eine UART-Kommunikation bewerkstelligt. Die Kommunikation funktioniert auch. Allerdings nur solange ich den PortC so konfiguriere:

PORTC.DIR = 0xEF;

Sobald ich schreibe:

PORTC.DIR = 0xFF;

funktioniert die Kommunikation nicht mehr. Der Restcode bleibt genau gleich. Aber sobald ich das umändere empfängt das Terminal nur Zeichenmüll.
Laut Datenblatt ist PinC.3 = Tx(0) bzw. 0x08. Aber ich verstehe nicht warum es nicht funktioniert sobald ich 0xFF schreibe, weil damit setze ich ja nur PinC.5 auf High und der hat mit dem UART ja nichts am Hut.
Weiß einer einen Rat auf dieses Problem?
Danke für die Antworten!

SprinterSB
02.05.2012, 23:35
> weil damit setze ich ja nur PinC.5 auf High

Es ist PinC.4

Kampi
03.05.2012, 00:19
> weil damit setze ich ja nur PinC.5 auf High

Es ist PinC.4

Uuups....vertan ;)
Aber das Problem bleibt dennoch :/

ePyx
04.05.2012, 11:26
USART Pins sind jeweils C2/C3 und C6/C7. Beim XMega ist es für die UART relevant welche Datenrichtung die Pins haben. Das könnte dein Phänomen erklären.

Kampi
04.05.2012, 12:29
Hi,

danke für die Antwort.
Ok das erklärt einiges. Ich habe dasselbe Programm gestern beim Mega32 getestet und da brauchte ich die Datenrichtung nicht definieren.

ePyx
04.05.2012, 19:51
Ja bei den ATTiny und ATMegas muss man das nicht tun. Bei den XMegas anscheinend aber schon. Ich glaube das ist auch in der AppNote zur UART erwähnt worden, aber sicher bin ich mir da nicht.

Kampi
05.05.2012, 00:11
Ich schau mir die AppNote die Tage nochmal an. Mal gucken ob ichs finde. Danke für den Hinweis.