Leer Primero

Como se utiliza este blog?

viernes, 10 de julio de 2020

Bootloader USB para Microcontroladores PIC 18F2550 y PIC18F4550


Bienvenido a mi blog, hoy hablaremos un poco del bootloader USB para Microcontroladores PIC18F2550 y PIC18F4550, el cual es un programa que reside dentro de la memoria del microcontrolador, y nos permitira reprogramar el microcontrolador sin necesidad de utilizar un grabador externo. Para esto, es necesario programar el microcontrolador por los medios convencionales (utilizando un programador externo) solo la primera vez, cargandole el hexadecimal o el archivo compilado .hex del bootloader. Una vez hecho esto, nuestro microcontrolador esta listo para ser utilizado sin necesidad  de utilizar un programador externo. El bootloader funciona en el momento del cargado del programa (justo cuando el micro es reseteado) y es capaz de cargar una aplicacion completa en la memoria de programa del Microcontrolador. Las plataformas modernas, como Arduino utilizan este sistema de programación. Pero ojo, por ningún motivo se debe sobrescribir las posiciones de memoria FLASH en la que se encuentra el programa residente Bootloader, ya que si se borra por algún error, pierdes el bootloader y tendras que programarlo nuevamente con un grabador externo.

No todos los microcontroladores soportan Bootloader, esto se limita aquellos que tienen la capacidad de autograbar su memoria FLASH. Por ejemplo el PIC16F84A de Microchip no lo permite, por eso sacaron la versión PIC16F628A que si lo permite y además tiene mejores prestaciones.

(Para las personas con experiencia en Arduino hay un proyecto similar a ArduinoISP que permite programar microcontroladores pic desde placas como Arduino UNO [Nano o Pro mini no funcionarán ya que no pueden proporcionar suficiente corriente] e incluso se puede quemar el famoso Microcontrolador 8051 de Intel <AT89S51, AT89S52>).

Pero antes de todo esto se preguntaran, como cargo entonces mis programas al microcontrolador? Pues es necesario utilizar un medio de comunicacion con el pc, y  nuestro microcontrolador cuenta con ese medio, que es un puerto USB embebido. El bootloader ya esta programado  para trabajar con ese módulo USB de nuestro PIC,  lo unico que nos quedaria es realizar nuestro circuito para que el Microcontrolador pueda funcionar correctamente, un ejemplo seria utilizar la herramienta PICKIT, otro ejemplo especifico de esto es el USB Pic BootLoader Boot25 (Pic18F2550):



El USB PIC Bootloader Boot25 es una herramienta que permite montar un pequeño programa de arranque, residente en la memoria de programa, a un Microcontrolador PIC18F2550. El Boot25 es una versión personalizada del PICDEM-FS-USB Demostration Board que Microchip ofrece, de tamaño compacto, versátil y autónomo, en la imagen se puede apreciar que existen 2 pulsadores, uno que es para el reset y el otro para el entrar al modo bootloader. Para entrar al modo bootloader, es necesario reiniciar el microcontrolador y seguidamente presionar el boton "boot mode" hecho esto, el microcontrolador esta listo para ser programado. Como la arquitectura del PIC18F4550 es igual al del 18F2550, salvo que el 18f4550 tiene mas pines, el bootloader sera funcional para estos 2 tipos de microcontroladores, este hardware esta diseñado por el Ingeniero Wilmer Salas.

Otro ejemplo especifico es el USB Pic BootLoader Boot45 (Pic18F4550)]:



Consulta aqui la web del autor, para descargar el software y el .hex

Por ultimo recordar que tanto el Microcontrolador PIC18F2550 como el 18F4550, ya han sido descontinuados por microchip, en su reemplazo se han lanzado los modelos 18F25k50 y el 18F45k50. Tambien puedes diseñar y montar tu propio entrenador PIC o cargar el bootloader del proyecto Pinguino, que puedes conocer en https://www.pinguino.cc/

Descarga los bootloader's para El Proyecto Pinguino desde github aqui, recuerda que tambien hay otros bootloader's para ambientes especificos como el ccs compiler y xC8,

Proyecto PICKAT basado en el PIC18F2550

Pinguino Básico


Placa de Desarrollo Pinguino basada en el PIC18F4550 de Microchip por Editronikx


Placa de Desarrollo Pinguino Ciku desarrollada por la empresa de Malasia Cytron Technologies



Ejemplo de Serigrafia de la capa inferior o Bottom, agradable y con buen diseño por los compañeros de PCB Designer.



Diagrama Basico de un Pinguino Basado en el PIC18F4550


Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.




Tambien te puede interesar:










No hay comentarios.:

Publicar un comentario