quarta-feira, 25 de setembro de 2013

Como usar a USB do PIC18F4550 no MPlab XC8 (passo - a - passo)

                 Diante da dificuldade em usar a USB e da sua complexidade, simplesmente desistimos de usa-lá optando por usar a RS-232 , mesmo sabendo que existe exemplos pré compilados da microchip (motivo pelo qual nem vou implementar um exemplo para o blog neste momento) existe a dificuldade em fazer tudo funcionar por falta de tempo ou mesmo experiência.Nesta matéria vou apenas descrever os passos para usar a USB:

-> entenda como é o protocolo USB, procure na internet materiais que o faça entender o processo de comunicação(ex. http://www.apostilando.com/download.php?cod=2899&categoria=Hardware ou por exemplo http://homepages.dcc.ufmg.br/~adrianoc/usb/ , enfim existe muito material sobre a usb na web).

-> leia o datasheet no item "UNIVERSAL SERIAL BUS(USB)" (aqui eu usei o PIC18F4550), assim você terá um entendimento de como o hardware controla a usb e o modulo SIE(Serial Interface Engine).

->após entender e compreender a usb você precisa instalar o compilador C18(pode ser a versão trial ou acadêmica(não expira, a diferença da versão para é algumas otimizações)).

-> depois de instalado o C18 é hora de instalar o drive usb para dispositivos microchip, procure no site da microchip por "USB framework" ,baixe a versão feita para seu sistema operacional veja neste link : http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2896 , instale o drive.

->baixe agora o pacote de exemplos da microchip "microchip-libraries-for-applications-v2013-06-15-windows-installer.exe", essa versão depende de quando saiu a atualização dos exemplos da microchip.Quando esse arquivo é executado é criado em seu pc uma pasta que fica geralmente em :
"C:\microchip_solutions_v2013-06-15" dentro desta pasta existe vários exemplos.

->supondo que vc tenha o MPlab XC8 instalado, está tudo pronto pra rodar os exemplos usb,abra o XC8 vá em "Open project " procure a pasta que acabou de ser criada (microchip solution) e dentro dela busque pela pasta USB,entro desta pasta existe muitos exemplos, aqui vou pegar o exemplo "Device-CDC – Basic Demo"(neste exemplo é emulado uma porta RS-232/USB ) , quando esse exemplo for selecionado o compilador irá buscar todo os arquivos(includes) que compõem o exemplo,agora escolha uma das placas de exemplo pra selecionar o microcontrolador(para o 18F4550 é PCDEM_FSUSB, veja a figura),compile o código e pronto !




-> agora vá a pasta "Device - DC – Basic Demo" e procure por "PC Dynamic Software Example" nesta pasta contem um software pra vc testar se o programa funcionou,basta rodar o software e plugar a sua placa na usb (veja neste site um exemplo : http://www.waitingforfriday.com/index.php/PIC_USB_Development_Board ) irá aparecer uma notificação do windows sobre o hardware conectado e então após o windows instalar os drives no programa aparece a mensagem de que está conectado e qual a porta criada("COM3 ou COM4 ou qualquer outra porta COM"). A partir de agora é só mexer no código para adapta-ló a sua necessidade(em breve pretendo colocar um exemplo usb).

2 comentários :

  1. Parabéns, estou baixando o pacote de exemplos, e tem a versão v2013-12-20.

    Lembro que anos atrás era muito complicado trabalhar com USB, havia poucos compiladores que ofereciam uma biblioteca funcional, e lembro que por volta de 2010, tive dificuldade para encontrar esses exemplos de USB para serial com PIC, chegando a desistir e comprar um adaptador USB para serial, caro que hoje em dia, um cabo desses é mais barato que o próprio PIC, mas fazer o quê? Né!

    Uma alternativa muito bacana é a implementação de USB em microcontrolador sem hardware de USB que é feita em chips AVR, seria muito interessante se essa biblioteca pudesse ser compilada para uso em um PIC, pois daria 'asas' para muitos uC's.

    ResponderExcluir
  2. Muito obrigado pela ajuda. Depois de tantos anos ainda está disponível. Deus te abençoe com muita saúde.

    ResponderExcluir

olá,digite aqui seu comentário!