Le funzioni disponibili
In relazione alla piedinatura appena vista, per il contenitore a 8 pin possiamo dire che:
- due pin sono dedicati all' alimentazione
pin |
funzione |
1 |
Vdd - tensione di alimentazione positiva |
14 |
Vss - tensione di alimentazione negativa |
La tensione di alimentazione può variare tra 2 e 5V, in corrente
continua. Quindi sono adatte batterie, accumulatori, alimentatori stabilizzati
e anche il 5V prelevabile da una presa USB.
Come precedentemente fatto osservare, NON si deve invertire,
neppure per breve tempo, la polarità dell' alimentazione, pena la
distruzione del componente. |
- i rimanenti 6 pin sono utilizzabili per diverse funzioni:
pin |
nome |
funzione |
note |
13 |
RB0 |
I/O digitale |
programmabile come ingresso o uscita |
C1IN+ |
ingresso comparatore 1 + |
ingresso analogico |
AN0 |
ingresso analogico |
modulo ADC |
ICSPDAT |
linea dati per la programmazione |
utilizzato nella programmazione ICSP |
12 |
RB1 |
I/O digitale |
programmabile come ingresso o uscita |
C1IN- |
ingresso comparatore 1 - |
ingresso analogico |
AN1 |
ingresso analogico |
modulo ADC |
ICSPCLK |
linea clock per la programmazione |
utilizzato nella programmazione ICSP |
11 |
RB2 |
I/O digitale |
programmabile come ingresso o uscita |
C1OUT |
uscita comparatore |
livello logico |
AN2 |
ingresso analogico |
modulo ADC |
4 |
RB3 |
Input digitale |
utilizzabile solo come ingresso digitale |
MCLR |
Master Clear |
utilizzabile come ingresso per il reset esterno |
Vpp |
Tensione di programmazione |
utilizzato nella programmazione ICSP |
3 |
RB4 |
I/O digitale |
programmabile come ingresso o uscita |
OSC2 |
oscillatore esterno |
uscita |
CLKOUT |
uscita clock |
segnale a livello logico |
2 |
RB5 |
I/O digitale |
programmabile come ingresso o uscita |
OSC1 |
oscillatore esterno |
ingresso |
CLKIN |
ingresso clock esterno |
segnale a livello logico |
10 |
RC0 |
I/O digitale |
programmabile come ingresso o uscita |
C2IN+ |
ingresso comparatore 2 + |
ingresso analogico |
9 |
RC1 |
I/O digitale |
programmabile come ingresso o uscita |
C2IN- |
ingresso comparatore 2 + |
ingresso analogico |
8 |
RC2 |
I/O digitale |
programmabile come ingresso o uscita |
CVref |
tensione di riferimento |
|
7 |
RC3 |
I/O digitale |
programmabile come ingresso o uscita |
6 |
RC4 |
I/O digitale |
programmabile come ingresso o uscita |
C2OUT |
uscita comparatore 2 |
livello logico |
5 |
RC5 |
I/O digitale |
programmabile come ingresso o uscita |
T0CKI |
Ingresso di conteggio del timer |
Segnale esterno per il TIMER0 |
Ogni pin ha la possibilità di servire fino a quattro diverse funzioni.
Anche se alcune possono essere modificate durante l' esecuzione del programma,
queste funzioni NON possono essere svolte
contemporaneamente.
Quindi occorre
che l' utilizzatore decida quale vuole impiegare per la sua applicazione ed
agisca di conseguenza sui registri di programmazione. |
Fa eccezione la funzione di ICSP (In Circuit Serial Programming),
ovvero la modalità di programmazione in-circuit con cui si scrive nella memoria
programma. Questa funzione non richiede alcuna azione da parte dell'
utilizzatore, ma viene attivata automaticamente all' applicazione della
tensione Vpp. Essa ha lo scopo di programmare il chip, anche se questo si
trova sullo stampato di impiego. Questo è possibile con una connessione ICSP
che troveremo aggiunta in ogni circuito sulle demo board o andremo ad
aggiungere sulla bredboard.
Maggiori informazioni su ICSP
le trovate qui.
Una nota ulteriore: i nomi dei pin sono acronimi delle loro funzioni e sono
anche le label con cui è possibile indicarli in un programma. I compilatori
provvederanno a linkare le label con i valori assoluti e creare l' oggetto
eseguibile.
Nel PIC16F526
i pin di I/O sono raggruppati in due PORTB e PORTC, da 6 bit
ciascuno.
Diversamente dai PIC a 8 o 6 pin:
- quelli che sono definiti GPIO e in PIC a 20 pin
(16F527) sono definiti PORTA, qui sono chiamati PORTB
- l' ingresso per il clock esterno del TIMER0 è spostato su RC5
Vediamo nel dettaglio le varie funzioni.
|