Práctica 7 – USB CDC MPLAB
Introducción
En esta práctica se implementa una comunicación USB configurada como CDC (Comunications Devices Class) emulando un puerto serial UART, mediante comandos se controla un LED y se obtiene una lectura del estado lógico del push button integrado llamado BOOT.
Descripción
En esta práctica se realiza la conexión con el puerto USB (Universal Serial Bus) configurado en clase CDC (Comunications Devices Class) emulando un puerto serial, el cual envía indicaciones para el encendido y apagado de un LED, también pregunta el estado de un push button usando el módulo X-TRAINER con el PIC18F4550/PIC18F45K50. Para encender el LED se envía el número 1, si se desea apagar se envía el número 0. Para recibir el estado del push button “BOOT”, se envía el signo “?”, si está presionado recibe el número 0, en caso contrario se recibe el número 1.

Materiales:
1 x Módulo X-TRAINER. Manuales | Comprar
1 x Módulo programador XCU o XCU Lite. Manuales | Comprar
1 x Cable micro USB.
Software:
Windows 7 o posterior.
MICROSIDE v1.0 Descarga
MPLAB X IDE. Descarga
Compilador XC8. Descarga
Software Hercules Descarga
MPLAB Code Configurator. (Solo para PIC18F45K50)
Procedimiento
1. En el apartado de “Diagrama esquemático” que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora. Nota: Las conexiones mostradas en los diagramas esquemáticos son las mismas ya sea que la tarjeta X-TRAINER posea el PIC18F4550/PIC18F45K50.
2. Instala las librerías de Microchip necesarias para esta práctica, en el siguiente link encontrarás un manual de instalación.
3. Al final de esta práctica, en el apartado de “Descargas”, puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de “Código” que se encuentra más abajo.
4. Ejecuta MPLAB X IDE, abre el proyecto “picdem_fs_usb.x” que se encuentra en la ruta donde se instalaron las librerías del paso 2, en este caso la ruta es:
C:\microchip\mla\v2018_11_26\apps\usb\device\cdc_basic\firmware. Imagen de referencia
5. Sustituye todo el código que se encuentra en el archivo main por el que obtuviste en el paso 3. Imagen de referencia
6. Realiza los siguientes pasos para la configuración del Bootloader y poder programar la tarjeta X-TRAINER:
Selecciona File y clic en Project properties. Se mostrará una ventana donde es posible realizar distintas configuraciones.
Selecciona Building y marca la casilla en Insert unprotected checksum in user ID memory, clic en Apply.
Selecciona XC8 Linker y despliega Option categories: y selecciona Memory model, en ROM ranges escribir 2000-7f00, clic en Apply.
Selecciona XC8 Linker y despliega Option categories: y selecciona Additional options: en Codeoffset escribir 2000, clic en Apply.
Compilación
Para hacer la compilación del proyecto, en la barra superior se encuentran las siguientes opciones:
La herramienta señalada sirve para compilar el programa.
7. Abre el Software MICROSIDE v1.0 y programa el código que descargaste o compilaste en el módulo. En el siguiente link encontrarás el manual de usuario para el Software MICROSIDE v1.0.
8. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.
9. En el Software Hercules, abre el apartado “Serial” para lograr la comunicación con el módulo convertidor USB a Serial UART y envía los caracteres de esta práctica. En el siguiente link encontrarás una imagen de referencia del envío de comandos a través del software Hercules.
Nota: En caso de poseer un microcontrolador PIC18F45550 con un cristal de 4 MHz es necesario cambiar los fuses del microcontrolador. Abre el archivo “system.c” ubicado en la carpeta “Source files” (Imagen de referencia) y cambia la línea de código como se muestra en la siguiente Imagen.
Código
Descargas
A continuación podrás descargar los archivos necesarios para el desarrollo de esta práctica.
