|
Tutorial di Base per lo sviluppo di software in linguaggio C per PIC
[ Per qualsiasi dubbio e commento è disponibile un thread sul forum del sito:
link ]
Sviluppare software per microcontrollori PIC in linguaggio C è quanto di più semplice e meno
costoso di quanto possa sembrare. La
Microchip, casa costruttrice dei microcontrollori (MCU), mette a disposizione un ambiente di
sviluppo e debug (IDE) gratuito molto potente e funzionale, il MPLAB. Purtroppo tale ambiente
non supporta nativamente la compilazione di codice scritto in linguaggio C, ma solo in
assembler.
A tal proposito ci viene incontro il compilatore PicC creato dalla
Hi-Tech.
Tale compilatore nella sua versione più evoluta non è gratuito, però esiste una
versione ridotta, denominata PICC-Lite™, che
può essere scaricata gratuitamente.
Tale versione limita la compilazione ad un numero ridotto di microcontrollori Microchip e ad una
quantità limitata di memoria programma utilizzabile. Questo però non è un nostro problema in
quanto tra i controllori supportati troviamo il Pic 16F84, il 16F627 (il cui software è
compatibile con quello per 16F628) e il 16F877, tutti quelli utilizzati nel progetto Home
Rover.
Il tutorial utilizza MPLAB® IDE 7.3 e PICC-Lite™ 9.50, ma può essere riferito senza
problemi a versioni precedenti o successive di entrambi i prodotti.
Installazione
Dopo aver scaricato le ultime versioni di entrambi i software procedete alla loro installazione
nel seguente ordine: MPLAB® , quindi PICC-Lite™, che verificherà se il primo è già stato
installato.
Creazione di un semplice progetto con MPLAB®
Lo sviluppo del software per PIC è realizzato interamente tramite l'IDE messo a disposizione
da MPLAB®.
Innanzitutto lanciate l'ambiente MPLAB®, quindi dal menu scegliete "Project" e ancora
"Project Wizard...". A questo punto l'ambiente vi metterà a disposizione un wizard per
poterlo configurare secondo le vostre esigenze.
Selezionate nella seconda finestra che vi si presenterà l'MCU che andrete ad utilizzare, nel
nostro caso il "PIC 16F627A".
A questo punto entra in gioco l'integrazione tra MPLAB® IDE e PICC-Lite™, infatti vi verrà
richiesto quale suite andrete ad utilizzare per compilare, assemblare e linkare il vostro
software, nel nostro caso quindi: "HI-TECH PICC ToolSuite".
Scegliete dunque un nome per il progetto e la cartella in cui verrà sviluppato: "Tutorial_1"
sarà il suo nome, "C:\Documents and Settings\Myzhar\Desktop\Tutorial_1" la sua cartella.
Vi verrà ora richiesto di aggiungere dei file esistenti al progetto, ma non abbiamo ancora creato niente
e niente aggiungeremo.
La prossima finestra vi presenterà un riassunto delle impostazioni selezionate, premendo su Fine avrete
dunque creato il vostro ambiente per il vostro primo progetto.
Impostazione dell'ambiente
A questo punto vi si presenterà l'ambiente scarno illustrato nella figura sottostante (click per
allargare):
Per poterlo rendere il più informativo possibile vi consiglio di aprire le seguenti finestre:
Dal menu "View" selezionate:
1) "Output": è la finestra che vi mostrerà i messaggi di errore in compilazione, i risultati
delle ricerche e altri utili messaggi. Questa finestrà torna molto utile se posizionata nella parte bassa
della finestra principale e allargata a tutta la sua estensione.
2) "11 Special Function Registers": è la finestra che mostra lo stato di tutti i principali registri
dell'MCU utilizzato. Lo posizionerete nella parte destra della finestra principale. Vi consiglio di
spostare la colonne "Binary" come terza e allargare la finestra in modo che mostri le tre
colonne "Address, SFR Name, Binary".
3) Lasciare al centro lo spazio per la finestra di editing del codice.
Il risultato finale è illustrato nella seguente immagine:
Compilazione e Debug
A questo punto non resta altro da fare che scrivere il codice, compilarlo e debuggarlo.
Il codice che ci appresteremo a compilare può essere
scaricato qui.
E' un semplice programmino che non fa altro che alternare l'uscita del pin RB0 del PIC
da 0 a 1 e viceversa.
Il file scaricato contiene un errore che ci appresteremo a correggere.
Create dunque un nuovo file, copiateci il codice da quello scaricato, salvatelo come "main.c"
nella cartella del progetto e aggiungetelo al progetto cliccando con il tasto destro su
"Source Files" dell'albero di progetto nella finestra di sinistra e scegliendo
"Add Files" dal menu che vi si aprirà.
Per poter compilare il codice in modalità di simulazione è necessario impostare l'ambiente:
""Debugger" -> "Select Tool" -> "MPLAB SIM"".
Nella Toolbar compariranno dei nuovi pulsanti. Premere il primo avente la forma del classico tasto
Play denominato "Run". Il compilatore entrerà in esecuzione cercando eventuali errori di
sintassi, se non ne trova (nostro caso) il programma andrà in esecuzione fermandosi alla prima istruzione
disponibile.
Continuate ad eseguire il programma passo-passo premendo il tasto F7, vedrete la freccia gialla
spostarsi sull'istruzione in esecuzione, ma nella finestra di destra, dove sono elencati i registri
non vedrete nessun cambiamento nel bit 0 del registro PORTB, come invece vorremmo.
L'errore è dovuto al commento sulla riga di codice "TRISB0 = 0;", che ha il compito di indicare al
PIC che il bit 0 della porta PORTB funzionerà da output. Togliete il commento "//" e rieseguite.
Questa volta il bit 0 di PORTB cambierà continuamente valore tra 0 e 1, come effettivamente ci saremmo
aspettati.
Come avrete notato non è molto complicato utilizzare l'IDE messo a disposizione da Microchip, nonostante
sia molto funzionale e informativa.
Spero che questo tutorial vi sia di aiuto nel seguire l'evoluzione del progetto Home Rover.
Per qualsiasi dubbio e commento è disponibile un thread sul forum del sito:
link.
Il tutorial ti è stato utile?
Offrimi un caffè, sarò felice di realizzarne di migliori.
|