CARATTERISTICHE GENERALI DELLA FAMIGLIA
BASELINE
-
Questi PIC sono spesso disponibili a coppie, con
caratteristiche identiche e differenziati solo dalla quantità di memoria
integrata. Solitamente il numero maggiore della coppia è quello più
dotato (es. 10F200/10F202).
-
Spesso un elemento in package a 8 pin (12F) ha una
controparte in package a 14 pin, con caratteristiche analoghe, derivando
dalla stessa matrice; il modello a più pin dispone di più I/O, più
memoria, più funzioni (es. 12F508/509 e 16F505)
-
Non hanno una gestione interrupt
-
Non hanno ICD integrato (serve un header per l'emulazione)
16F527 è al limite della famiglia Baseline ed ha
caratteristiche più simili ai Midrange
MEMORIA PROGRAMMA
-
in FLASH, variabile tra 256/512/1k/2k
-
divisa in pagine da 512 (per i chip con più di 512)
-
selezione delle pagine con i bit PAx dello STATUS
-
ultima locazione dell' area FLASH contenente il valore di
calibrazione dell' oscillatore interno
-
STACK a due soli livelli
MEMORIA RAM
-
da 16 a 134 bytes
-
divisa in banchi da 32 bytes (se maggiore di 32 bytes)
-
selezione dei banchi con i bit 7:5 del registro FSR
-
replica nei banchi superiori di parte del banco 0 (alias),
comprendente l'area registri SFR e una piccola quantità di RAM condivisa;
nella maggior parte dei chip non serve commutare il banco per accedere a
queste risorse (ma per alcuni modelli gli SFR sono divisi su più banchi).
MEMORIA EEPROM
I/O DIGITALI
-
General Purpose I/O in quantità dipendente dai pin
(numero pin - 2)
-
MCLR configurabile come input digitale
-
GPx per dispositivi a 8 pin, PORTB/C per i 14pin,
PORTA/B/C per quelli 20 pin
-
pinout perfettamente sovrapponibile sul circuito stampato per
dispositivi a 8/14/20 pin (esclusi 10F)
PERIFERICHE INTEGRATE
-
Oscillatore interno 4 MHz per i 10F con possibilità di
uscita di Fosc/4
Oscillatore interno + oscillatore esterno (alcuni fino a 20 MHz) per gli
altri . Alcuni modelli hanno la possibilità di selezionare 4/8 MHz per
l'oscillatore interno.
-
TIMER0 e WDT con prescaler in comune
-
ADC 8 bit. 2-3 canali a seconda del package
-
Comparatore (1 o 2 a seconda del numero di pin
disponibili)
-
wakeup da sleep per cambio di stato sui pin
(programmabile, con weak pull-up)
-
manca PWRT programmabile, sostituito da DRT fisso
-
manca BOR
-
non dispongono di moduli di comunicazione (ad eccezione di 16F707 che
ha 1 UART e 1 MSSP)
SOFTWARE
-
set istruzioni base da 33 opcodes;
la maggior parte a 1 ciclo
-
return sostituito da retlw
-
mancano istruzioni come addlw e sublw
-
si utilizzano gli opcodes speciali option e tris
-
la call agisce
in qualsiasi caso solo nei primi 256 indirizzi di ogni pagina
-
lo stack a due livelli limita il numero delle chiamate;
non ci sono meccanismi contro l'overflow dello stack
-
indirizzamento indiretto con FSR e INDF
-
Comparatore e WDT generano un reset per il wakeup da
sleep
-
la discriminazione della causa del reset diventa un
fattore essenziale in alternativa all' interrupt mancante
-
ADC e Timer0 non sono sorgenti di wakeup
-
mancando un registro di LAT l' azione sugli I/O può
essere causa di RMW
-
l' ultima locazione utile della memoria programma
contiene il valore di calibrazione dell' oscillatore interno e non
deve essere alterata in fase di programmazione
I componenti
Altre informazioni utili
LINKs
Il modo migliore per essere aggiornati sugli sviluppi dei PIC è quello di
fare riferimento al sito del costruttore.
|