Home
Accesso / Registrazione
 di 

Corso di programmazione per microcontrollori PIC - Ottava puntata - 1

Corso di programmazione per microcontrollori PIC

Impariamo a programmare con la famiglia di microcontrollori PIC della Microchip, caratterizzata da una grande flessibilità d’uso e da un’estrema semplicità di impiego grazie alla disponibilità di uno Starter Kit a basso costo, di un ambiente di sviluppo software evoluto e di una vasta e completa libreria di programmi collaudati e pronti all’uso. Ottava puntata.

Da questa puntata del Corso iniziamo a vedere come si scrivono dei programmi per i micro PIC, utilizzando come supporto hardware, per verificarne la funzionalità, una specifica demoboard appositamente realizzata e ampiamente descritta nella scorsa puntata. Prima di iniziare, riassumiamo brevemente le fasi che permettono la creazione di un programma.

Occorre innanzitutto scrivere il programma sorgente in assembler, ovvero disporre di un qualunque PC e di un editatore di testo che lavori in ASCII utilizzando quest’ultimo per inserire le linee di istruzioni assembler in un file. Una volta salvato il file con estensione .ASM, occorre attivare il programma di assemblaggio che per i PIC si chiamo MPASMWIN. L’assemblatore “gira” sotto Windows e può essere attivato autonomamente (essendo un normale file eseguibile) oppure dall’interno dell’ambiente di sviluppo software MPLAB, che abbiamo già descritto in una puntata precedente del Corso, e che permette non solo l’assemblaggio ma anche il debug dei programmi stessi.

Una volta avviato l’assemblatore, questo genera una serie di file, tutti con lo stesso nome ma con diversa estensione. Qualora, nella fase di compilazione, venga riscontrato qualche errore, viene creato anche un file con estensione .ERR che contiene la descrizione degli errori riscontrati dall’assemblatore stesso. Si può leggere questo file con un qualunque editor di testo (anche sotto DOS), correggere il programma e ripetere la procedura di assemblaggio.

Se la fase di compilazione è andata a buon fine, viene creato automaticamente un file con estensione .HEX che contiene il programma in linguaggio macchina, pronto cioè ad essere scaricato nella memoria del micro. Per fare questa operazione occorre quindi un programmatore, che potrebbe essere ad esempio il PIC START PLUS, prodotto dalla stessa Microchip, controllabile anch’esso dall’interno di MPLAB, oppure il programmatore realizzato dalla nostra rivista, che presenta la comodità di poter funzionare anche da emulatore, cioè appena scaricato il programma nella memoria, si può far “girare” direttamente il micro.

Collegando con l’apposito cavetto lo zoccolo di emulazione del programmatore con lo zoccolo riservato al PIC della demoboard, sarà possibile vedere immediatamente il risultato dell’esecuzione del programma. Passiamo ora ad analizzare i primi programmi didattici scritti per la demoboard; in particolare, in questa puntata, vedremo programmi che sfruttano come risorse della demoboard gli otto led collegati alla porta b, i due pulsanti collegati alla porta a e i due relè ed il buzzer anch’essi collegati alla porta a.

La prima operazione da effettuare sarà quindi quella di chiudere con un jumper il connettore JP3, in modo da predisporre la demoboard stessa per lavorare con queste periferiche, ovvero con i led LD1÷LD8, il buzzer BZ e i due pulsanti P1 e P2.

PROGRAMMA PER ACCENDERE I LED IN SEQUENZA
Con questo semplice programma si provoca l’accensione di un solo led per volta creando l’effetto di uno scorrimento da destra a sinistra. Vediamo subito come è strutturato il programma DEMO1 osservando il relativo listato riportato in queste pagine.

La prima riga riporta la direttiva list attraverso la quale comunichiamo all’assemblatore che intendiamo compilare un programma per il PIC 16C84, e che il formato di uscita del file deve essere a 8 bit.

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 8 utenti e 79 visitatori collegati.

Ultimi Commenti