- Messaggi: 4
- Ringraziamenti ricevuti 0
×
MSP430, Microcontrollori 16 bit Ultra Low Power
Problemi con il led blinking MSP430FR5739
10 Anni 6 Mesi fa #1
da mickappa
Problemi con il led blinking MSP430FR5739 è stato creato da mickappa
Buonasera a tutti scusate la banalità della domanda ma sono alla mia prima esperienza con i microcontrollori. Ho ricevuto in regalo un MSP430FR5739 della TI e per iniziare ho provato a realizzare i due esempi presenti in Code Composer Studio (versione 6.0.0). Una volta creato il progetto relativo al led blinking ed effettuato il debug (ottengo solo la warning #112-D statement is unreachable nell'ultima riga del main dove è scritto return 0;) ho lanciato lo script senza però ottenere nessun lampeggio. Non ottengo nulla nemmeno con l'altro esempio relativo ad hello world. Qualcuno ha per caso avuto il mio stesso problema o mi può aiutare? Vi ringrazio in anticipo.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- mickappa
- Autore della discussione
- New Member
Riduci
Di più
10 Anni 6 Mesi fa #2
da Mauro Laurenti
Risposta da Mauro Laurenti al topic Problemi con il led blinking MSP430FR5739
Ciao mickappa,
benvenuto nel Forum.
Curiosita', cosa fai per aver ricevuto in omaggio una board con FRAM!
Non ho istallato CCS 6.0, personalmente, dal momento che tale versione e' in fase beta ti consiglio di usare la versione 5.x.
Per l'esempio del blinking se posti il codice mi semplifichi la vita.
In ogni modo la warning che incontri e' tipica nel caso in cui il return 0 e' preceduto da un loop infinito.
Infatti da un loop infinito non si esce mai, per cui tutto quello che lo segue non e' raggiungibile.
Quel tipo di warning non preclude pero' il normale funzionamento, per cui se le cose non funzionano, il problema deve essere un altro.
In ogni modo dopo la programmazione hai premuto il tasto run? (triangolo verde)
Se vedi il corso sugli MSP430 dovrebbe tornare tutto piu' chiaro. L'uso di CCS e' indipendednte dal fatto che stai usando MSP430G2xx o MSP430FR5xxx .
Saluti,
Mauro
benvenuto nel Forum.
Curiosita', cosa fai per aver ricevuto in omaggio una board con FRAM!
Non ho istallato CCS 6.0, personalmente, dal momento che tale versione e' in fase beta ti consiglio di usare la versione 5.x.
Per l'esempio del blinking se posti il codice mi semplifichi la vita.
In ogni modo la warning che incontri e' tipica nel caso in cui il return 0 e' preceduto da un loop infinito.
Infatti da un loop infinito non si esce mai, per cui tutto quello che lo segue non e' raggiungibile.
Quel tipo di warning non preclude pero' il normale funzionamento, per cui se le cose non funzionano, il problema deve essere un altro.
In ogni modo dopo la programmazione hai premuto il tasto run? (triangolo verde)
Se vedi il corso sugli MSP430 dovrebbe tornare tutto piu' chiaro. L'uso di CCS e' indipendednte dal fatto che stai usando MSP430G2xx o MSP430FR5xxx .
Saluti,
Mauro
Ringraziano per il messaggio: mickappa
Si prega Accedi o Crea un account a partecipare alla conversazione.
10 Anni 6 Mesi fa #3
da mickappa
Risposta da mickappa al topic Problemi con il led blinking MSP430FR5739
Innanzitutto grazie a te Mauro per avermi accettato nel forum, per la risposta e per il corso sugli msp430 che sto seguendo con attenzione.
Io comunque mi sono appena laureato in ingegneria elettronica (laurea triennale) e la board mi è stata regalata da un amico di famiglia che lavora come programmatore di micro per un'azienda locale (lui l'aveva ricevuta come campione di prova ad un seminario della TI e mi ha detto che l'aveva provata ed era perfettamente funzionante).
Rispondendo in ordine alle domande avevo precedentemente installato anche la versione 5.5 ottenendo lo stesso risultato, ed inoltre si una volta effettuato il debug ho sempre premuto run (F8).
Il codice relativo al led blinking è il seguente:
#include <msp430.h>
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
P1DIR |= 0x01; // Set P1.0 to output direction
for(; {
volatile unsigned int i; // volatile to prevent optimization
P1OUT ^= 0x01; // Toggle P1.0 using exclusive-OR
i = 10000; // SW Delay
do i--;
while(i != 0);
}
return 0;
}
Il codice relativo ad hello world è invece il seguente:
#include <stdio.h>
#include <msp430.h>
/*
* hello.c
*/
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
printf("Hello World!\n");
return 0;
}
Seguendo il tuo corso ho anche creato due nuovi progetti utilizzando i codici proposti per hello world e per far accendere il led premendo il pulsante s2: Per hello world mi da addirittura errore quando vado a fare il debug del codice relativamente alla variabile i posta esternamente al ciclo while, se la pongo internamente al ciclo invece il codice viene compilato ma quando lo lancio non accade nulla.
Per quanto riguarda l'accensione del led in seguito alla pressione del tasto s2 invece il codice viene compilato correttamente ma purtroppo,anche qui, una volta premuto run non succede nulla.
Spero di averti aiutato a capire cosa potrebbe essere visto che io non ne ho proprio idea, adesso ho scaricato anche IAR per vedere se anche con questo ho gli stessi problemi. Ti ringrazio ancora per la disponibilità.
Io comunque mi sono appena laureato in ingegneria elettronica (laurea triennale) e la board mi è stata regalata da un amico di famiglia che lavora come programmatore di micro per un'azienda locale (lui l'aveva ricevuta come campione di prova ad un seminario della TI e mi ha detto che l'aveva provata ed era perfettamente funzionante).
Rispondendo in ordine alle domande avevo precedentemente installato anche la versione 5.5 ottenendo lo stesso risultato, ed inoltre si una volta effettuato il debug ho sempre premuto run (F8).
Il codice relativo al led blinking è il seguente:
#include <msp430.h>
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
P1DIR |= 0x01; // Set P1.0 to output direction
for(; {
volatile unsigned int i; // volatile to prevent optimization
P1OUT ^= 0x01; // Toggle P1.0 using exclusive-OR
i = 10000; // SW Delay
do i--;
while(i != 0);
}
return 0;
}
Il codice relativo ad hello world è invece il seguente:
#include <stdio.h>
#include <msp430.h>
/*
* hello.c
*/
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
printf("Hello World!\n");
return 0;
}
Seguendo il tuo corso ho anche creato due nuovi progetti utilizzando i codici proposti per hello world e per far accendere il led premendo il pulsante s2: Per hello world mi da addirittura errore quando vado a fare il debug del codice relativamente alla variabile i posta esternamente al ciclo while, se la pongo internamente al ciclo invece il codice viene compilato ma quando lo lancio non accade nulla.
Per quanto riguarda l'accensione del led in seguito alla pressione del tasto s2 invece il codice viene compilato correttamente ma purtroppo,anche qui, una volta premuto run non succede nulla.
Spero di averti aiutato a capire cosa potrebbe essere visto che io non ne ho proprio idea, adesso ho scaricato anche IAR per vedere se anche con questo ho gli stessi problemi. Ti ringrazio ancora per la disponibilità.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- mickappa
- Autore della discussione
- New Member
Riduci
Di più
- Messaggi: 4
- Ringraziamenti ricevuti 0
10 Anni 6 Mesi fa #4
da Mauro Laurenti
Risposta da Mauro Laurenti al topic Problemi con il led blinking MSP430FR5739
Ciao,
il primo programma direi che e' corretto.
Il sospetto sul return 0 era coretto.
hai un ciclo infinito prima.
Puoi fare uno screenshot di CCS dopo la compilazione?
Il programmatore viene riconosciuto correttamente?
Dopo la programmazione viene fornito il messaggio di quanti byte sono stati scritti? (nella finestra dei messaggi)
Saluti,
Mauro
il primo programma direi che e' corretto.
Il sospetto sul return 0 era coretto.
hai un ciclo infinito prima.
Puoi fare uno screenshot di CCS dopo la compilazione?
Il programmatore viene riconosciuto correttamente?
Dopo la programmazione viene fornito il messaggio di quanti byte sono stati scritti? (nella finestra dei messaggi)
Saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
10 Anni 6 Mesi fa #5
da mickappa
Risposta da mickappa al topic Problemi con il led blinking MSP430FR5739
Mauro ti allego lo screenshot.
Per quanto riguarda il compilatore io ho scaricato tutti i driver direttamente dal sito della TI e per programmare utilizzo un cavo mini usb(il led PWR si accende appena collego il cavo alla board).
nella finestra dei messaggi risultano scritti nella memoria: 208 (code) and 66 (data) bytes.
Ti ringrazio
Per quanto riguarda il compilatore io ho scaricato tutti i driver direttamente dal sito della TI e per programmare utilizzo un cavo mini usb(il led PWR si accende appena collego il cavo alla board).
nella finestra dei messaggi risultano scritti nella memoria: 208 (code) and 66 (data) bytes.
Ti ringrazio
Si prega Accedi o Crea un account a partecipare alla conversazione.
- mickappa
- Autore della discussione
- New Member
Riduci
Di più
- Messaggi: 4
- Ringraziamenti ricevuti 0
Moderatori: Mauro Laurenti, Matteo Garia
Registrati al sito
Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.