Gravação de microcontroladores PIC via USB pelo terminal do Linux

A transferência de programas para os microcontroladores é normalmente efetuada através de um hardware de gravação específico. Através desta ferramenta é possível efetuar a descarga de programas para o microcontrolador diretamente de uma porta USB de qualquer computador com o sistema operacional Linux.

[ Hits: 46.155 ]

Por: Cesar Lestat em 10/08/2010


Realizando a gravação via USB pelo terminal do Linux



Esta aplicação é realizada de forma simples em linha de comando no terminal do Linux. Inicialmente, é necessário ter instalada a biblioteca de desenvolvimento libhid, a partir da linha de comando:

sudo apt-get install libhid-dev

Para iniciar a gravação com linhas de comando é importante seguir os seguintes passos:

1. Mova a pasta de arquivos SanUSB obtida do grupo www.tinyurl.com/SanUSB para um diretório do Linux como, por exemplo, a pasta pessoal.

2. Grave no microcontrolador, somente uma vez, com um gravador específico para PIC, o gerenciador de gravação pela USB GerenciadorLinux.hex.

2. Pelo terminal do Linux, acesse a pasta de arquivos SanUSB utilizando alguns comandos básicos descritos abaixo:
  • pwd -> mostra o diretório atual;
  • find /home -name sanusb -> procura no diretório home o arquivo sanusb;
  • cd -> retorna diretório padrão home;
  • cd .. -> sai do diretório atual;
  • cd ./dir -> entra no diretório dir;
  • ls -> lista os arquivos de um diretório.

Para gravar no Linux é necessário estar logado com permissão para acessar a porta USB como, por exemplo, super-usuário. A figura 4 mostra o exemplo de um script do processo de acesso à pasta e também do processo de gravação:

Figura 4: Exemplo de script do processo de acesso à pasta e também do processo de gravação
4. Após entrar na pasta SanUSB, acesse o conteúdo do arquivo sanusb digitando:

. /sanusb-h

5. Coloque o circuito SanUSB em modo de gravação (pino 1 ligado ao Gnd através de botão ou jump) e conecte o cabo USB do circuito no PC. Se o circuito SanUSB estiver correto acenderá o led do pino B7.

6. Para gravar no microcontrolador, o firmware desejado, como o exemplo1.hex, deve estar mesmo diretório do arquivo sanusb, então para a gravação via USB, digita-se:

. /sanusb -w exemplo1.hex

7. Depois de gravar, remova o botão ou jump de gravação, então reset digitando:

. /sanusb -r

Para programar novamente, basta colocar o jump de gravação, desconecte e conecte o cabo USB de alimentação e repita os passos anteriores a partir do passo 6. Se o microcontrolador não for reconhecido, feche o terminal, conecte o microcontrolador em outra porta USB, abra um novo terminal e repita os passos anteriores a partir do passo 4.

É isso, espero ter contribuído com essa ferramenta livre e de fácil acesso para gravação de microcontroladores PIC via USB.

Um abraço.

Página anterior    

Páginas do artigo
   1. Ferramenta de gravação USB de microcontroladores PIC pelo terminal do Linux
   2. Circuito de gravação USB pelo terminal do Linux
   3. Realizando a gravação via USB pelo terminal do Linux
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Hardware Lister (lshw) - Relatório simples de seu hardware

Leitor de impressão digital Futronic FS80 no Linux

BIOS, barramentos e dispositivos

Configurando a placa de som C-MEDIA (CM8738) no Slackware

Access Point com cartão Atheros em Slackware 12.0

  
Comentários
[1] Comentário enviado por julio_hoffimann em 10/08/2010 - 07:24h

Oi Cesar,

Parabéns pelo artigo! Apesar de nunca ter trabalhado com PIC, é bom saber que já existem artigos aqui no VOL. Quando tiver mais tempo, talvez me atreva a estudá-los.

Abraço!

[2] Comentário enviado por Lisandro em 10/08/2010 - 07:47h

Ótimo artigo. Parabéns.

[3] Comentário enviado por removido em 10/08/2010 - 09:45h

Bom artigo!

[4] Comentário enviado por edirlf em 10/08/2010 - 18:32h

Muito legal seu artigo. Parabéns.

[5] Comentário enviado por flaviodm em 13/08/2010 - 09:05h

Amigo, ótimo artigo, gostaria de saber se o mesmo circuito funciona para microcontroladores da série pic16f62X

Obrigado e meus parabéns pela iniciativa.

[6] Comentário enviado por cesarlestat em 15/08/2010 - 18:23h

Prezado Flávio,
essa ferramenta só é possível para microcontroladores com interface USB interna, que é o caso da família PIC18Fxx5x ( PIC18F2550, PIC18F4550, PIC18F2455, etc.). A família 16F não apresenta interface USB.
Um abraço,

[7] Comentário enviado por daiane tnn em 27/08/2010 - 18:09h

Trainning Education oferece curso e treinamento PMI PMP Gerenciamento de Projetos Preparatório para certificação Project Management Professional

