Microchip PIC16F87X Bootloader

with No Comments

Microchip PIC16F87X Bootloader

In the last article I mentioned the BoostC compiler from Sourceboost. A couple years ago, when it was still undergoing development I wrote a little sample program for their examples page. At the time BoostC was free, and unfortunately now it is not. I don’t have a licensed copy so am no longer able to support this project. Although I may buy a copy if enough people are interested, I just don’t see that happening.

The sample program was titled EKBoostLoader, which was a concoction of “bootloader”, “boostc” and “ElectroniKits”. ElectroniKits was the website I was busy with at the time. You’ll notice that that domain now redirects to WeeklyBuild.com.

EKBoostLoader is a bootloader utility for PIC16F87X family PIC microcontrollers which resides in the upper 256 words of program memory. On reset or power up the PIC will jump directly to the bootloader which will then wait for either a new program to be sent over the serial port, or a timeout. If a timeout occurs the bootloader will either reset itself or, if a users program has been previously loaded, jump to the user program. To send the bootloader a new program you can use either HyperTerminal or our EKBoostSend utility. Programs are downloaded at 19200 baud and use XON/XOFF flow control.

Whats EKBoostSend? EKBoostSend integrates easily into the SourceBoost IDE, and displays download progress in the output window. Setting it up is as easy as configuring EKBoostSend as your programming tool. For example, if you are loading your program through com port 2, you would enter “ekboostsend.exe 2″ into the programmer field in the tools tab in the option menu.

Download Project as Zip: [EKBoostLoaderR3]

Instructions

Loading via EKBoostSend:

From the command line simply type EKBoostSend The following will load testprogram.hex on com 3. Example: EKBoostSend 3 testprogram.hex

Loading via HyperTerminal:

  • Configure terminal for 19200 baud, no parity, 8 data bits, 1 stop bit, Xon/Xoff flow control.
  • Select “Send Text File” from the dropdown menu, and find your hex file.
  • Before pressing “Ok” reset or powerup your PIC device, and within 2 seconds press “Ok” to begin sending the file.
  • When the program is finished loading, the bootloader will jump to and start executing it.
  • Supported PIC Microcontrollers:

PIC16F877, PIC16F876, PIC16F874, PIC16F873, PIC16F871, PIC16F870

I’m one of BoostC compiler authors. EKBoostLoader is a great piece of software and we will be happy to provide a free license of the latest BoostC version to its author Ryan Davis. Ryan please contact us if you are interested.    -Pavel February 13, 2007

Thank you Pavel. Don’t mind if I do.