Utilizando PICkit 2 no GNU/Linux
Apesar do gravador de PIC mais famoso de todos, o PICkit 2 da Microchip ser facilmente encontrado no mercado, vem sempre com um software de fácil instalação para Windows. Mas não para GNU/Linux, portanto, ficamos a princípio, impossibilitados de utilizá-lo.
Apresentação
Um dos mais famosos microcontroladores do mercado é o PIC, fabricado pela Microchip.
Para trabalhar com os mesmos, você segue basicamente 3 etapas:
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.
Podemos adquirir o PK2CMD fazendo o download no próprio site da Microchip, pelo link:
Dentro do site, procure a opção:
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
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
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:
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
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/
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:
- 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:
Boa sorte.
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"
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.