Está en la página 1de 4

COMUNICACIN USB (BOOTLOADER)

Definicin
Un gestor de arranque es el primer programa que se ejecuta (antes del programa principal) cada
vez que se inicializa el sistema. En PC Se utiliza para arrancar el OS del sistema. En caso de
microcontroladores, un cargador de arranque enriquece las capacidades del microcontrolador y
los hace auto dispositivo programable. [1]
Caractersticas
Con la era de la modernizacin de la tecnologa, los microcontroladores de hoy
en da no slo estn creciendo de gran alcance pero tambin incorporan
funcionalidad tcnicamente superior que los hace ms flexible y muy fcil de
usar. El cargador de arranque es uno de ellos.
Un gestor de arranque es una pequea seccin en la ROM del controlador que
se ejecuta por primera vez cuando se inicializa. En general, el gestor de
arranque se escriben en empoderar a un controlador con capacidades de auto
quema.
El programa gestor de arranque puede acceder a cualquiera de los perifricos
incorporados como USB, USART, CAN, SPI, etc, para intercambiar los datos y
esta capacidad se utiliza para escribir la memoria flash.

Desventajas
Mientras trabajaba con microcontrolador un problema comn que enfrentan es
programar el controlador.
Diferentes controladores deben seguir diferentes protocolos para programar su
ROM y por lo tanto cada controlador tiene un programador diferente, que es
difcil de realizar. Un programador universal sobre la otra parte es bastante
costoso.

Funcionamiento del Bootloader


El cargador de arranque se puede insertar en un controlador mediante el uso de un externo o
cualquier quemador convencional y, a continuacin, dependiendo del tipo de cargador de
arranque el controlador empieza a responder a la interfaz. As que cuando se reinicializa el
controlador el contador de programa salta a la seccin de cargador de arranque y luego se espera
all para la instruccin, que se alimenta desde el dispositivo externo. En caso no hay gestor de
arranque el contador de programa se pondr a la 0000H (posicin de la memoria flash de
partida) y comenzar a ejecutar las instrucciones que se escriben en la memoria del dispositivo.
[1]

Fig. 1: Activacin del Bootloader

Requisitos del gestor de arranque

Un gestor de arranque requiere tres aspectos con el fin de funcionar.


Debe ser capaz de comunicarse con el mundo exterior.
Debe ser capaz de escribir en la memoria.
Debe ser capaz de asumir el control del microcontrolador.
Un gestor de arranque tpico asume el control del Mu cuando las primeras potencias de chips y
sale de reset, o botas. El gestor de arranque luego comprueba si hay una seal predefinida o
condicin que indica si el gestor de arranque debera continuar funcionando o ceder el control al
programa de usuario en su lugar. La seal podra ser un pin especial de E / S tir alto o bajo
cuando el controlador sale de reset, o una instruccin particular recibida a travs de un enlace de
comunicaciones.
Un nuevo programa para ser quemado en un Mu tiene que venir de alguna parte. La fuente
podra ser en el otro extremo de un enlace de comunicaciones tal como un puerto RS-232, una
conexin USB, Ethernet, inalmbrico o algn otro tipo. La mayor parte de los gestores de
arranque de este tipo de software a medida para uso comunicarse y controlar el gestor de
arranque. Un gestor de arranque tambin puede ser diseado para reconocer el nuevo firmware
presente en un dispositivo de memoria extrable, como una tarjeta SD.
Todo lo anterior no funcionara si el microcontrolador no fue capaces de escribir en su propia
memoria. De hecho, gestores de arranque no eran posibles en chips PIC mayores y no son
posibles con muchos de los actuales dispositivos de menor tamao.
Lo mismo es cierto para otras familias de microcontroladores tambin. Afortunadamente, los
chips modernos se han convertido en lo suficientemente complejo como para tener la capacidad
de escribir en su propia memoria flash, de los cuales hay una amplia cantidad fcilmente
suficiente para mantener tanto el programa del usuario y el gestor de arranque.[2]

Fig. 2: Memoria con y sin bootloader

Usos y limitaciones

El gestor de arranque es muy fcil de usar una vez que todo se junta. Con una configuracin de
hardware, el firmware programado en el chip PIC, un enlace serie de algn tipo a un equipo host
y el software de comunicaciones estndar, se realiza el bootloading. Adicionalmente se
necesitar una aplicacin para programar en el chip.
Configuracin fsica de bootloader
UART / USART perifrica del chip de PIC se utiliza para la comunicacin serie bsica. Otra pin
E / S se utiliza para emitir la seal de control de flujo por hardware. Esta lnea, llamada CTS, es
conducido bajo por el chip PIC cuando est listo para recibir ms caracteres y est en lo alto
cuando el chip PIC est ocupado o es bfer de recepcin est casi lleno. (Una completa interfaz
de control de flujo de hardware requerira un segundo pin de E / S se utiliza como entrada para
recibir la seal RTS desde el ordenador principal. Sin embargo, es razonable suponer que la
mquina host nunca ser abrumado por los datos procedentes de la PIC y por lo tanto esta lnea
de seal se puede omitir con seguridad. Este gestor de arranque no supervisa una seal de
entrada RTS). Un LED conectado a otro pin de salida es til para el estado de la vigilancia, pero
no es estrictamente necesario. Los pasadores de particulares usados dependen del chip de
PIC18F particular. Desde el pin CTS y los pasadores de LED son pines de salida simplemente
ordinarios, se mueven con facilidad a otros pines si es necesario. [2]

Fig. 3: circuito de conexin USB-PIC18F4550

Referencias
[1] H. J. Ana Mara Gil, recursosbiblioteca.utp.edu.co, 2014. [En lnea]. Available:
http://recursosbiblioteca.utp.edu.co/dspace/bitstream/handle/11059/4777/629892G463.pdf;
jsessionid=5880AC2CCA907B0ACFAA1A93E290A712?sequence=1. [ltimo acceso: 01

08 2016].
[2] UDLAP, udlap.mx, [En lnea]. Available:
http://catarina.udlap.mx/u_dl_a/tales/documentos/lmt/padilla_m_o/capitulo4.pdf. [ltimo
acceso: 2016 08 01].

También podría gustarte