Iniziando ad utilizzare il LaunchPad, ben presto, ci renderemo conto che provare e riprovare i vari codici di esempio forniti da TI, non ci basterà più e sentiremo la necessità di creare schede aggiuntive che possano rendere le nostre prove più accattivanti e performanti. Vedremo come aumentare, gradualmente e in modo semplice, le periferiche collegate alla nostra scheda, facendo un piccolo passo alla volta ed ampliando e migliorando la nostra esperienza ed, infine, sentiremo la necessità di scrivere del codice appropriato alle nostre esigenze e, finalmente, non ci limiteremo più a copiare, semplicemente, del codice scritto da altri.
Organizziamoci preparando tutto l'occorrente, quindi decidiamo quale deve essere la prima componentistica che riteniamo sia utile per cominciare a studiare il nostro LaunchPad, in seguito penseremo ad aggiungerne altra in base all'esperienza maturata e alla nostra "fame" di conoscenza acquisita.
Per chi vuole intraprendere lo studio della programmazione degli MSP430 può tornare utile il mio esempio, così ho deciso di fare partecipi i vari interessati. E' ovvio che ognuno deciderà in base alle proprie abitudini e alle proprie idee ma potrebbero esserci persone che, magari, vogliono una piccola "spinta" e spero che questa mia iniziativa sia utile a qualcuno.
Ho cominciato col procurarmi i connettori necessari ai vari collegamenti con l'MSP430, un display LCD alfanumerico 16x2 (16 caratteri per 2 righe basato sull'HD44780), alcuni pulsanti, una manciata di LED e una batteria a ioni di litio da 3,6 Volt 900 mA recuperata da un vecchio telefonino non più funzionante.
I prossimi componenti aggiuntivi, probabilmente, saranno dei sensori (IR, ultrasuoni, etc) ma è preferibile fare un passo alla volta senza voler "bruciare le tappe": la fretta porta a risultati scadenti e demotivanti.
Quello che, secondo me, è più interessante è il metodo che ho scelto per installare il quarzo in dotazione. Sono convinto che molti preferiscono saldare direttamente il cristallo, io invece ho optato per una soluzione stravagante.
Intanto, devo dire, che la mia intenzione è di provare i vari progetti di esempio che ci sono all'interno di CCS e sul web, alcuni di questi esempi utilizzano il VLO interno mentre altri utilizzano il cristallo a 32.768 kHz. Leggendo il manuale (vorrei ricordare che tutti i manuali sono scaricabili liberamente dal sito Texas) vediamo che esiste la possibilità (via software) di abilitare l'uno o l'altro; quindi per non perdere tempo a inserire all'interno dei vari progetti i comandi per abilitare il VLO interno o il cristallo esterno, ho deciso di zoccolare il quarzo così posso inserirlo o toglierlo in base al progetto in prova. Come possiamo vedere dalla prima foto allegata, ho tagliato, da una basetta millefori, un quadratino con 5 fori per 4 al quale ho saldato 3 pin con contatti dorati (due per i pin del cristallo e uno per la massa della carcassa dello stesso) e quindi ho saldato il cristallo, mentre nel LaunchPad ho saldato, nella loro posizione, semplicemente tre zoccoletti torniti, sempre con contatti dorati.
Sia che prendiamo la decisione di saldare direttamente il cristallo sia che decidiamo di zoccolarlo, dobbiamo fare molta attenzione perchè si tratta di una operazione abbastanza delicata, viste le dimensioni del cristallo e soprattutto le dimensioni delle piazzole, quindi bisogna utilizzare un saldatore per microsaldature o, perlomeno, un piccolo saldatore a punta molto fine. Io ho utilizzato una piccola stazione per microsaldature da 8 Watt che ha uno stilo a punta di 0,6 mm.
Mi raccomando la massima attenzione a non far surriscaldare nè la scheda nè il cristallo e soprattutto controllare bene il risultato perchè è facile cortocircuitare le piste (abbiamo una distanza tra le piste veramente irrisoria: solo pochi decimi di millimetro) al contrario è anche facile effettuare una saldatura "fredda" per la paura di surriscaldare componente e piste, quindi consiglio vivamente l'uso di una buona lente d'ingrandimento (magari tipo quelle da orefice che si bloccano all'occhio) o, meglio ancora, un microscopio USB, oltre, naturalmente, al normale controllo con multimetro.
Come possiamo notare nella foto precedente, è facilmente visibile il piccolissimo cristallo saldato sulla sua basetta con i tre pin mentre, sulla scheda LaunchPad, sono visibili i tre zoccoletti torniti saldati nella loro posizione, per rendere più robusti i due che andranno ai pin del cristallo sono stati tagliati dallo strip a gruppo di tre togliendo poi il pin centrale semplicemente scaldandolo con il saldatore. Vorrei far notare che, per saldare il pin di massa, oltre ad essere stata tolta la copertura in plastica, è stato tagliato il pezzettino finale (quello che andrebbe inserito nel foro) perchè la scheda non presenta il foro ma solo una piazzuola di massa dove andrebbe saldato il contenitore del cristallo. Consiglio inoltre, vivamente, di utilizzare dello stagno molto sottile, va bene quello da 0,5 mm per evitare di creare cortocircuiti, oltre ad avere, all'interno, un'anima molto sottile di flussante che risulta sempre fastidioso da eliminare.
Utilizzando, ancora, una basetta millefori, ho saldato 8 pulsanti e altrettanti LED collegando i loro terminali ai due connettori, anche i terminali del display alfanumerico sono collegati ai connettori e, per fare ciò avremo bisogno di una manciata di resistenze ed un trimmer (vedi schemi elettrici per i collegamenti e gli elenchi componenti per i valori appropriati).
Questo è lo schema elettrico del modulo 8 LED.
Come si può notare, ogni LED è pilotato da un transistor, questo per evitare di sovraccaricare le uscite dell'MSP430, si potrebbe utilizzare il solo LED con la relativa resistenza limitatrice ma, assorbirebbe circa 10 mA per ogni uscita, mentre aggiungendo un transistor con relativa resistenza alla base, riusciamo ad assorbire circa 0,09 mA (90 microamper) per ogni pin del microcontrollore che ci ringrazierà per l'attenzione che gli abbiamo riservato. Inoltre, è da evidenziare il jumper posizionato in parallelo a R17, è stato inserito solo per poter utilizzare due alimentazioni, una a 5,0 Volt, se utilizziamo la shield con i PIC e l'altra a 3,6 volt (cortocircuitando la resistenza) se usiamo l'MSP430.
Nella foto precedente possiamo notare che i resistori e i LED sono stati montati su zoccolo, così si ha la possibilità di provare differenti modelli di LED semplicemente sostituendoli assieme alle resistenze senza effettuare nessuna saldatura/dissaldatura.
Nella foto le resistenze a sinistra sono da 1 kOhm (al posto di quelle da 180 Ohm) perchè quando l'ho scattata stavo provando la scheda con una alimentazione a 12V.
Nella foto successiva, i collegamenti lato piste.
Elenco componenti:
- R 1-3-5-7-9-11-13-15 = 180 Ohm;
- R 2-4-6-8-10-12-14-16 = 47 kOhm;
- R17 = 2,9 Ohm;
- Q 1-2-3-4-5-6-7-8 = BC337;
- LD 1-2-3-4-5-6-7-8 = LED 3 mm.
Nota bene: il valore di 180 Ohm è stato calcolato per i LED di colore rosso e per una corrente di 11 mA; chi volesse utilizzare dei colori diversi dovrà ricalcolarne il valore in base alla Vd del LED e alla corrente di lavoro consigliata dal costruttore (Esempio: rosso = 1,8V da 9mA a 18 mA, Bianco = 3,0V da 10 mA a 20 mA etc).
Nell'immagine precedente vediamo il semplicissimo schema dei pulsanti; è da notare che sull'alimentazione possiamo invertire i due ingressi in base alla scheda a microcontrollore utilizzata (per segnali di Input normalmente a zero o normalmente a uno).
Lo zoccolo vuoto, nella foto precedente, è per inserire le resistenze quando la scheda verrà utilizzata con i PIC, in questo caso le resistenze sono all'interno dell'MSP430 e possiamo decidere di abilitare le pull-up o le pull-down.
Nella foto precedente, possiamo vedere le tre schede già assemblate, due sono collegate con il LaunchPad, il tutto provvisoriamente su schede mille fori, in attesa di preparare i circuiti stampati definitivi.
Sicuramente molti avranno notato un'incongruenza e si staranno chiedendo come mai utilizzare una scheda Ultra Low Power accoppiata ad un Display alfanumerico che assorbe parecchia corrente. A queste persone rispondo che è solo per fare pratica con la programmazione e in più, il display sarà utilissimo quando lo si utilizzerà per studiare la programmazione dei PIC. A questo proposito, vorrei far notare che sono stati inseriti dei connettori anche sulle schede d'espansione (anzichè saldare direttamente i cavi), e il motivo è che, così facendo, si possono preparare altri cavetti collegati con diverso criterio e con altri modelli di connettori, proprio per poter utilizzare il circuito su schede PIC per le prove di programmazione degli stessi, quindi unica scheda per più modelli di microcontrollori.
Inoltre, avremo bisogno di un piccolo alimentatore con uscita a 5 volt per alimentare il tutto senza sovraccaricare la porta USB.
Qui vediamo lo schema elettrico della scheda display:
Il trimmer serve per regolare la luminosità, mentre il condensatore per fugare a massa eventuali disturbi sull'alimentazione.
Elenco componenti:
- N. 1 Condensatore Poliestere da 100.000 pF;
- N. 1 Trimmer da 10 kOhm;
- N. 1 Connettore a 2 pin;
- N. 1 Connettore a 6 pin;
- N. 1 display LCD alfanumerico 16X2 (16 caratteri per 2 righe).
A questo punto, abbiamo bisogno di scrivere il codice adatto a far funzionare questi componenti aggiuntivi con il nostro MSP430.
Nel prossimo appuntamento vedremo qualche semplice esempio (il tempo di completarli) ma, prima vorrei precisare che questa mia serie, non vuole assolutamente essere un tutorial su come programmare l'MSP430, ma semplicemente una condivisione delle prime esperienze di chi ha iniziato da poco a conoscere questa scheda di sviluppo. Così impareremo insieme.
Mario Venoso

Ciao Marven
Meno male che nel precedente articolo del 15 novembre, dicevi che ti serviva tempo per imparare a conoscere meglio la scheda.
Sono trascorsi solo 15 giorni, e neanche due mesi da quando ne hai parlato per la prima volta.
Perciò adesso credo che affiancarla al modulo controllo motori sia un gioco da ragazzi.
Ma passando all’ articolo mi sembra ottimo, con molti schemi che potranno anche servire per testare altre schede.
Per il modulo pilota dei diodi led, forse potevi utilizzare un modulo ULN e una barra led come ho utilizzato io per la scheda I/O per Raspberry.
http://www.adrirobot.it/raspberry_pi/raspberry_pi-interfaccia_gpio.htm
Comunque occorre apprezzare la pulizia del montaggio lato rame su millefori.
Attendiamo adesso i prossimi articoli con i programmi di gestione.
Tra l’altro, credo che tra poco dovrò lasciarti il secondo posto in classifica, bravo Mario.
Saluti
Adriano
Ciao Adriano
ti ringrazio per i complimenti che sono sempre graditi 🙂 però non sono io ad essere bravo, è la scheda che è di una semplicità mostruosa, esattamente come Arduino, in questo periodo sto studiando ambedue sistemi e posso garantirti che hanno una somiglianza impressionante.
Per quanto riguarda l’ULN, ti dirò che per ora utilizzo solo quello che trovo in casa, ci sarà sicuramente qualche ULN in laboratorio perchè ne facevo largo uso ma chissà dove (per ora il laboratorio sembra più un deposito 🙁 e chissà quando riuscirò a sistemarlo), però se devo essere sincero non ci ho nemmeno pensato al suo utilizzo, sarà per il prossimo progetto 😉 …non è difficile che sia un controllo motori, chissà…
Bella l’interfaccia per Raspberry, non avevo letto l’articolo… odio le schede disordinate invece la tua è impeccabile.
La parte seconda è quasi pronta, ci sono i primi codici scritti, mi mancano solo alcune foto e una controllatina generale.
Per il secondo posto non ci credo che me lo lascerai 😉 secondo me hai quasi pronta l’altra infornata di utili informazioni…
Ti dirò, in tutta sincerità, che è un piacere “battagliare” con persone come te e non importa arrivare prima o dopo, la stima innanzi tutto.
Ciao
Mario
Innanzitutto complimenti per la cura con la quale hai realizzato le schede su preforato…con il saldatore devi essere un “maestro” e poi l’idea del quarzo zoccolato è geniale!!
Io mi sono appena laureato in ingegneria informatica e l’argomento della mia tesi è stato proprio sugli MSP 430 ma confesso di avere ancora tanto da imparare.
Ho già acquistato il kit Launchpad solo per curiosità personale ma non ho avuto molto tempo per ‘giocarci’.
Io personalmente ho scaricato anche il software “energia”, disponibile sul sito della TI, che permette di programmare questi microcontrollori con il linguaggio di Arduino che è di una semplicità estrema.
Posso sapere dove poter trovare un display come quello dell’esempio? Forse su qualche stampante dismessa, dovrei controllare al lavoro da me…
Ciao Roberto
ti ringrazio per i complimenti che, come ho detto prima, sono sempre graditi e mi è d’obbligo ricambiarli per la tua laurea. Il consiglio che posso darti è di trovare quanto prima il tempo per giocarci un pochino perchè c’è da rimanere più che soddisfatti nel vedere con quanta semplicità possiamo progettare con questa scheda.
Per la cura delle schede, diciamo che sono troppo pignolo e, per il metodo che di solito uso per assemblare le schede posso dire che queste le ho fatte malissimo, potevano venire molto più eleganti se fatte senza fretta, infatti quelle definitive saranno sicuramente impeccabili 🙂
Per quanto riguarda dove trovare display del genere, potresti farti un giro su http://www.conrad.it se ricordo bene ne ho visto qualcuno. Il mio l’ho recuperato da una vecchia apparecchiatura industriale, al lavoro, prima di buttare le apparecchiature obsolete, recuperavo tutto quello che poteva tornare utile.
Ciao
Mario
Mi associo ai complimenti per l’articolo, soprattutto per il modo in cui è stato scritto (raccolta di esperienze personali più che vero e proprio tutorial, come hai tu stesso dichiarato): una spiegazione passo passo rigorosa e priva dell’apporto personale equivale ad un libro di testo, e sappiamo bene quanto quest’ultimo possa a volte risultare pesante.
Mi sono piaciute due cose in particolare:
1) la dovizia nei particolari: i valori dei componenti passivi, ad esempio, vengono spesso dati per scontati e perciò trascurati (hai invece trattato anche l’assorbimento in corrente dei led, molto utile da sapere 😉 );
2) l’invito a “zoccolare” alcuni componenti, come ad esempio il quarzo: in una scheda di sviluppo, saldare un dato componente equivale in qualche modo a “legarsi” ad una sola possibilità. Per fare ciò è meglio realizzarsi il proprio PCB (allora sì che è davvero necessario mettere mani al saldatore…), ma in contesti di studio come con il launchpad meglio non sprecare le varie opportunità offerte dal ricambio di componenti e valori.
Aspetto con curiosità di leggere il prossimo articolo!
Ciao delfino_curioso
anche a te un sentito grazie per i complimenti che gratificano e ci spingono a fare sempre di più e meglio.
In elettronica sono nato come autodidatta nella lontana era “paleontolica” (esiste? 🙂 ) quando reperire informazioni utili era di una difficoltà esasperante per cui cerco sempre (nel mio piccolo) di dare più informazioni possibili, per l’esperto saranno sicuramente informazioni tediose ma per il neofita sono di indubbia utilità.
Sono d’accordo con te che una spiegazione priva dell’apporto personale equivale ad un pesante e ultratedioso libro di testo, come ho detto prima, “non vuole essere un tutorial” perchè sono così tanto indietro con l’elettronica che sarei la persona meno qualificata, l’elettronica fa passi da gigante giorno per giorno mentre io faccio piccoli passetti da neonato e non riesco più a stargli dietro.
Il prossimo articolo è quasi pronto, spero solo di essere riuscito a renderlo interessante… ai posteri la sentenza 🙂
Ciao
Mario
Ciao Mario
Girovagando in rete mi sono imbattuto in questo sito.
http://store.43oh.com/index.php?route=common/home
Ho notato che è dedicato alla scheda Launchpad MSP430, su di essa sono presenti schede di espansione, per prototipi e kit di sviluppo.
Dando una rapida occhiata ho visto schede con display LCD, touch pannel, schede controllo motori e molti anche ancora.
Interessato è anche il fatto che delle schede sono disponibili i pdf con le istruzioni e soprattutto gli schemi elettrici.
In questo modo si potranno eventualmente auto costruire o integrare per realizzare un progetto più complesso.
Interessante il fatto che esistano filmati illustrativi, codici di esempio, librerie e un forum con post dedicati ai vari oggetti messi in vendita.
Un saluto
Adriano
Grazie Adriano
si, lo conoscevo già, è un sito utilissimo per attingere un po di informazioni che serviranno senz’altro per il futuro, ho trovato interessanti sia i vari video educativi e soprattutto i vari pdf, nel forum invece ancora non ci sono entrato, lo farò appena riesco a liberarmi dagli altri impegni che mi occupano quasi tutta la giornata, con il mio inglese “difettoso” 🙂 ho un poco di difficoltà a capire tutto anche se alla fine poi ci riesco è solo che devo prima perdere un po di tempo. Vedo che ti sei deciso ad acquistare questa simpatica schedina e secondo me fai bene, io ne sono entusiasta 🙂
ciao
Mario