Forum: Mikrocontroller und Digitale Elektronik MSP430: UART läuft nicht ACLK


von Rolf F. (Gast)


Lesenswert?

Zum Debuggen habe ich versucht den UART1 statt mit 1,5 MBaud und dem
Takt aus SMCLK bei 9600 Baud mit Takt aus ACLK zu verwenden, aber das
funktioniert nicht, obwohl ACLK vorhanden ist (auch am Pin 20 gemessen)
und ich die Werte aus dem Manual eingetragen habe:

U1TCTL = 0x10;  // transmitter source select = ACLK
UBR01 = 0x03;
UBR11 = 0x00;
UMCTL1 = 0x4a;

Am Interrupt oder ME1/2 liegt es nicht, da die nicht verändert wurden.
An den 9600 Baud liegt es nicht, denn mit den 8 MHz SMCLK funktioniert
es.
Woran könnte es sonst noch liegen?

von Rolf F. (Gast)


Lesenswert?

Inzwischen habe ich die Ursache: Es ist ein Hardware-Bug, beschrieben im
Errata slaz018a.pdf (Bug US14).
Nebenbei funktioniert der UART auch nicht bei 2400 Baud; da bleibt die
Software sogar hängen wenn sie den Zustand des Ausgangspuffers abfragt
mit

while (not(U1TCTL bitand TXEPT)); // wait for empty U1TXBUF

oder

while (not(IFG2 bitand UTXIFG1));  // wait for empty U1TXBUF
.

Hätte mein Fallschirm (und die Reserve) so viele Bugs wie die
Mikrocontroller, dann wäre ich schon seit Jahren tot ...

Naja, bei 1,5 MBaud funktioniert der UART ja und mit aufgelötetem
Reset-Taster sind die Evaluationboards ja halbwegs brauchbar.

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.