L' hardware di ICSP
Da Microchip sono implementati tre diversi connettori per ISP/ICD:
-
RJ-11 6 poli
-
spine passo 2.54 6 poli
-
spine, passo 1.81 6 poli
Altri costruttori di schede e sistemi di sviluppo e programmazione
possono utilizzare altre connessioni, ma, qualunque sia il numero dei pin
usati, solamente quelli indicati sono necessari.
Segnale |
Target pin |
Vpp |
1 |
Vdd |
2 |
GND |
3 |
PGD |
4 |
PGC |
5 |
non usato |
6 |
La configurazione tipica dell' hardware, come consigliato da
Microchip:
|
In generale, i pin utilizzati per la comunicazione seriale sono
RB6 e RB7, per i PIC che dispongono di questo port. Altri PIC
potranno utilizzare altri pin. Il fogliodati indicherà chiaramente
la situazione relativa.
I pin interessati all' ICSP, GND escluso, devo essere separati
dal resto del circuito in modo tale che il carico applicato dai
componenti sul circuito stampato non danneggi i segnali di
programmazione (o di debug). |
In particolare:
-
Se MCLR è utilizzato come reset e viene cablato un condensatore,
occorrerà separare l' RC del reset dal segnale di Vpp con un diodo (ad
esempio un piccolo Schottky, serie BAT42 o simile).
Se però viene usata solamente la tipica resistenza da 10k, è sufficiente
una separazione con una resistenza da 1 k, o anche niente.
Se c'è un pulsante di reset, ovviamente non va utilizzato durante la
programmazione.
-
Se il circuito ha un proprio alimentatore, è opportuno che la
Vdd sia separata da una resistenza o da un diodo; questo è necessario
solo se si alimenta il circuito attraverso il dispositivo di
programmazione e l' integrato di alimentazione non è in grado di
assorbire corrente (per il classico 7805, basta inserire il diodo di
protezione tra in e out, come consigliato dalle application del
componente).
Se il circuito, durante la programmazione, è alimentato dall'
alimentatore on board e il dispositivo di programmazione non fornisce la
Vdd, non ci sono problemi.
-
PGC-PGD : sui pin di comunicazione non devono esserci
condensatori o carichi tali da ridurre ampiezza o velocità dei segnali.
Questo si ottiene con due jumper che andranno aperti durante la
programmazione, oppure due resistenze.
I connettori di ICSP
Sono stati previsti connettori low cost.
RJ-11 jack
-
E' il classico connettore telefonico a 6 poli. E' il connettore degli
ICD e del REal ICE di Microchip.
E' semplice da innestare, facile da reperire.
Deve essere di buona qualità, altrimenti se azionato molte volte rischia
di perdere di affidabilità (quindi niente cineserie con contatti non
dorati).
Occorre il cavo telefonico specifico e l' apposito utensile per chiudere i
contatti, ma per fortuna si tratta di oggetti di costo limitato e di
facile reperimento.
Questo connettore permette un collegamento diretto con REAL ICE e gli ICD.
|
Esistono comunque in commercio cavi già pronti o adattatori per
passare dall' RJ ai pin separati, tipici dei PICkit.
A lato, l' AC244003
di Microchip che converte una connessione RJ-11 (da Real ICe o ICD)
a spine passo 0.1" (PICkit) |
.1 inch header
-
E' la più semplice per quanto riguarda il connettore sul
circuito stampato.
-
|
Le classiche spine quadrate da 0.025" con passo 0.1" (2.54 mm).
E' un connettore estremamente robusto e poco costoso.
|
Normalmente si trova il maschio sul circuito stampato dell' applicazione e
la parte femmina è quella volante di connessione.
Normalmente non ha chiave di polarizzazione per evitare l' inserzione al
contrario (i PICkit non l' hanno), ma è possibile adottarne una.
Questo connettore permette un collegamento diretto con i PICkit.
|
Connettore (femmina) di collegamento ICSP/ICD dei PICkit2 e
PICkit3.
Il pin 6 ha funzioni ausiliarie, in quanto i PICkit utilizzano il
metodo HVP.
Il pin 1 è chiaramente indicato da una freccia serigrafata sul
corpo del PICkit. |
Esistono in commercio cavi e adattatori per passare da questo
connettore all' RJ
A lato, PICKkit3 con adattatore che converte il connettore a spine
in connettore RJ-11. |
|
A seconda delle necessità potrà essere del tipo diritto (perpendicolare
al circuito stampato), come in foto, o ripiegato a novanta gradi
(parallelo al circuito stampato).
|
|
|
Esempi di implementazione. |
< .1 inch header
Alcuni prodotti impiegano un connettore a 6 poli di dimensioni molto
ridotte. Ad esempio, all' interno del PICkit3 esiste una presa ICSP
realizzata con un Molex passo (il connettore non è in dotazione:
esiste solo la foratura sullo stampato per installarlo).
Si possono usare anche altri tipo di connettori miniaturizzati, ma si tratta
di soluzioni che, date le piccole dimensioni, non sono consigliabili per
sperimentazione e didattica, anche per la difficoltà di troavre in
commercio questi connettori e la necessità di disporre di attrezzi
particolari per il crimpaggio dei pin
POGO cables
Per la produzione industriale si possono adottare soluzioni diverse, ad
esempi questi POGO
cables di AU Group Electronics.
Si tratta di un connettore passo .1", ma con test point a molla.
|
|
Questo consente di lasciare sul circuito stampato
solamente delle piazzole dorate a cui i test pad andranno poggiati a
pressione durante la programmazione, il che riduce il costo del
prodotto finale. |
Altri connettori
ulla vieta di ideare una propria connessione, ma non se ne vede l'
utilità, dato che essa servirà per collegarsi ai dispositivi di
programmazione e sviluppo esistenti.
|
L' avere sistemi di interconnessione diversi da' origine alla
necessità di realizzare cavi di adattamento.
Ad esempio, qui a lato il cavo di adattamento necessario per
passare da ICSP Microchip a IDC10 dei sistemi di Mikroelektronica
|
|