Um dos mais famosos
microcontroladores do mercado é o
PIC, fabricado pela Microchip.
Para trabalhar com os mesmos, você segue basicamente 3 etapas:
- Escrever um programa;
- Compilar este programa;
- Gravar o programa compilado no microcontrolador.
O problema está justamente em gravar o programa, pois apesar do gravador de PIC mais famoso de todos, o
PICkit 2 da própria Microchip, ser facilmente encontrado no mercado, vem sempre com um software de fácil instalação para Windows e não para
GNU/Linux.
E como todo hardware precisa de um software para controlá-lo, ficamos, a princípio, impossibilitados de utilizá-lo no GNU/Linux.
Para contornar o problema, a Microchip criou um software que nos permite utilizar o PICkit 2 no GNU/Linux, seu nome é
PK2CDM, e este artigo tem por objetivo mostrar como instalá-lo e utilizá-lo no GNU/Linux.
Obs.: Este tutorial baseia-se em
Linux Mint e
Ubuntu, contudo, acredito que funcione em qualquer outra distribuição GNU/Linux.
Seguiremos agora com apenas 5 passos, e ao final, teremos o gravador PICkit 2 funcionando no GNU/Linux.
* É recomendado que todas as operações dos passos 1 ao 4 sejam feitas com o dispositivo PICkit 2 desconectado do USB de seu computador.
Passo 1
- Aquisição dos softwares:
PK2CMD, libusb-dev e
build-essential.
Podemos adquirir o PK2CMD fazendo o download no próprio site da Microchip, pelo link:
Dentro do site, procure a opção:
PK2CMD V1.20 Linux & Mac OS X Source Code with Makefile
Agora precisamos instalar o "libusb-dev" e o "build-essential", vá para o terminal:
sudo apt-get install libusb-dev
$ sudo apt-get install build-essential
Passo 2
- Criar um grupo de trabalho
microchip.
Ainda no terminal, precisamos criar um grupo de trabalho chamado "microchip".
sudo addgroup microchip
Siga adicionando o seu
username ao grupo "microchip" (no meu caso, meu username é "ro"):
sudo adduser ro microchip
Passo 3
- Criação do arquivo
026_microchip.rules.
O arquivo "026_microchip.rules" não vem com o PK2CMD que você baixou do site da Microchip, porém, sem ele, nada irá funcionar corretamente, por isso você terá que criá-lo.
- No terminal do Ubuntu:
gedit 026_microchip.rules
Espere o editor abrir.
- No terminal do Linux Mint:
kate 026_microchip.rules
Espere o editor abrir.
Dentro do editor, cole o seguinte conteúdo e em seguida, mande salvar:
# PICkit
SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="0032", MODE="0660", GROUP="microchip" SysFS
idVendor {} == "04d8", SysFS idProduct {} == "0032", MODE = "0660", GROUP = "microchip"
#PICKit2 # PICkit2
SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="0033", MODE="0660", GROUP="microchip" SysFS
idVendor {} == "04d8", SysFS idProduct {} == "0033", MODE = "0660", GROUP = "microchip"
#ICD2 # ICD2
SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="8000", MODE="0660", GROUP="microchip" SysFS
idVendor {} == "04d8", SysFS idProduct {} == "8000", MODE = "0660", GROUP = "microchip"
#ICD21 # ICD21
SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="8001", MODE="0660", GROUP="microchip" SysFS
idVendor {} == "04d8", SysFS idProduct {} == "8001", MODE = "0660", GROUP = "microchip"
Feche o editor e pelo terminal, copie o novo arquivo "026_microchip.rules" para
/etc/udev/rules.d.
Segue o comando:
sudo cp 026_microchip.rules /etc/udev/rules.d
Passo 4
- Instalando o PK2CMD.
Se você está utilizando Ubuntu ou Linux Mint, provavelmente o conteúdo que baixou do site da Microchip foi parar na pasta Download. Extraia seu conteúdo compactado e abra o terminal.
Via terminal, entre na pasta com o conteúdo do PK2CMD e trabalhe o mesmo. Segue instruções:
cd /downloads/pk2cmdv1.20LinuxMacSource
Obs.: Considerando que o mesmo está na pasta
Downloads.
make linux
$ chmod +x pk2cmd
$ sudo cp pk2cmd /usr/bin/
$ chmod -x PK2DeviceFile.dat
$ sudo cp PK2DeviceFile.dat /usr/bin/
Passo 5
- Testando.
Se você seguiu à risca este tutorial e não causou nenhum erro, parabéns. Pois você já pode desfrutar do gravador PICkit 2 (via PK2CMD) no GNU/Linux.
Conecte o dispositivo PICkit2 no USB de seu computador e pelo terminal digite:
sudo pk2cmd -?v
Se tudo tiver certo, os LEDs de indicação do PICkit 2 irão piscar e você terá o seguinte resultado em sua tela:
"Executable Version: 1.20.00"
"Device File Version: 1.55.00"
"OS Firmware Version: 2.32.00"
"Operation Succeeded"
Considerações finais
Uma dica, caso não tenha funcionado e você tiver certeza de que seguiu todos os passos, é reiniciar o computador com o dispositivo PICkit 2 ligado ao USB.
- Como utilizar o PK2CMD para gravar um microcontrolador PIC?
Você fará a gravação via terminal, e neste exemplo, vamos considerar que queremos gravar um arquivo chamado "arquivo.hex" em um PIC16F628A, um dos mais famosos microcontroladores da Microchip:
sudo pk2cmd -Ppic16f628a -M -Farquivo.hex
Obs.: A utilização do
sudo antes do comando de gravação é recomendada, mas pode não ser necessária, cabe a você testar. Em meu computador, mostrou-se necessária no Linux Mint, porém, descartável no Ubuntu.
Legenda:
- -P → Identifica o microcontrolador.
- -F → Informa o arquivo a ser gravado.
- -M → Manda gravar na memoria do PIC.
Boa sorte.