Forum: Mikrocontroller und Digitale Elektronik Abschlussarbeit MSP430


von Florian (Gast)


Lesenswert?

Hallo,

für meine Technikerarbeit möchte ich mit einem MSP430 (MSP TS430FG439) 
eine Verbindung über UART aufzubauen.

Wer kann mir dafür ein Beispielprogramm senden?

Gruß
Florian

von Horst (Gast)


Lesenswert?

Guck dir die Code-Examples an

von Manfred (Gast)


Lesenswert?

Hallo

Ich versuche schon seid ein paar Tagen eine Verbindung via RS232 (UART) 
aufzubauen.Ich benutze das MSP-TS-430PN80 von TI und den MSP430FG439.

Ich habe im Netz einige Beispiele gefunden , nur leider habe ich keines 
davon zum laufen gebracht.Alles was ich hinbekommen ist das wenn ich das 
Board mit TX an mein Speicheroszilloskop hänge der TX Ausgang von 0 auf 
3.3V springt und dort bleibt.Daten werden nicht gesendet , nur der 
Ausgang auf High (3.3 V ) gezogen.

Hat jemand von euch einen funktionierenden Code der einfach ein " Hallo 
Welt " ausgibt ? Ich bin für jeden Link/Tip/Code sehr dankbar den ich 
komme einfach nicht weiter.

Hier ist als Beispiel einer der Codes den ich ausprobiert habe.
1
void main(void)
2
{
3
    
4
   
5
    P2DIR |= BIT4;
6
    P2SEL |= BIT4;
7
    UCTL0 &= ~SWRST;
8
    ME1 |= UTXE0;                           // Enable USART1 TXD
9
    UCTL0 |= CHAR;                          // 8-bit char, SWRST=1
10
    UTCTL0 |= SSEL1;                        // UCLK = SMCLK
11
    UBR00 = 52;                             // 115200 from 6.02MHz = 52.33
12
    UBR10 = 0x00;
13
    UMCTL0 = 0x45;                          // Modulation = 0.375
14
    UCTL0 &= ~SWRST;                        // Initialise USART
15
    TXBUF0 = 44;
16
}

mfg

Manfred

von Johnny B. (johnnyb)


Lesenswert?

Sorry, habe schon länger nicht mehr mit dem MSP430 gearbeitet, aber von 
TI gibts für alle Derivate diverse Codebeispiele zum runterladen auf 
ihrer Homepage.
http://www.ti.com/lit/zip/slac047

Vielleicht mal die Clocks kontrollieren und bevor Du was senden willst, 
auf den UART warten:
1
while (!(IFG1 & UTXIFG0));                // USART0 TX buffer ready?

Nachtrag:
Nicht vergessen den Watchdog auszuschalten, wenn Du den nicht 
befriedigen willst:
1
WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT

: Bearbeitet durch User
von F. H. (Gast)


Lesenswert?

Bist Du jetzt Manfred oder Florian?

Beitrag "Abschlussarbeit MSP430"

Deswegen ein neuer Thread?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Da beide Threads von sehr nah "verwandten" Leuten erstellt wurden, halte 
ich eine Zusammenfassung für sinnvoll.

von Manfred (Gast)


Lesenswert?

Hallo

Die Zusammenfassung ist super ! Arbeiten beide am selben Problem , nur 
die Absprache wer was postet klappt noch nicht so ganz :-)
Danke für den Link zu den Beispiel-Codes.

Der Code funktioniert nun so wie er soll.
In dem Beispiel wird einfach das was ich an den MSP sende direkt als 
Echo zurück gesendet.
Wenn ich es richtig verstanden habe wird ein Interrupt ausgelöst sobald 
ich etwas an den MSP sende.
Wie kann ich nun ein einfaches "Hello World"an meinen PC senden ohne das 
ich etwas an den MSP senden muss der dann wiederum den Interrupt für das 
senden auslöst.

von Raphael (Gast)


Lesenswert?

>aber von TI gibts für alle Derivate diverse Codebeispiele
>zum runterladen auf ihrer Homepage.

Die TI-Beispiele sind mehr für den Industrie-Profi gedacht, der 
möglichst effizienten und vor allem stromsparenden Code unter Ausnutzung 
von Interrupts für den MSP430 schreiben will, als für den ungeübten 
Hobby-Bastler. Für diesen ist der Arduino Ableger Energia für MSP430 
empfehlenswert.

http://energia.nu/

von Manfred (Gast)


Lesenswert?

Da hast du wohl Recht ...
Es muss doch eine Möglichkeit geben einfach einen String an den PC zu 
senden ohne den Echo bzw RX-Interrupt.

von Christian R. (supachris)


Lesenswert?

Klar, du musst doch nur das Stück Code aus dem Echo Beispiel verwenden, 
was sendet. Ein bisschen selber Nachdenken und probieren schadet nicht. 
Vorher natürlich das UUART Modul entsprechend einstellen (Baudrate usw.)

von Code (Gast)


Lesenswert?


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.