Página 1 de 1

18F4550 Bootloader

MensagemEnviado: 13 Mar 2012 15:24
por wandersonrainer
Prezados,

estou tentando implementar um bootloader empregando o PIC18F4550 em um hardware semelhante à PICDEM.

1) Montei o hardware:

Imagem

2) Compilei o programa MCHPUSB da pasta Bootloader - Firmware for PIC18F4550 Family Devices empregando o MPLAB/C18.
3) O arquivo compilado em (2) foi transferido para a placa montada em (1) usando o próprio MPLAB e como circuito gravador utilizei o PICKIT2.
4) Conectei o hardware (1) na USB e o Windows 7 pediu o driver.
5) Indiquei o driver da pasta c:\Microchip Solutions\USB Tools\MCHPUSB Custom Driver
6) O hardware foi reconhecido normalmente pelo Windows 7
7) Abri o programa PICDEM FS USB DEMO TOOL
8) Aparece a opção para selecionar a placa PICDEM FS USB 0 (Boot)
9) Seleciono a opção apresentada no item anterior

Daqui pra frente não sei se estou fazendo certo. Continuando:

10) Crio um programa bem simples para piscar os LED's da placa utilizando o compilador CCS.
11) No início do programa incluo as seguintes linhas:
#build(reset=0x800, interrupt=0x808)
#org 0x000, 0x7ff { }

12) Compilo o programa no CCS e ele gera o .hex normalmente
13) Volto ao PICDEM FS USB DEMO TOOL
14) Seleciono a opção Load Hex File
15) Ele me fornece a mensagem da imagem:

Imagem

16) Seleciono a opção NO, para ele utilizar a configuração padrão da placa
17) Clico na opção PROGRAM DEVICE
18) A mensagem apresentada é a da imagem:

Imagem

Ao que tudo indica, o meu programa foi gravado normalmente sem alterar o bootloader, mas ele não funciona mesmo assim.
Eu estaria fazendo algo incorreto?

Desde já agradeço a ajuda.

MensagemEnviado: 13 Mar 2012 20:35
por marcelo campos
Tem um detalhe: o seu programa está com os fuse bits diferentes do que o pic realmente está programado, está levando isto com consideração no seu programa ? (os importantes: velocidade, portb, reset, lvp,...)

Este exemplo da mchp sobre boot Usb não é muito bom (alias não é nada bom) ele inclusive é capaz de corromper (gravar conforme seu hex) os fuse bits e depois não reconhecer mais usb

O CCS tem umas diferenças no org, veja em nossa hp no link: http://www.smartradio.com.br/loja-pic/?id=31 na seção "downloads" te o arquivo CD Power-PIC.zip baixe e instale ele que tem um exemplo em CCS com org e interrupt corretos

qualquer coisa poste aí

abraço

marcelo

MensagemEnviado: 13 Mar 2012 23:07
por wandersonrainer
Olá Marcelo,

obrigado pela dica. Estava desconfiado em relação ao bootloader da Microchip mesmo.
Baixei o arquivo que vc mencionou e verifiquei que existe uma pasta Bootloader SoftPC. Como devo usar esse aplicativo? Através dele é possível inserir um novo bootloader (melhor que o da MCHP)?
Verifiquei também os exemplos para CCS, ajudarão bastante.
Nos meus testes anteriores, utilizei a versão 4.114 do CCS e o hex gravado após o bootloader nunca funcionava. Voltei a utilizar a versão 4.038 e funcionou (mas com alguns erros relacionados a delays).

Mais uma vez, muito obrigado.

Wanderson