Boa a noite a todos!
Hoje
(16/06/2016) abordaremos um tema bastante interessante, a comunicação USB entre
um microcontrolador e o computador.
O
microcontrolador em questão é o PIC 18F4550, fabricado pela Microchip, e
programado utilizando a linguagem C padrão CCS.
Por que
utilizar o microcontrolador PIC18F4550?
Este
microcontrolador possui um módulo USB nativo, por esse motivo ele foi escolhido,
entretanto existem ouros microcontroladores da Microchip que podem ser
utilizados, estes são alguns deles: PIC18F13K50, PIC18F14K50, PIC18F2450,
PIC18F2455, PIC18F2458, PIC18F2550, PIC18F2553, PIC18F4450, PIC18F4455,
PIC18F4458, PIC18F4550, PIC18F4553, PIC18LF13K50 e PIC18LF14K50.
Como
funciona um dispositivo CDC?
É bem
simples de entender, quando um microcontrolador é programado desta forma, para
se portar como um USB CDC, as aplicações que o utilizarão irão identifica-lo
como uma porta de comunicação serial RS232, desta forma temos a virtualização
de uma porta USB como serial RS232. A principal desvantagem da utilização do
modo CDC é o fato de que é necessário que um driver seja instalado no
computador, as versões mais antigas do Windows não possuem. O meu computador é
8.1 e funcionou perfeitamente. Essa classe pode ser usada para equipamentos
industriais, tais como máquinas CNC, para permitir a atualização de softwares controladores
mais velhos RS-232, uma vez que eles podem manter a compatibilidade de software.
Mãos à obra!
1- Passo;
Utilizando o
Project Wizard do CCS configure na aba Device como apresentado a seguir:
2- Passo;
Configure na
aba USB como apresentado:
3- Passo;
O código
gerado será apresentado, agora podemos edita-lo:
4- Passo;
Apague tudo
que estiver dentro da função main() e digite o seguinte código:
5- Passo;
Agora,
altere o #include <usb_cdc.h> para #include "usb_cdc.h", as
aspas servem para indicar que o arquivo em questão se encontra na mesma pasta
em que está o arquivo que cotem o main(). Feito isso selecione esta linha,
clique com o botão direito sobre a seleção e escolha Open file at cursor para
abrir o arquivo, edite o da seguinte maneira:
6- Passo;
Após
compilar o código, (obs: se você fez tudo certo não é para ocorrer nenhum erro)
basta gravar o hex no PIC. O hardware utilizado pode ser observado a seguir:
Obs: eu
tentei utilizar o USB durante a simulação no ISIS, entretanto não consegui,
isso provavelmente se deve ao fato de que o meu sistema operacional é de
64bits.
7- Passo;
Bem, agora
falta pouco, basta conectar o PIC ao computador, no meu caso reconheceu
automaticamente =), mas pode ser necessário a instalação de um driver, para
verificar isso acessamos o gerenciador de dispositivos, e procure por Portas
(COM e LTP), ao expandir aparecerá algo semelhante, no meu caso, reconheceu como
COM3 perfeitamente. O driver pode ser baixado no site: http://www.microchip.com/mplab/microchip-libraries-for-applications.
8 – FIM.
Para testar
basta abrir o Serial Monitor do próprio CCS na aba Tools, e digitar as letras (A,
a, B, b, C, c) para acender e apagar os LEDs.
Este é um
exemplo bem simples que permite a utilização da comunicação USB, mas que
permite executar os mais diferentes projetos!
Bons
estudos, pois só com muito estudo foi possível desenvolver este conteúdo.
Já conhece
nosso canal no YouTube, se inscreva é de graça, e em breve teremos mais
novidades! Mecatrônica Júnior no YouTube.
Para ficar
mais fácil, temos também nossa página no Facebook, deixe seu LIKE, e nos
acompanhe nessa jornada!
Qualquer
sugestão, pergunta ou erro que venha ter, deixe-me um comentário.
Muito obrigado
pela visita, volte sempre. =) e continue estudando!