Como usar o PIC_DOWNLOADER ========================== Este fantástico software de Petr Kolomaznik é ao mesmo tempo simples e genial. Com ele (aliado a um pequeno programa pré-gravado na memória ROM do microcontrolador PIC), é possível se enviar um programa usando-se a porta serial do PIC. Isso quer dizer que caso queiras gravar o PIC de um equipamento que não possui porta paralela, e caso não estejas disposto a enfrentar a lentidão e os problemas de um gravador serial de baixo custo, podes usar este recurso. O ponto fraco é que devemos preparar o microcontrolador antes de poder utilizar este processo. Isso será feito uma única vez, e neste procedimento o programa deve ser gravado no microcontrolador pelas vias tradicionais. Sugerimos o uso do EPIC, WINPIC ou ICPROG, transferindo o programa de bootloader adequado. Depois deste procedimento, não será mais necessário o uso de porta paralela ou hardware de adaptação, nem mesmo será necessário o uso da chave RUN/PROG. Vamos a um PASSO A PASSO de como fazer as gravações 1) Preparando a estação para ser gravada com o PIC_DOWNLOADER a) Conecte a estação a um computador com porta paralela, pelo cabo normal de gravação. Isso será necessário para preparar a estação para gravações futuras. b) Prepare o programa adequado para programar a estação. Se o programa de transferência que estiveres usando suportar alteração manual dos fuses, lembre-se desta configuração habilitada: FLASH PROGRAM WRITE. Demais itens variam conforme o hardware. Sugere-se: Oscilador HS, LVP off, WDT off, PUT on, CP off c) Transfira o programa BOOTLOADER adequado (arquivo HEX) para o microcontrolador. Existem arquivos prontos para cada combinação de microcontrolador / velocidade de clock. Caso sua combinação não esteja listada, e caso não se sinta a vontade para alterar e recompilar o BOOTLOADER, entre em contato solicitando uma versão adequada. BOOTLOADERs disponíveis: CUSCObootldr_PIC16F877_8MHz_19200bps.HEX CUSCObootldr_PIC16F877_10MHz_19200bps.HEX CUSCObootldr_PIC16F877_20MHz_19200bps.HEX CUSCObootldr_PIC16F877A_4MHz_19200bps.HEX CUSCObootldr_PIC16F877A_8MHz_19200bps.HEX CUSCObootldr_PIC16F877A_10MHz_19200bps.HEX CUSCObootldr_PIC16F877A_20MHz_19200bps.HEX PIC16F877 PIC16F877 PIC16F877 PIC16F877a PIC16F877a PIC16F877a PIC16F877a 8 MHz 10 MHz 20 MHz 4 MHz 8 MHz 10 MHz 20 MHz d) Uma vez transferido este programa, e certo das configurações, não irás mais precisar do gravador tradicional (paralelo). A gravação será feita pela porta serial. O segredo é que o programa transferido permanecerá residente nas últimas posições de memória (endereço 0x1e80 até 0x1eff), e como o PIC permite o recurso de auto-programação (instruções permitem escrita na área de programa), então os mais de 98% de memória restantes poderão ser reescritos pelo próprio programa, que o faz após receber instruções pela porta de comunicação serial. 2) Conectando a estação já preparada no PC a) Você vai precisar de uma porta serial na CUSCOPIC (versão 4.0 ou superior), e outra no PC de onde será feita a gravação. b) Caso o seu PC não possua porta serial, verifique a possibilidade de usar um simples e de baixo custo CONVERSOR USB/SERIAL. É um cabo que possui uma conexão USB para ser conectada ao PC, e que na outra extremidade possui um conector DB9 macho. Um software instalado em conjunto com o hardware permite que o sistema operacional enxergue uma “porta serial” em um PC onde antes só haviam portas USB. c) Usando o cabo serial da CUSCOPIC, conecte-a com o adaptador. d) Para que a comunicação serial fique adequada, certifique-se que os jumpers próximos à porta serial estejam na posição RS232. e) Certifique-se da porta serial utilizada para a gravação. Descubra se a porta serial instalada no seu PC é a COM1, COM2, COM3, COM4, etc... 3) Transferindo o Programa HEX a) O primeiro passo e abrir o programa PIC_DOWNLOADER b) Posteriormente, selecione a PORTA (Port) de acordo com a porta serial utilizada pelo seu PC. c) Selecione a velocidade. Sugiro 19200 (velocidade dos bootloaders aqui citados). d) Clique em SEARCH, localize o programa HEX a ser transferido. e) Para gravar, clique em WRITE. A partir deste momento, o programa ficará AGUARDANDO um sinal do microcontrolador para poder enviar os dados. Para que isso aconteça, ponha a chave RUN/PROG no modo RUN, e pressione um RESET. f) Um indicador gráfico na janela mostra o processo de gravação ocorrendo, e no fim da gravação o microcontrolador irá começar a executar o programa.