A Trainning Education realiza nas principais capitais brasileiras o cursos e treinamento PMI PMP Gerenciamento de Projetos Preparatório para certificação Project Management Professional. Nossos cursos preparam profissionalmente nossos alunos para certificação do PMI PMP. Profissionais capacitados e certificados pelo PMI como PMP são mais bem remunerados na área de Projetos Project. No site da Trainning Education www.trainning.com.br nossos alunos podem fazer download grátis de apostila, simulado para certificação, softwares, livros, Curso e Treinamento PMP PMI, Project, Ferramentas de Projetos, SAP, SAP Abap, SAP BW, SAP Basis, ITIL, Cobit, PMi PMP, PMBOK, Mini SAP, Analista de Negócios Babok 2.0, Abap, Project, entre outros www.trainning.com.br/download.asp . Nosso curso PMI PMP já se encontra na 4º edição do PMBOK do PMI. Para realizar sua inscrição no curso PMI PMP Gerenciamento de Projetos Preparatório para certificação Project Management Professional, acesse www.trainning.com.br/inscricao.asp ou www.trainning.com.br/pmi_exameprep_pmp4edicao.asp ou ligue para o telefone 11 3171-2002. A Trainning Education também oferece aluguel locação de sala, auditório e laboratório de informática. Acesse www.trainning.com.br/aluguel_salas.asp .

[8] Comentário enviado por brunokino em 18/09/2010 - 14:08h

Muito bom seu artigo Cesar.

Poderia descrever melhor a lista de materiais?

Obrigado,

Bruno Kinoshita

[9] Comentário enviado por cesarlestat em 18/09/2010 - 14:48h

Caro, Bruno a lista de materiais, demonstrada no circuito da Figura 2 para utilizar esta ferramenta é:
*************************************************
1 microcontrolador PIC 18F2550 (ou qualquer outro da família PIC USB como o 18F2455 e o 18F4550);
1 cristal de 20MHz;
2 capacitores de 22pF;
2 capacitores de 1uF (um para a USB no pino 14 e outro capacitor de filtro entre o +5V conectado no pino 20 e o Gnd conectado no pino 19) ;
3 leds e 3 resistores de 390 (só é necessário um led no pino B7 para avisar que o microcontrolador está pronto para gravar);
1 resistor de 2k2 e um botão ou fio ou jump para gravação no pino 1;
1 Cabo USB qualquer.
**************************************************

Mais informações na pasta completa para esta ferramenta em http://www.4shared.com/file/sIZwBP4r/100725SanUSB.html

Boa sorte,

[10] Comentário enviado por cesarlestat em 16/10/2010 - 15:08h

Está disponível também o instalador automático.deb SanUSB para instalar em qualquer máquina com Linux Ubuntu (10.04, equivalente ou posterior) dando apenas dois cliques. Depois de instalado ele fica em Aplicativos -> acessórios. Disponível em:
http://www.4shared.com/file/3mhWZS5g/sanusb.html

[11] Comentário enviado por cesarlestat em 14/01/2011 - 13:47h

Dica de circuito com PIC18F2550 e OS Linux:

http://teago.futuria.com.br/tip/5/

[12] Comentário enviado por cesarlestat em 19/01/2011 - 22:35h

Aplicação da ferramenta SanUSB em projeto de energias renováveis: http://www.mdpi.com/1424-8220/11/1/743/pdf

[13] Comentário enviado por wellingtoncunha em 15/03/2011 - 17:34h

Olá Nao existe algo mais generico não?
alguem sabe de alguma coisa que sirva no slackware e de preferencia que nao precise usar o WINE?

[14] Comentário enviado por cesarlestat em 15/03/2011 - 22:14h

Olá, esta ferramenta computacional funciona também em Linux com o compilador livre SDCC e a IDE Piklab. Mais detalhes em breve nos exemplos da pasta: http://www.4shared.com/file/sIZwBP4r/100725SanUSB.html

[15] Comentário enviado por cesarlestat em 22/03/2011 - 21:38h

É possível também gravar microcontroladores PIC diretamente pela porta USB no sistema operacional Mac OS X, basta seguir o tutorial contido na mesma pasta completa http://www.4shared.com/file/sIZwBP4r/100725SanUSB.html , como também gravar o microcontrolador wireless (sem fio) no padrão Zigbee, como mostra o video: http://www.youtube.com/watch?v=_Pbq2eYha_c

[16] Comentário enviado por cesarlestat em 01/09/2011 - 10:14h

Grupo interativo sobre desenvolvimento de projetos com microcontroladores;

www.tinyurl.com/SanUSB . Participe.



[18] Comentário enviado por sanusb em 06/12/2014 - 20:47h

Livro indicado que descreve este e outros assuntos relacionados: http://www.lcm.com.br/site/livros/detalhesLivro/f/desenvolvimento-de-sistemas-de-aquisicao-de-dados-... (Desenvolvimento de sistemas de aquisição de dados sem fio).

Mais detalhes em: http://sanusb.blogspot.com.br/2014/11/divulgacao-de-livro-publicado.html


Contribuir com comentário