Vous êtes sur la page 1sur 14

PROGRAMACIN DE PICS POR USB

INSTRUCCIONES PARA LA PROGRAMACIN DE MICROCONTROLADOR MEDIANTE USB


Primero se explicar la disposicin de terminales del cable USB. El cable USB

En la figura siguiente, las ilustraciones del conector USB que se encuentran a la izquierda (Device) corresponden a los conectores que se encuentran en el equipo (Laptop) y los de la derecha corresponden al cable que se conectar en l.

M. C. JAIME ALVARADO M.

Pgina 1

PROGRAMACIN DE PICS POR USB


El cable de bus USB es de 4 hilos, y comprende lneas de seal (datos) y alimentacin, con lo que las funciones pueden utilizar un nico cable. Existen dos tipos de cable: seal es trenzado; rectos. apantallado y sin apantallar. En el primer caso el par de hilos de

los de tierra y alimentacin son rectos, y la cubierta de protecci (pantalla) En el cable sin apantallar todos los hilos son

solo puede conectarse a tierra en el anfitrin.

Las conexiones a 15 Mbps y superiores exigen cable apantallado. Ambos son polarizados (solo pueden insertarse en Los de tipo A utilizan la hembra

Se usan dos tipos de conectores, A y B.

una posicin) y utilizan sistemas de presin para sujetarse. (por ejemplo, ratones y teclados).

en el sistema anfitrin, y suelen usarse en dispositivos en los que la conexin es permanente Los de tipo B utilizan la hembra en el dispositivo USB (funcin), y se utilizan en sistemas mviles (por ejemplo, cmaras fotogrficas o altavoces). En general podemos afirmar que la hembra de los conectores A estn en el lado del host (PC) o de los concentradores (hubs), mientras las de tipo B estn del lado de los perifricos.

Pin 1 2 3 4

Nombre VBUS DD+ GND

Descripcin + 5 V. CC Data Data + Tierra

Color rojo azul amarillo verde

M. C. JAIME ALVARADO M.

Pgina 2

PROGRAMACIN DE PICS POR USB


Hay un estndar en el color de los cablecitos, que es el siguiente: USB1: VCC (5v) - Rojo - D - Blanco + D - Verde GROUND (GD, GR, MASA) - Negro USB2: VCC (5v) - Naranja (o rojo) - D - Amarillo + D - gris GROUND (GD, GR, MASA) - Azul, marrn oscuro (o negro)

A continuacin se deber instalar la aplicacin USB Bootloader Setup.EXE.

Inicio de la instalacin del USB Bootloader Setup.EXE

La instalacin crear las carpetas que se muestran en la figura siguiente.

Algunas de las carpetas creadas en la instalacin del USB Bootloader Setup.EXE. M. C. JAIME ALVARADO M. Pgina 3

PROGRAMACIN DE PICS POR USB


El contenido de las carpetas que nos interesan es:

1. fw (Firmware). En sta se encuentran los cdigos para el microcontrolador PIC. Tiene 4 carpetas. 1.1. _factory_hex. Solo encontramos el archivo .hex a grabar en el PIC. Es decir el programa residente (PICDEMFSUSB.HEX). 1.2. Boot. Es el cdigo fuente del programa residente (Bootloader). Tambin se puede utilizar este cdigo fuente y trabajara igual que el .hex encontrado en la carpeta anterior. 1.3. Demo y Demo02. Son programas de ejemplo con cdigo fuente para saber cmo se usa la plantilla para crear el programa que ejecutara el PIC cuando no est en modo Bootloader. 2. Pc. Utilidades para la PC. 2.1. MCHPUSB Driver. Cuando el PIC entra en modo bootloader, el Windows detectara un nuevo dispositivo conectado en uno de sus puertos USB. A continuacin pedir el Driver a instalar. En ese momento, se le deber buscar manualmente dentro de esta carpeta. 2.2. Mpusbapi. Es una librera de enlace dinmica entregada por Microchip con la cual se desarrolla la aplicacin de Windows que se encarga de enviar los datos al PIC. La ventaja de este tipo de libreras es que se puede desarrollar una aplicacin en particular para Windows.

2.3. Pdfsusb. Es la aplicacin que se debe usar siempre que se quiere programar el PIC en modo Bootloader.

En la direccin de instalacin elegida, en la carpeta C:\MCHPFSUSB\fw\_factory_hex se encuentra el archivo PICDEMFSUSB.HEX, el cual deber grabarse por primera vez en el microcontrolador utilizando un dispositivo de programacin. Este archivo es el bootloader. El USB Bootloader es un pequeo programa de arranque, residente en las primeras 0x800 bytes de la memoria de programa de un Microcontrolador Pic18F2550. El bootloader funciona en el momento en que se carga el programa (justo cuando se reinicializa el PIC) y es capaz de cargar un programa de aplicacin en la memoria de programa del pic. En el men INICIO tambin deber aparecer la carpeta MICROCHIP y al explorar en ella deber encontrar la utilidad PICDEM FS USB DEMO TOOL que se encargar de cargar los programas de aplicacin en el microcontrolador.

Utilidad de programacin PICDEM FS USB DEMO TOOL.

M. C. JAIME ALVARADO M.

Pgina 4

PROGRAMACIN DE PICS POR USB


HARDWARE

El circuito que se emplear es el que se muestra a continuacin. Falta el conector USB, pero comparando con la figura que se muestra ms adelante podr terminar de construir el circuito requerido.

Tambin puede emplear un arreglo similar al que se muestra a continuacin y que corresponde al PIC18F4550:

Hardware mnimo para utilizar el PIC18F4550 con el bootloader USB.

M. C. JAIME ALVARADO M.

Pgina 5

PROGRAMACIN DE PICS POR USB


