Hallo! Die MSP Programmierung ist ziemliches Neuland für mich und daher habe ich auch arge Probleme... Mein momentanes ziel ist dem MSP430F147 Daten aus dem UTXD1 Port zu locken. Die Daten gehen dann in einen FT232BM. Im Moment wird nix gesendet, und wenn ich das richtig verstanden habe, sollte das ja der Fall sein, sobald man etwas in den TXBUF1 schreibt. (Benutzte externen quarz 4Mhz) Hier meine Initialisation: void init_uart() { U1CTL |= SWRST; // USART Software Reset UCTL1 |= CHAR; // 8-bit character URCTL1 = 0; // reset all possible error flags UTCTL1 |= SSEL1; // UCLK = SMCLK UBR01 = 0xA0; // 4Mhz divided by 0x1A0 --> baud 9600 UBR11 = 0x01; // UMCTL1 = 0x00; // clear Modulation ME2 |= UTXE1 + URXE1; // Enable USART1 TXD/RXD UCTL1 &= ~SWRST; // Initialize USART state machine } void init_clock() { BCSCTL1 &= XT2OFF; BCSCTL1 |= XTS + RSEL1; BCSCTL2 |= SELM_2 + SELS; } Habe auch Probleme beim empfangen von Daten: Die Daten kommen (sehe ich mit Oszilloskop) aber der TXBUF1 bleibt mit altem Speichermüll gefüllt. Ich hoffe so sehr jemand von euch kann mir helfen!!
hast du die ausgehenden daten auch auf dem oszi kontrolliert? vor allem die frequenz bzw. baudrate? UBR01 = 0xA0; // 4Mhz divided by 0x1A0 --> baud 9600 im kommentar steht "divided by 0x1A0, was auch zu 9600baud fuehren wuerde, jedoch im code steht 0xA0, was ein teiler von 160 ist, und auf eine baudrate von 25000 fuehrt mfg, thomas
Der Kommentar ist eine zeile zu früh, danach kommt ja noch: UBR11 = 0x01; und UBR berechnet sich ja aus UBR11 + UBR01 = 0x01 + 0xA0 = 0x1A0 oder seh ich das falsch?
ups.. stimmt. hab zu schnell geantwortet. du hast recht. die frequenz die du mit dem oszi misst stimmt aber, oder? wie hast du denn dein clock system konfiguriert? ist schon wieder laenger her, dass ich mit dem msp gearbeitet hab. mfg, thomas
Gino, hast Du die Port-Pins für die USART1 aktiviert? P3SEL |= 0xC0; // P3.6,7 = USART1 TXD/RXD Ciao, Yagan
und wie ließt du den receiver aus?? pollst du ihn (zyklische abfrage) oder löst du nen interrupt aus???
Danke für die vielen Antworten! Yagan hat die Lösung gefunden...ist mir fast schon peinlich! Ich erzähl am besten niemandem wie lang ich schon an der Fehlersuche saß...wegen ner grundlenden Sache...naja.. Danke euch!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.