Alcune domande comuni
Quali sono i tools di sviluppo ?
Quelli prodotti da Microchip si dividono grosso modo in tre gruppi:
- i PICkit, a basso costo
- gli ICD, di costo medio
- REAL ICE, di costo più elevato, ma con prestazioni maggiori
La scelta dipende dal livello del lavoro che si deve svolgere e dalla somma
che si vuole spendere.
Esistono anche prodotti di terze parti: ad esempio Mikroelektronika dispone
per le sue EasyPIC di un sistema su USB integrato o di un modulo esterno.
Così pure altri produttori.
Quali chip possono essere debuggati con ICD ?
Per la lista completa dei PIC programmabili e dubuggabili, si rimanda alla
Development Tools Home di Microchip, dove, nelle documentazioni relative ai tools di sviluppo si
trovano gli elenchi.
Esiste anche una via molto semplice per conoscere quali tools si adattano a
quali PIC attraverso MPLAB IDE.
Qui possiamo evidenziare una cosa poco nota.
Una certa parte dei PIC, per le ragioni sopra dette, non dispone del
modulo di debug integrato.
Occorre acquistare un adattatore (header) che
contiene una versione speciale del chip in cui è stato aggiunto questo modulo
oppure un chip strettamente analogo.
Non hanno costi stratosferici, ma comunque costano, per cui questo va valutato
per la scelta del chip da utilizzare.
Microchip fornisce e tiene aggiornata una lista, di cui presentiamo una copia
nella tabella qui sotto.
Per i chip non elencati e per aggiornamenti, è opportuno consultare il sito.
Va notato che alcuni header non permettono una completa emulazione. Dove
segnalato, occorre consultare la documentazione del prodotto per verificare in
cosa consistano le limitazioni.
PIC che
richiedono un header per il debug
|
PIC
|
Pin
|
Header
P/N
|
ICE/ICD
Usato
|
Vdd
Max
|
PIC10F200/2/4/6
|
8/14
|
AC162059
|
PIC16F505-ICD
|
5.5V
|
PIC10F220/2
|
8/14
|
AC162070
|
PIC16F506-ICD
|
5.5V
|
PIC12F508/509
|
8/14
|
AC162059
|
PIC16F505-ICD
|
5.5V
|
PIC12F510
|
8/14
|
AC162070
|
PIC16F506-ICD
|
5.5V
|
PIC12F519
|
8/14
|
AC162096
|
PIC16F526-ICD
|
5.5V
|
PIC12F609/HV609
|
28
|
AC162083
|
PIC16F616-ICD
|
5.5V
|
PIC12F615/HV615
|
28
|
AC162083
|
PIC16F616-ICD
|
5.5V
|
PIC12F629
|
8
|
AC162050
|
PIC12F675-ICD(1)
|
5.5V
|
PIC12F635
|
14
|
AC162057
|
PIC16F636-ICD
|
5.5V
|
PIC12F675
|
8
|
AC162050
|
PIC12F675-ICD(1)
|
5.5V
|
PIC12F683
|
8
|
AC162058
|
PIC12F683-ICD
|
5.5V
|
PIC16F505
|
8/14
|
AC162059
|
PIC16F505-ICD
|
5.5V
|
PIC16F506
|
8/14
|
AC162070
|
PIC16F506-ICD
|
5.5V
|
PIC16F526
|
8/14
|
AC162096
|
PIC16F526-ICD
|
5.5V
|
PIC16F610/HV610
|
14/16
|
AC162083
|
PIC16F616-ICD
|
5.5V
|
PIC16F616/HV616
|
14/16
|
AC162083
|
PIC16F616-ICD
|
5.5V
|
PIC16F627A/628A
|
18
|
AC162053
|
PIC16F648A-ICD
|
5.5V
|
PIC16F630
|
14
|
AC162052
|
PIC16F676-ICD
|
5.5V
|
PIC16F631
|
20
|
AC162061
|
PIC16F690-ICD
|
5.5V
|
PIC16F636
|
14
|
AC162057
|
PIC16F636-ICD
|
5.5V
|
PIC16F639
(Dual die)
|
20
|
AC162066
|
PIC16F636-ICD
|
5.5V
|
PIC16F648A
|
18
|
AC162053
|
PIC16F648A-ICD
|
5.5V
|
PIC16F676
|
14
|
AC162052
|
PIC16F676-ICD
|
5.5V
|
PIC16F677
|
20
|
AC162061
|
PIC16F690-ICD
|
5.5V
|
PIC16F684
|
14
|
AC162055
|
PIC16F684-ICD
|
5.5V
|
PIC16F685/687
|
20
|
AC162061
|
PIC16F690-ICD
|
5.5V
|
PIC16F688
|
14
|
AC162056
|
PIC16F688-ICD
|
5.5V
|
PIC16F689/690
|
20
|
AC162061
|
PIC16F690-ICD
|
5.5V
|
PIC16F716
|
18
|
AC162054
|
PIC16F716-ICD(1)
|
5.5V
|
PIC16F785/HV785
|
20
|
AC162060
|
PIC16F785-ICD
|
5.5V
|
PIC18F13K50
PIC18F14K50
|
20
|
AC244023
|
PIC18F14K50-ICE
|
5.5V
|
PIC18LF13K50
PIC18LF14K50
|
20
|
AC244024
|
PIC18LF14K50-ICE
|
3.6V
2.75V(2)
|
Nota
1: Questi ICE/ICD hanno alcune limitazioni nell' emulazione. Consultare
i manuali relativi per maggiori dettagli.
|
Inoltre, per non sottrarre all' uso i due pin usati per la comunicazione
seriale, esiste pure una soluzione: Microchip mette a disposizione degli
header speciali che permettono di accedere al debug integrato senza perdita di pin,
utilizzandone una coppia "shadow".
Questa funzione è disponibile
essenzialmente sui pic enhanced e sui PIC 24/33.
HEADERS
|
PIC
|
Pin
|
Header
P/N
|
ICE/ICD
utilizzato
|
Vdd
Max
|
PIC18F1230/1330
|
28
|
AC162078
|
PIC18F1330-ICD
|
5.5V
|
PIC18F24J10
PIC18F25J10
|
28/40
|
AC162067
|
PIC18F45J10-ICE
|
3.6V
|
PIC18LF24J10
PIC18LF25J10
|
3.6V
2.5V(1)
|
PIC18F44J10
PIC18F45J10
|
3.6V
|
PIC18LF44J10
PIC18LF45J10
|
3.6V
2.75V(1)
|
PIC18F44J10
PIC18F45J10
|
44
|
AC162074
|
PIC18F45J10-ICE
|
3.6V
|
PIC18LF44J10
PIC18LF45J10
|
3.6V
2.75V(1)
|
PIC18F63J11
PIC18F63J90
PIC18F64J11
PIC18F64J16
PIC18F64J90
PIC18F64J95
PIC18F65J11
PIC18F65J90
|
64/80
|
AC162079
|
PIC18F85J90-ICE
|
3.6V
|
PIC18F83J11
PIC18F83J90
PIC18F84J11
PIC18F84J16
PIC18F84J90
PIC18F84J95
PIC18F85J11
PIC18F85J90
|
PIC18F65J10
PIC18F65J15
PIC18F66J10
PIC18F66J15
PIC18F67J10
|
64/80
|
AC162062
|
PIC18F87J10-ICE
|
3.6V
|
PIC18F85J10
PIC18F85J15
PIC18F86J10
PIC18F86J15
PIC18F87J10
|
PIC18F65J16
PIC18F66J11
PIC18F66J16
PIC18F67J11
|
64/80
|
AC162091
|
PIC18F87J11-ICE
|
3.6V
|
PIC18F85J16
PIC18F86J11
PIC18F86J16
PIC18F87J11
|
PIC18F65J50
PIC18F65J55
PIC18F66J50
PIC18F66J55
PIC18F67J50
|
64/80
|
AC162087
|
PIC18F87J50-ICE
|
3.6V
|
PIC18F85J50
PIC18F85J55
PIC18F86J50
PIC18F86J55
PIC18F87J50
|
PIC18F66J60
PIC18F66J65
PIC18F67J60
|
64/80/
100
|
AC162064
|
PIC18F97J60-ICE
|
3.6V
|
PIC18F86J60
PIC18F86J65
PIC18F87J60
|
PIC18F96J60
PIC18F96J65
PIC18F97J60
|
PIC24FJ16GA002
PIC24FJ32GA002
PIC24FJ48GA002
PIC24FJ64GA002
|
28
|
AC162088
|
PIC24FJ64GA004-ICE
|
3.6V
|
PIC24FJ16GA004
PIC24FJ32GA004
PIC24FJ48GA004
PIC24FJ64GA004
|
44
|
AC162094
|
PIC24FJ64GA006
PIC24FJ64GA008
PIC24FJ64GA010
|
64/80/
100
|
AC162065
AC244022
|
PIC24FJ128GA010-ICE
|
3.6V
|
PIC24FJ96GA006
PIC24FJ96GA008
PIC24FJ96GA010
|
PIC24FJ128GA006
PIC24FJ128GA008
PIC24FJ128GA010
|
dsPIC33FJ
GP
|
64/80/
100
|
AC244020
|
dsPIC33FJ256-ICE
|
3.6V
|
dsPIC33FJ
MC
|
AC244021
|