× MSP430, Microcontrollori 16 bit Ultra Low Power

MSP430G2553 launcpad1.5

8 Anni 1 Mese fa #1 da Rene
MSP430G2553 launcpad1.5 è stato creato da Rene
Ho un problema con un launcpad1.5 che monta un MSP430G2553 :

Ho caricato un semplice programma che tramite seriale accende/spegne un led sulla scheda digitando in "Serial Monitor" 1 e 2 e stampa sempre in "Serial Monitor" il carattere ASCII digitato, in formato esadecimale, ottale, binario e decimale.
La cosa funziona fin tanto che non stacco il launchpad dal pc .
Alla successiva accensione la comunicazione seriale non si ripristina .
( per la precisione i jumper Tx Rx sono collegati in HW UART )
Pensando a un problema di driver l'ho aggiornato ma senza risolvere .

Con un TIVA TMC4C1294XL non ho alcun problema , dopo aver caricato il programma posso staccare la scheda dalla porta USB quanto voglio , alla riaccensione posso comunicare con "Serial Monitor" perfettamente , il programma funziona perfettamente .

Che sia la mia scheda difettosa ?
O non ho risolto il problema driver ?

Qualcuno può aiutarmi .
Grazie

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Rene
  • New Member
  • New Member
Di più
8 Anni 1 Mese fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic MSP430G2553 launcpad1.5
Controlla se quando attacchi la scheda viene creata la porta COM virtuale.

Il software fa uso della UART HW o Software?

Se quando fai il debug funziona direi che fai uso della UART software, ma dici che i Jumper sono posizionati su UART HW.
I conti non mi tornano.

Puoi postare il codice?

Fai uso del DCO o del cristallo da 32KHz come riferimento clock per il modulo UART?

Saluti,

Mauro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
8 Anni 1 Mese fa #3 da Rene
Risposta da Rene al topic MSP430G2553 launcpad1.5
Grazie Mauro
Non immaginavo che fossa così complessa la cosa :blink: .


const unsigned int LED_PIN = RED_LED;
const unsigned int BAUD_RATE = 9600;
void setup() {
pinMode(LED_PIN, OUTPUT);
Serial.begin(BAUD_RATE);
}

void loop() {
if (Serial.available() > 0) {

int command = Serial.read();
if (command == '1') {

digitalWrite(LED_PIN, HIGH);
Serial.println("LED on");
}

else if (command == '2') {

digitalWrite(LED_PIN, LOW);
Serial.println("LED off");
}

else {
Serial.print("Unknown command: ");
Serial.println(command);
Serial.println(command, DEC);
Serial.println(command, HEX);
Serial.println(command, BIN);
Serial.write(command);

}
}
}

come vedi il prog. è semplicissimo lo scrivo in Energia e poi lo carico .

Subito dopo aver caricato il prog. la cosa funziona e questo mi fa pensare che la com3 (al lunchPad viene assegato la com3) sia collegata e funzionante . Poi se scollego il lunchPad e lo ricollego non funziona più .

Uso la DCO il cristallo da 32KHz un è montato

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Rene
  • New Member
  • New Member
Di più
8 Anni 1 Mese fa #4 da Mauro Laurenti
Risposta da Mauro Laurenti al topic MSP430G2553 launcpad1.5
Ok,

se fai uso dell'ambiente di sviluppo Energia, fai uso di un Hardware UART.
Puoi vedere i dettagli nel seguente articolo .

Una volta scollegato l'hardware, chiudi energia.
Collega l'hardware e verifica se viene creata la porta virtuale.

Come terminal prova con RS232 Terminal .
All'apertura ti mostra le porte virtuali disponibili.

Saluti,

Mauro
Ringraziano per il messaggio: Rene

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
8 Anni 1 Mese fa #5 da Rene
Risposta da Rene al topic MSP430G2553 launcpad1.5
Dalle ultime prove ho notato che collegando e scollegando il lunchPad alla USB ,dopo alcuni tentativi riesco a collegarmi alla com4 .


Questo è l'errore che l'ambiente di sviluppo Energia mi riporta quando la seriale non si collega .




Error inside Serial.serialEvent()
java.io.IOException: Bad file descriptor in nativeavailable
at gnu.io.RXTXPort.nativeavailable(Native Method)
at gnu.io.RXTXPort$SerialInputStream.available(RXTXPort.java:1532)
at processing.app.Serial.serialEvent(Serial.java:232)
at gnu.io.RXTXPort.sendEvent(RXTXPort.java:732)
at gnu.io.RXTXPort.eventLoop(Native Method)
at gnu.io.RXTXPort$MonitorThread.run(RXTXPort.java:1575)

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Rene
  • New Member
  • New Member
Di più
Moderatori: Mauro LaurentiMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login