# Pickit

PICkit è una famiglia di programmatori per microcontrollori PIC ed EEPROM costruita dalla Microchip Technology.
Sono utilizzati per la programmazione e il debug di microcontrollori e per la programmazione di memorie EEPROM, ma alcuni modelli integrano anche degli utili strumenti come un analizzatore logico a 3 canali, e un terminal seriale.

## PICkit 1

Il PICkit 1 venne lanciato sul mercato dalla Microchip Technology il 31 marzo 2003 ad un prezzo di 36 dollari. Senza alcun involucro, consisteva in un programmatore USB montato su un PCB sul quale erano presenti 8 led e un potenziometro. Su un lato della scheda era inoltre presente un'area di prototipazione con uno zoccolo per un MAX232 per poter implementare una comunicazione RS232.

## PICkit 2

Il PICkit 2 introdotto l'11 Luglio 2005 sostituì il PICkit 1. La differenza più rilevante sta nel suo involucro nel quale è contenuto, e tramite un connettore esterno è possibile connette il programmatore / debugger alla scheda sul quale è montato il microcontrollore da programmare tramite ICSP (In Circuit Serial Programming).
All'interno del PICkit 2 è montato un PIC18F2550 con modulo Fullspeed USB. Con l'ultima release del firmware è stato possibile permettere all'utente di programmare ed eseguire il debug della maggior parte dei microcontrollori a 8 e a 16bit nonché i dsPIC. Altra interessante funzione del PICkit 2 è la possibilità di programmare in programmer-to-go (PTG), che può scaricare il file hex e le istruzioni di programmazione in una memoria on-board (128K byte I2C EEPROM o 256 byte EEPROM I2C), per poter programmare il microcontrollore senza l'ausilio di alcun computer.
La microchip sul suo sito ha reso disponibile al pubblico sia gli schemi del programmatore, sia il codice sorgente del firmware (scritto in C), sia i programmi applicativi ( in C#).
Inoltre, il PICkit2 dispone di un analizzatore logico a tre canali con una banda di 500 kHz, e un terminal seriale UART, con la quale è possibile far comunicare secondo lo standard il microcontrollore e il computer a livelli TTL. Queste caratteristiche non erano presenti nel PICkit 3. Tuttavia con il rilascio di "PICkit 3 GUI and Scripting Tool v3.00 BETA", liberamente scaricabile dal sito della microchip si è reso compatibile tutto il software disponibile per pickit2 rendendo di fatto possibili lo scambio di file device ed applicazioni rendendo di nuovo disponibili le funzioni di Programmer To-Go ed analizzatore logico.
Dal rilascio della versione v2.61, PICkit 2 adesso supporta al massimo 4M byte di memoria per il programmatore PTG. Con il PICkit2 tramite adattatore a utilizzando AVRdude è anche possibile programmare alcuni dispositivi della famiglia AVR senza modifiche circuitali.

## PICkit 3

L'11 Novembre 2008 Microchip ha messo in commercio PICkit 3, una versione aggiornata del PICkit 2 con la stessa forma e dimensione ed un nuovo box rosso translucido. Il suo cuore è un più veloce processore pic a 16-bit della serie PIC24F e un range più esteso di tensioni, per adattarsi meglio ai vari tipi di pic in commercio. PICkit 2 e PICkit 3 hanno un regolatore di tensione interno. Questa funzione fa in modo da generare una tensione che va da 2.5 a 5.5 Volts, nel caso del PICkit 3, 2.5 a 5.5 volts, dai 5V dell'USB, a circa 100mA. Entrambe le versioni hanno la funzione di calibrazione dell'uscita con un multimetro, per aumentarne l'accuratezza. In addizione, per alcuni PIC, la tensione MCLR di programmazione può essere generata a circa 13-14 Volt. Questa tensione è richiesta per riprogrammare le memorie flash. Con l'uscita dal mercato del Pickit 2 è stata resa disponibile una release di software chiamata "PICkit 3 GUI and Scripting Tool v3.00 BETA" che rende compatibili tutti gli script e programmi del pickit 2.

## PICkit 4

Il 27 Febbraio 2018 è stato rilasciato il PICkit4. Tra le novità introdotte abbiamo il supporto per il JTAG a 4 fili (il connettore del PICkit4 ha ora 8 pin anziché 6), una migliore sezione di alimentazione che risolve i problemi che affligevano il predecessore, la possibilità di utilizzare la programmazione PTG (Programmer To Go) che prevede l'utilizzo di una scheda microsd da inserire nel retro del PICkit4 unita alla possibilità del programmatore di essere alimentato dalla scheda target.
In aggiunta è stata introdotta la possibilità di programmare i dispositivi della famiglia CEC1702. È stato abbandonato il connettore mini-usb a favore di un micro-usb. A bordo, come cuore del programmatore, al posto di un picmicro come i predecessori, figura un ATSAME70Q21B a 300 MHz che consente velocità di programmazione superiori ai modelli precedenti nonché la caratteristica di non dover ricaricare ogni volta il firmware a seconda del PICmicro da programmare come accadeva sul PICkit3.
Il PICkit4 è supportato a partire dalla versione 4.15 di MPLAB X

## PICkit Serial Analyzer

Il PICkit serial Analyzer è stato pubblicato il 25 Gennaio 2007. Ha la stessa forma del PICkit2 ma non è un programmatore per PICmicro. Si tratta di un sistema di interfacciamento al PC per bus di comunicazione UART sincrona e asincrona, I2C e SPI.