Forum: Mikrocontroller und Digitale Elektronik Wer hat SW UART für MSP430?


von Timo P. (latissimo)


Lesenswert?

Hallo!

Gibt es bereits eine Software-UART für MSP430er?

: Verschoben durch User
von Jörg S. (joerg-s)


Lesenswert?

Gibt's bei TI :)

Z.B.
msp430x20x3_ta_uart2400.c
aus ZIP File:
http://www.ti.com/lit/zip/slac080

von Patrick (Gast)


Angehängte Dateien:

Lesenswert?

Du meinst z.B. sowas?

von Patrick (Gast)


Angehängte Dateien:

Lesenswert?

Und das Headerfile dazu.

von Timo P. (latissimo)


Lesenswert?

OK DANKE Leute!!!

von Christian R. (supachris)


Lesenswert?

Patrick schrieb:
> Du meinst z.B. sowas?

Das ist die Hardware UART, die er ja offensichtlich nicht nutzen kann. 
Für "Software" UART gibts am MSP430 den Timer A, da kann man mit 
Baudratenquarz eine sehr schicke Lösung bauen. Leider nur Halbduplex, 
aber das stört selten. Ich betreibe die zuverlässig mit 57600 Baud aus 
einem 3,6864MHz Quarz.

von Timo P. (latissimo)


Lesenswert?

@christian:

wie ich höre, hast du den timer a genutzt. Ist der Code auch von den 
TI-Sample-Codes?

von Christian R. (supachris)


Lesenswert?

Ja, ist bei TI alles zu finden. Timer A Software UART. Klappt wunderbar. 
Ich hab sie halt nur an mein Programm angepasst (Benachrichtigung des 
Hauptprogrammes über globales Flag-Register aus dem Interrupt heraus).

http://focus.ti.com/general/docs/techdocsabstract.tsp?abstractName=slaa307a

Das schöne ist: Mit geschickter Verschaltung von RST und TST kann man 
den MSP430 gleich über den BSL über die gleiche serielle Schnittstelle 
neu programmieren.

von stephan (Gast)


Lesenswert?

Hallo nochmal!
Für meinen Controller gibt es keine SW-UART von TI :(
ist der msp430f22x4

Werde auf kompatibilität hoffen oder ggf. den code für meinen Controller 
portieren....

von Timo P. (latissimo)


Lesenswert?


von Christian R. (supachris)


Lesenswert?

stephan schrieb:
> Hallo nochmal!
> Für meinen Controller gibt es keine SW-UART von TI :(
> ist der msp430f22x4
>
> Werde auf kompatibilität hoffen oder ggf. den code für meinen Controller
> portieren....

Die "Software" UART mit dem Timer A geht für alle MSP430 Controller zu 
benutzen, da alle den Timer A integriert haben. Das ist dann zwar eher 
eine Timer-UART als Software-UART, tut aber einwandfrei ihren Dienst.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Der Herr ist bereits dabei, das Problem zu lösen, jedenfalls versucht er 
das im Thread mit dem äußerst vielsagenden Titel 
"compilerfehlermeldung".

von somna (Gast)


Lesenswert?

Ich habe leider auch ein kleines Problem mit den verschiedenen MSP430 
Mikrocontrollern.

Ich benutze den MSP430FG4250 und da dieser auch den Timer A hat wollte 
ich das Beispiel benutzen. Leider haben sich manche Timer Variablen 
geändert im Header und ich tue mich schwer daran die Äquivalenten zu 
finden.
Die Variablen/Konstanten sind:

BCSCTL1 == ist glaube ich: BTCTL
DIVA_3 == ist glaube ich: BT_fCLK2_DIV8
DCOCTL == habe SCFQCTL gefunden, ist aber glaube ich falsch
XT2OFF == keine Ahnung


sind meine Annahmen diesbezüglich richtig und kann mir jemand bei den 
fehlenden helfen? Oder liege ich etwa komplett daneben mit meinen 
Vermutungen?

Vielen Dank im Voraus

von Christian R. (supachris)


Lesenswert?

Das sind alles Register dir mit dem Timer A nicht das gerigste zu tun 
haben. Schau in die Demos zu dem Prozessor, wie das Taktsystem dort 
kofiguriert wird. Die Timer A UART läuft davon unabhängig. Dass man für 
den Timer Clock eine passende Quelle haben muss, ist natürlich klar.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Was Du da beschreibst, hat nichts mit Timer_A zu tun, sondern ist die 
veränderte Takterzeugung. Neuere MSP430-Varianten haben ein erheblich 
leistungsfähigeres Modul zu Takterzeugung; sieh im passenden User's 
Guide nach, wie das zu initialisieren ist und besorg Dir die 
Codebeispiele von TI, die zu Deinem Controller passen.

Timer_A selbst bleibt hingegen unverändert, das betrifft auch die 
zugehörigen Registernamen.

von somna (Gast)


Lesenswert?

Danke erst einmal vielmals für die Antworten. Ich seh schon, wer keine 
Ahnung hat stellt noch dümmere Fragen, sorry dafür. Ich werde mich jetzt 
erst einmal der Lektüre zur Takterzeugung widmen (hätte ich vllcht. auch 
schon vorher machen sollen)
Falls ich danach noch Fragen habe (hoffentlich sinnvollere) dann melde 
ich mich wieder.

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.