Alcune considerazioni
Non tutti i PIC sono uguali tra di loro, anzi, esistono numerose famiglie
con caratteristiche anche molto differenti tra loro, anche se tutte si rifanno
alla stessa filosofia di progetto che ne rende uniforme la struttura di fondo
e permette la portabilità delle applicazioni e dell' hardware.
In particolare, la programmazione del chip è una fase abbastanza critica e
occorre che il dispositivo di programmazione sia progettato e realizzato
adeguatamente. In HVP la tensione Vpp è indispensabile, ma è tipicamente 13
V, per cui è in grado di danneggiare il chip se applicata impropriamente.
Come pure è necessario rispettare i livelli e i tempi che il costruttore
definisce per la programmazione di ciascun chip.
Per contro, i chip che possono essere programmati a bassa tensione,
richiedono una gestione dei segnali differente ed occorre che il dispositivo
di programmazione e il suo software siano aggiornati al componente voluto.
D'altra parte, la programmazione LV non necessita di una tensione più alta
di quella di funzionamento, ma sottrae un pin all' uso come GPIO.
Va considerato anche che la comunicazione tra dispositivo di programmazione
(o di sviluppo) e chip avviene a frequenze elevate.
PGC è unidirezionale e il clock è generato dal dispositivo di
programmazione.
PGD è una linea bidirezionale, il che vuol dire che è comandata
alternativamente sia dal programmatore, sia dal chip. Siccome i dati sono
scambiati sul fronte del clock, ha particolare importanza che i tempi di
salita e discesa dei segnali sia regolari.
Occorrerà che il cavo di connessione tra il dispositivo di programmazione
e il chip sia il più breve possibile, sicuramente non più lungo di una
ventina di cm, tanto migliore la qualità dei segnali (e quindi la sicurezza
dell' operazione) quanto più corto è il cavo.
Che, per evitare fenomeni di crosstalking tra le linee clock e dati, non
dovrà essere un garbuglio disordinato di conduttori, mentre l' impedenza di
uscita del dispositivo di programmazione dovrà essere la più bassa
possibile.
AVVERTENZA
-
Il pin PGM è utilizzato per abilitare il modo
di programmazione LV.
Solitamente i chip che possono essere programmati LVP arrivano
configurati per questa selezione. Per modificare il bit del CONFIG, occorre
un programmatore HVP e può essere necessario mantenere a livello basso il
pin PGM durante la programmazione.
|
Tips & Tricks
Siccome il connettore di PICkit femmina, è la parte più soggetta ad usura.
inoltre, durante l' uso, è possibile che involontariamente si applichino sforzi
eccessivi al connettore, degradandone la qualità del contatto.
Può essere opportuno non inserire direttamente il PICkit nel connettore del
circuito stampato, ma utilizzare un cavo flessibile intermedio o crearsi un
sistema di irrobustimento meccanico, simile a questo.
Abbiamo visto come ICSP sia facilmente implementabile e permetta
la
programmazione del chip on-board.
Vediamo ora l' ICD.