Introduzione
ai PIC
Lo
scopo di queste pagine è di
fornire delle informazioni sulla famiglia di microcontrollori della
MICROCHIP©.
Le informazioni fornite presuppongono la conoscenza di
alcuni termini di base e di alcuni concetti di informatica.
Cosa
e' un microcontrollore
Un
microcontrollore e' un dispositivo elettronico che contiene al suo
interno tipi differenti di risorse hardware.
In genere è composto di:
- Un processore (CPU)
- Una logica per la generazione del segnale di
riferimento temporale (CLOCK)
- Una logica per la gestione della fase di partenza
(RESET)
- Una memoria statica, per il codice programma (ROM).
- Una memoria dinamica, per i dati di programma (RAM)
- Uno o piu' contatori, per il controllo di intervalli
temporali (TIMER)
- Una logica di gestione delle interruzioni
(INTERRUPTER).
- Delle porte di input/output per la gestione dei
segnali da/verso il mondo esterno (I/O PORTs).
Quindi, a differenza di un microprocessore, il microcontrollore non
necessita' di dispositivi esterni per il suo funzionamento, ad
eccezione dei componenti passivi per la logica di CLOCK e di RESET
(Quarzi, condensatori, diodi e resistori).
Come funziona
Il
microcontrollore funziona cosi':
- Dopo aver fornito la tensione di alimentazione viene
effettuata la fase di reset. In questa fase tutte le risorse vengono
poste nello stato iniziale.
- Terminata la fase di reset, La CPU comincia a leggere
le istruzioni contenute nella memoria ROM e ad eseguirle.
Uso di un
microcontrollore
Per
usare il microntrollore per i propri scopi e' necessario programmarlo.
La programmazione consiste nella generazione di una sequenza di
istruzioni che permettono di svolgere la funzionalita' richiesta.
L'insieme delle istruzioni costituisce il programma. Il programma puo'
essere scritto o in linguaggio ASSEMBLER oppure con un linguaggio ad
alto livello (C, PASCAL, BASIC). Il file (o i files) ottenuto dopo
opportune operazioni di traduzione, viene inserito nella memoria ROM.
Riassumendo:
- Definito il tipo di problema da risolvere, si scrive
il programma usando un editor di testi.
- Il programma scritto viene tradotto in un formato
compatibile con la memoria ROM del microcontrollore, usando un
COMPILATORE.
- Il file ottenuto viene copiato nella ROM tramite uno
strumento hardware chiamato PROGRAMMATORE (In gergo questa operazione
si chiama "Bruciatura").
Informazioni sui microcontrollori possono essere
reperite ovunque sul web. Ci sono comunque alcuni siti fondamentali:
- microchip
- e' il sito della microchip, qui si possono trovare datasheets, tools
di sviluppo, note applicative. Si possono inoltre richiedere dei
campioni gratuiti, oppure acquistare piccole partite di componenti a
prezzi interessanti.
- ic-prog
- e' il sito ufficiale del programmatore icprog. Qui potete trovare il
software per programmare i pic e le informazioni per comprare o
costruire il programmatore.
Organizzare
un laboratorio per PIC
Vediamo
ora come si puo' mettere in piedi un
piccolo laboratorio per utilizzare i pic.
I tools e gli
strumenti necessari sono:
- Ambiente di sviluppo. E' il software che si usa per
scrivere il programma. Dopo vari test ho scelto due tool specifici:
- MPLAB: e' il tool di sviluppo della MICROCHIP. E'
completamente gratuito. Puo' essere scaricato dal sito della microchip.
- SOURCEBOOST: per scrivere programmi in C. Ha alcune
limitazioni ma si rivela molto utile per scrivere piccoli programmi
senza dover per forza imparare l'assembler.
- Programmatore: ne esistono di diversi tipi:
- PARALLELO; si connette alla porta parallela del
PC è molto affidabile, ma per farlo funzionare si deve fornire
un'alimentazione esterna
- SERIALE: si connette alla porta seriale e non
necessita dell'alimentazione esterna. Purtroppo i nuovi PC non sempre
hanno la porta seriale, ed utilizzando un'adattatore da USB a SERIALE
difficilmente si riesce a farlo funzionare.
- USB: si connette alla porta USB e non necessità
di alimentazione esterna. E' molto veloce ed affidabile. La
Microchip© ha nel suo catalogo diversi tipi di programmatori di questo
tipo, ma è possibile realizzarne uno in casa con poca spesa.
- Demo board: una schedina di prova dove inserire il
pic per i vari test. E' composta di:
- Uno zoccolo per il PIC
- Uno zoccolo per il quarzo,
- Uno zoccolo per collegare il pic ai circuiti
esterni
- Un circuito di reset,
- Un regolatore di tensione
- Un circuito per la programmazione on board.
- Uno zoccolo per collegare un display LCD.
Questa
scheda non e' strettamente necessaria. Ma si rivela utile nei casi in
cui si vogliono usare dei componenti standard. Puo' essere sostituita
da una di Breadboard per montaggi sperimentali, di quelle con le
mollette dove vanno inseriti i fili di collegamento a pressione.
Insomma dipende dalle vostre esigenze.
- Tool di disegno.
Un cad per il disegno dello schema elettrico e la progettazione del
circuito stampato. Sul web se ne trovano diversi completamente
gratuiti. Un tool molto completo (E soprattutto molto GRATUITO) e'
eagle della cadsoft.
Cosa trovate
nel mio sito
Partendo
da zero ho realizzato un programmatore
USB
e una demoboard,
i progetti li trovate nei links indicati.
Disclaimer
Il
materiale contenuto in
questo sito è fornito AS IS, a solo
titolo didattico e senza garanzia alcuna,
implicita o esplicita. In particolare l'autore non si ritiene
responsabile di alcun danno diretto o indiretto causato dall'uso delle
informazioni contenute nel sito. Tutti i
nomi di prodotti e ditte sono proprieta' dei legittimi proprietari.
L'uso, la modifica e la distribuzione del materiale e', fatti salvi i
diritti di terzi, libera e gratuita a condizione di citare la fonte. E'
vietato l'uso commerciale di tutto o parte del materiale, salvo
espressa autorizzazione scritta.
|
|