Tutorial para la comunicación USB con un PIC18F4550 usando el marco de CDC

4

Estoy intentando realizar una comunicación USB desde la PC a un microcontrolador PIC18F4550 utilizando el marco Microchip PIC18 USB CDC (clase de dispositivo de comunicación) que esencialmente hace que el PIC18, conectado a la PC a través del cable USB al puerto USB de la PC , aparece como un puerto COM vritual en la PC. Esto me da la facilidad de enviar los datos como si los estuviera enviando a un puerto serie en el lado de la PC y elimina la molestia de usar un convertidor de USB a serie.

Ahora el problema es que el proyecto de demostración provisto por Microchip está escrito para que pueda grabarse en diferentes dispositivos, con diferentes circuitos o con diferentes condiciones, lo que lo hace grande, y para mí al menos, más difícil de entender. Con suerte, si alguien pudiera proporcionar un código de trabajo con un mínimo de comentarios para este microcontrolador o algo similar O ME ENLACE a un buen tutorial, eso haría mi vida MUCHO MÁS fácil

Gracias.

    
pregunta gururaj

1 respuesta

3

No tengo experiencia con el CDC pero tengo algo con la clase MSD. Algunos pasos que hice y pueden serte útiles. Primero, vamos a crear un proyecto independiente:

1) Supongo que ha descargado e instalado el MAL (Microchip Application Libraries). Copie a su directorio de ejemplo los siguientes archivos: usb.h, usb_ch9.h, usb_common.h, usb_config.h, usb_device.h, usb_device_local.h, usb_hal.c, USB PIC18.h, usb_function_cdc.h, usb_function_cdc.c y Agrégalos al proyecto MPLAB X. Eliminar las bibliotecas del proyecto MPLAB.

2) Compílelo, vincúlelo y vea si aún funciona bien.

3) Utilizando MPLAB X, elimine todas las líneas de código que estén en gris en los bloques de preprocesador #ifdef o #else. Es decir, eliminar todo el código destinado a otras arquitecturas que no están diseñadas para un PIC18F45XX.

4) Repite 2.

5) Si comienzas a estudiar el código ahora, notarás que es mucho más simple de lo que pensaste al principio, y tendrás mucho más control sobre tu proyecto.

Espero que esto ayude.

    
respondido por el Federico

Lea otras preguntas en las etiquetas