- Messaggi: 4
- Ringraziamenti ricevuti 0
×
MSP430, Microcontrollori 16 bit Ultra Low Power
Iniziare a programmare con MSP430 LaunchPad
12 Anni 6 Mesi fa - 12 Anni 6 Mesi fa #1
da falcon2600
Iniziare a programmare con MSP430 LaunchPad è stato creato da falcon2600
Sono un programmatore web junior (PHP, Javascript) e me la cavo con la programmazione procedurale.
Conosco tutto il C (almeno teoricamente).
La mia passione mi spinge ad andare oltre il PC, ma le mie conoscenze di Elettronica sono molto basilari.
Ho un Arduino Uno con Ethernet Shield, sono in attesa di ricevere Raspberry Pi, e sto attendendo anche 3 kit MSP430 LaunchPad (spero Rev. 1.5).
Guardando alcuni codici di programmazione (input/output) di Arduino mi sembrano "abbastanza" comprensibili, quelli di Raspberry Pi (programmazione GPIO) un po' meno, mentre quelli di MSP430 LaunchPad completamente "incomprensibili".
Mi sto perdendo nella documentazione tecnica dei vari wiki, pdf, ecc.
Mi è stato detto che per mettere in comunicazione il PC con le entrate (input) e uscite (output) di MSP430 LaunchPad via USB, dovrei guardare gli esempi UART... che non capisco.
Non comprendo neanche come leggere lo stato di un'entrata (input) "acceso/spento" o come rimanere in "ascolto" di un suo cambiamento di stato.
Stessa cosa vale per le uscite (output): come poterne attivare una o disattivarne un'altra già attiva?
Non capisco i riferimenti alle stesse.
Insomma, vi chiedo cortesememte dei riferimenti di documentazione per poter capire come eseguire le operazioni sopra menzionate su MSP430 LaunchPad.
Grazie.
Conosco tutto il C (almeno teoricamente).
La mia passione mi spinge ad andare oltre il PC, ma le mie conoscenze di Elettronica sono molto basilari.
Ho un Arduino Uno con Ethernet Shield, sono in attesa di ricevere Raspberry Pi, e sto attendendo anche 3 kit MSP430 LaunchPad (spero Rev. 1.5).
Guardando alcuni codici di programmazione (input/output) di Arduino mi sembrano "abbastanza" comprensibili, quelli di Raspberry Pi (programmazione GPIO) un po' meno, mentre quelli di MSP430 LaunchPad completamente "incomprensibili".
Mi sto perdendo nella documentazione tecnica dei vari wiki, pdf, ecc.
Mi è stato detto che per mettere in comunicazione il PC con le entrate (input) e uscite (output) di MSP430 LaunchPad via USB, dovrei guardare gli esempi UART... che non capisco.
Non comprendo neanche come leggere lo stato di un'entrata (input) "acceso/spento" o come rimanere in "ascolto" di un suo cambiamento di stato.
Stessa cosa vale per le uscite (output): come poterne attivare una o disattivarne un'altra già attiva?
Non capisco i riferimenti alle stesse.
Insomma, vi chiedo cortesememte dei riferimenti di documentazione per poter capire come eseguire le operazioni sopra menzionate su MSP430 LaunchPad.
Grazie.
Ultima Modifica 12 Anni 6 Mesi fa da falcon2600.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- falcon2600
- Autore della discussione
- New Member
Riduci
Di più
12 Anni 6 Mesi fa #2
da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: Iniziare a programmare con MSP430 LaunchPad
Ciao,
vedo che ti sta rifornendo di schede di sviluppo!
Credo che la scheda Raspberry sia un'ottima scheda per sviluppare applicazioni embedded e probabilmente si avvicina molto a quello che fai. Raspberry rappresenta a tutti gli effetti un mini PC ed arriva con Linux Installato. Si possono scrivere programmi direttamente in C come anche altri programmi. Non sono certo con quali compilatori viene spedito ma sicuramente e' possibile aggiungerne.
Per gli MSP430 suppongo che tu abbia iniziato a leggere il corso che sto scrivendo, l'unico in italiano.
Il corso inizia cercando di dare le conoscenze necessarie per iniziare in termini di strumenti hardware e software.
Per iniziare con gli MSP430 scrivere un'applicazione software che invi dati via USB (seriale emulata) non e' la cosa piu' semplice.
In particolare per inviare i dati via USB devi usare il timer interno, oltre a i pin ingresso uscita e le interruzioni. Non ti consiglio di seguire questa strada.
Spero a breve di realizzare le nuove puntate in cui si inizia la programmazione vera.
come mai hai ordinato 3 LaunPad?
Saluti,
Mauro
vedo che ti sta rifornendo di schede di sviluppo!
Credo che la scheda Raspberry sia un'ottima scheda per sviluppare applicazioni embedded e probabilmente si avvicina molto a quello che fai. Raspberry rappresenta a tutti gli effetti un mini PC ed arriva con Linux Installato. Si possono scrivere programmi direttamente in C come anche altri programmi. Non sono certo con quali compilatori viene spedito ma sicuramente e' possibile aggiungerne.
Per gli MSP430 suppongo che tu abbia iniziato a leggere il corso che sto scrivendo, l'unico in italiano.
Il corso inizia cercando di dare le conoscenze necessarie per iniziare in termini di strumenti hardware e software.
Per iniziare con gli MSP430 scrivere un'applicazione software che invi dati via USB (seriale emulata) non e' la cosa piu' semplice.
In particolare per inviare i dati via USB devi usare il timer interno, oltre a i pin ingresso uscita e le interruzioni. Non ti consiglio di seguire questa strada.
Spero a breve di realizzare le nuove puntate in cui si inizia la programmazione vera.
come mai hai ordinato 3 LaunPad?
Saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
12 Anni 6 Mesi fa #3
da falcon2600
Risposta da falcon2600 al topic Re: Iniziare a programmare con MSP430 LaunchPad
Ciao,
ho letto un po' il tuo interessantissimo tutorial e lo approfondirò (anche con le future lezioni, se ci saranno).
Sono abbastanza documentato su Raspberry Pi. Con Debian 6 ARM, ci dovrebbe essere una versione ridotta del compilatore gcc, poi c'è l'interprete Python e le perificheriche GPIO si possono programmare in C, Python o anche con la shell. Conosco abbastanza bene Linux.
Arduino l'ho preso per il suo costo "abbastanza" ridotto e la comunità di sviluppatori, grazie alla sua diffusione. Ho appena scoperto che sta uscendo Arduino Due a 32bit e, se lo sapevo, avrei preferito aspettare.
Quando ho iniziato a programmare in BASIC il Commodore 16, mi affascinava la pubblicità del braccio meccanico. Mi interessa, non solo sviluppare applicazioni desktop/web, utilizzate da persone di fronte ad un PC o altro device, ma anche sistemi di "domotica", "telecontrollo", ecc.
Ho citato l'esempio dell'USB, perché mi piacerebbe far comunicare il PC con l'esterno (attraverso la scheda) in modo che, ad esempio, all'attivazione (corrente o cessione della stessa) di un input il PC reagisse all'evento facendo qualcosa (ad esempio, inviando un'email), oppure ad un altro evento del PC (ad esempio, all'arrivo di un'email contenente una determinata stringa), il computer potesse attivare un'uscita della scheda (ad esempio, l'accensione di un led).
Non dico che sia semplice o che sia la cosa più adatta da cui partire...
Visto il prezzo (inclusa la spedizione) di questa alternativa ad Arduino, ne ho ordinate 3... Nel caso combinassi qualcosa nel saldare il quarzo, ad esempio, o nel caso dovessi danneggiarla, so che costano poco e ne ho qualcuna di scorta...
Un progetto (che non comporta la comunicazione col computer e mi interesserebbe molto) sarebbe la realizzazione di un filtro telefonico in grado di intercettare il Caller ID del chiamante (linea telefonica fissa) su di un input e, se non fa parte di quelli inseriti in una lista definita (white list) non fa passare il segnale all'output e quindi (posto a monte di tutte le prese telefoniche) non farebbe suonare il telefono con chiamate sconosciute (salvo nel caso di un Caller ID spoofing)...
Grazie.
Matteo
ho letto un po' il tuo interessantissimo tutorial e lo approfondirò (anche con le future lezioni, se ci saranno).
Sono abbastanza documentato su Raspberry Pi. Con Debian 6 ARM, ci dovrebbe essere una versione ridotta del compilatore gcc, poi c'è l'interprete Python e le perificheriche GPIO si possono programmare in C, Python o anche con la shell. Conosco abbastanza bene Linux.
Arduino l'ho preso per il suo costo "abbastanza" ridotto e la comunità di sviluppatori, grazie alla sua diffusione. Ho appena scoperto che sta uscendo Arduino Due a 32bit e, se lo sapevo, avrei preferito aspettare.
Quando ho iniziato a programmare in BASIC il Commodore 16, mi affascinava la pubblicità del braccio meccanico. Mi interessa, non solo sviluppare applicazioni desktop/web, utilizzate da persone di fronte ad un PC o altro device, ma anche sistemi di "domotica", "telecontrollo", ecc.
Ho citato l'esempio dell'USB, perché mi piacerebbe far comunicare il PC con l'esterno (attraverso la scheda) in modo che, ad esempio, all'attivazione (corrente o cessione della stessa) di un input il PC reagisse all'evento facendo qualcosa (ad esempio, inviando un'email), oppure ad un altro evento del PC (ad esempio, all'arrivo di un'email contenente una determinata stringa), il computer potesse attivare un'uscita della scheda (ad esempio, l'accensione di un led).
Non dico che sia semplice o che sia la cosa più adatta da cui partire...
Visto il prezzo (inclusa la spedizione) di questa alternativa ad Arduino, ne ho ordinate 3... Nel caso combinassi qualcosa nel saldare il quarzo, ad esempio, o nel caso dovessi danneggiarla, so che costano poco e ne ho qualcuna di scorta...
Un progetto (che non comporta la comunicazione col computer e mi interesserebbe molto) sarebbe la realizzazione di un filtro telefonico in grado di intercettare il Caller ID del chiamante (linea telefonica fissa) su di un input e, se non fa parte di quelli inseriti in una lista definita (white list) non fa passare il segnale all'output e quindi (posto a monte di tutte le prese telefoniche) non farebbe suonare il telefono con chiamate sconosciute (salvo nel caso di un Caller ID spoofing)...
Grazie.
Matteo
Si prega Accedi o Crea un account a partecipare alla conversazione.
- falcon2600
- Autore della discussione
- New Member
Riduci
Di più
- Messaggi: 4
- Ringraziamenti ricevuti 0
12 Anni 6 Mesi fa - 12 Anni 6 Mesi fa #4
da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: Iniziare a programmare con MSP430 LaunchPad
Ciao Matteo,
certo che ci saranno altre puntate!
La prossima puntata sara' Hello World, quindi imparerai a conoscere le porte dell'MSP430 e controllare gli Input e Output.
Per alcuni esempi USB puoi anche vedere:
Il Tutorial Leggere e scrivere dati via USB
Il progetto EasyUSB
Il progetto Freedom II
Per il LaunchPad, per ora non saldare nulla. Gli MSP hanno un clock interno da 12KHz e un DCO calibrato ad 1MHz.
Il quarzo incluso e' da 32KHz.
Saluti,
Mauro
certo che ci saranno altre puntate!
La prossima puntata sara' Hello World, quindi imparerai a conoscere le porte dell'MSP430 e controllare gli Input e Output.
Per alcuni esempi USB puoi anche vedere:
Il Tutorial Leggere e scrivere dati via USB
Il progetto EasyUSB
Il progetto Freedom II
Per il LaunchPad, per ora non saldare nulla. Gli MSP hanno un clock interno da 12KHz e un DCO calibrato ad 1MHz.
Il quarzo incluso e' da 32KHz.
Saluti,
Mauro
Ultima Modifica 12 Anni 6 Mesi fa da Mauro Laurenti.
Si prega Accedi o Crea un account a partecipare alla conversazione.
12 Anni 6 Mesi fa - 12 Anni 6 Mesi fa #5
da falcon2600
Risposta da falcon2600 al topic Re: Iniziare a programmare con MSP430 LaunchPad
Ciao Mauro,
ho letto la tua "biografia" sul sito: complimenti!
Ora lavori proprio per TI!
Grazie dei consigli, specie quello sulla saldatura del quarzo che avevo già letto in un altro topic del forum, in quanto conoscendo le mie capacità di saldatura di componenti elettroniche (in una scala da 1 a 10, pari a 0!) costituiva una delle motivazioni per cui ho ordinato 3 kit!
A proposito, i 3 kit mi sono appena arrivati (Rev. 1.5, come mi ero raccomandato) e non vedo l'ora di riuscire a farci qualcosa, ma so che non ci riuscirò...
Credi che l'uso di un RTOS come TinyOS o SYS/BIOS, solo per citarne alcuni, possa semplificarmi la vita?
Grazie ancora.
Buona giornata.
Matteo
ho letto la tua "biografia" sul sito: complimenti!
Ora lavori proprio per TI!
Grazie dei consigli, specie quello sulla saldatura del quarzo che avevo già letto in un altro topic del forum, in quanto conoscendo le mie capacità di saldatura di componenti elettroniche (in una scala da 1 a 10, pari a 0!) costituiva una delle motivazioni per cui ho ordinato 3 kit!
A proposito, i 3 kit mi sono appena arrivati (Rev. 1.5, come mi ero raccomandato) e non vedo l'ora di riuscire a farci qualcosa, ma so che non ci riuscirò...
Credi che l'uso di un RTOS come TinyOS o SYS/BIOS, solo per citarne alcuni, possa semplificarmi la vita?
Grazie ancora.
Buona giornata.
Matteo
Ultima Modifica 12 Anni 6 Mesi fa da falcon2600.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- falcon2600
- 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.