GRABANDO EL PIC

Para entrar en el modo USB Bootloader, se presiona el botn conectado en RB4 (S2) y luego se presiona el botn S1 que se encuentra conectado a la terminal MCLR. Lo anterior se realiza porque el programa bootloader del PIC primero examina el nivel lgico de la termina RB4 donde se encuentra conectado el pushbutton S2. Si el botn est presionado el PIC entra en modo Bootloader y si no lo est ejecuta el programa de aplicacin que tenga grabado. Despus, se conecta el PIC al puerto USB. Una vez que Windows detecta que la PC tiene conectado un dispositivo nuevo, se inicia el asistente para instalar drivers de hardware nuevo.

Mensaje de Windows informando de la deteccin del PIC.

Con el asistente para hardware nuevo encontrado deber localizar el driver A continuacin deber buscar manualmente el driver en la carpeta C:\MCHPFSUSB\Pc\MCHPUSB Driver\Debug. Vea las siguientes figuras.

Inicio de la instalacin del driver.

M. C. JAIME ALVARADO M.

Pgina 6

PROGRAMACIN DE PICS POR USB

Instalar el driver de forma manual.

Direccin en la que se encuentra el driver.

M. C. JAIME ALVARADO M.

Pgina 7

PROGRAMACIN DE PICS POR USB


Para confirmar que se realiz bien el procedimiento anterior, cercirese que en el ADMINISTRADOR DE DISPOSITIVOS de Windows aparezca el driver instalado como se muestra en la figura siguiente.

Si el driver aparece en el ADMINISTRADOR DE DISPOSITIVOS se ha instalado correctamente.

Ahora se ejecuta el archivo PDFSUSB.EXE que se encuentra en una de las carpetas mencionadas anteriormente o se ejecuta la aplicacin desde el men INICIO de Windows, se carga el archivo.hex y se programa el microcontrolador.

Utilidad de programacin del PIC mediante USB

M. C. JAIME ALVARADO M.

Pgina 8

PROGRAMACIN DE PICS POR USB


Finalmente, para ejecutar el programa, se desconecta el PIC del puerto USB y se reinicializa el PIC (aplicar RESET al microcontrolador).

Para Windows Vista se recomienda utilizar los drivers que vienen en la librera MCHP_App_Lib v2010_02_09_Installer.

EJEMPLO DE PROGRAMACIN EN CCS

Iniciar CCS y crear nuevo proyecto.

Crear una carpeta y dar nombre al proyecto.

M. C. JAIME ALVARADO M.

Pgina 9

PROGRAMACIN DE PICS POR USB


Para esta prctica ser suficiente con seleccionar el PIC18F4550 y un cristal de 20 MHz.

Cuando presione OK se ver una pantalla como la siguiente.

El programa se muestra a continuacin.

M. C. JAIME ALVARADO M.

Pgina 10

PROGRAMACIN DE PICS POR USB


#include <18F4550.h> #fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN,NOMCLR #use delay(clock=48000000) //Configuracin requerida para utilizar el bootloader #define LOADER_END 0x7FF #define LOADER_SIZE 0x6FF #build(reset=LOADER_END+1, interrupt=LOADER_END+9) #org 0, LOADER_END {} // nothing will replace the bootloader memory space // Fin de la configuracin #use standard_io(a) #use standard_io(b) #use standard_io(c) void main() { /********** CONFIGURACION PROPUESTA **********/ setup_adc_ports(NO_ANALOGS); setup_adc(ADC_OFF); setup_wdt(WDT_OFF); setup_timer_0(RTCC_8_BIT|RTCC_DIV_128); setup_timer_1(T1_DISABLED); setup_timer_2(T2_DISABLED,0,1); setup_timer_3(T3_DISABLED|T3_DIV_BY_1); setup_comparator(NC_NC_NC_NC); setup_vref(FALSE); /*******************************************/ /********** INICIO DEL PROGRAMA **********/ set_tris_a(0x00); //todo el puerto A como salida output_a(0x00); //limpiamos los pines del puerto A while(1){ output_high(PIN_A0); //dispara el pin RA0 a nivel alto o 1 delay_ms(250); output_LOW(PIN_A0); //dispara el pin RA0 a nivel BAJO O CERO delay_ms(250); } /*******************************************/ } El resultado de este programa es el parpadeo de un LED conectado a la terminal RA0 del microcontrolador.

M. C. JAIME ALVARADO M.

Pgina 11

PROGRAMACIN DE PICS POR USB


Para compilar el programa se presiona el botn Build All en la barra de herramientas. Observe que se tiene seleccionado PCH 16 bit en Lookup Part.

Para grabar el programa, se conecta el cable USB, se presiona el botn S2 y sin soltarlo se presiona momentneamente a S1 (se hace un reset al microcontrolador). Despus suelte el botn S2. Con esta operacin el programa PICDEM debe detectar que el microcontrolador se encuentra en modo bootloader.

Presione en la flechita para ver la lista de dispositivos conectados y elija PIC DEM FS USB 0 (BOOT).

M. C. JAIME ALVARADO M.

Pgina 12

PROGRAMACIN DE PICS POR USB


Ahora presione Load Hex File.

Elija el archivo hexadecimal deseado y presione Abrir.

Responda que no, para no sobreescribir el segmento de memoria donde se encuentra el programa del Bootloader.

M. C. JAIME ALVARADO M.

Pgina 13

PROGRAMACIN DE PICS POR USB


Despus presione Program Device.

Observe como el programa se escribi a partir de la direccin 0x0800. Si ya tiene el LED conectado en la terminal RA0, con solo presionar S1 (Reset) se deber visualizar el parpadeo del LED.

M. C. JAIME ALVARADO M.

Pgina 14

Vous aimerez peut-être aussi