Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
02/13/12 19:40
Read: times


 
Msg Score: +1
 +1 Good Answer/Helpful
#185910 - Boot Loader
Responding to: ???'s previous message
To get some ideas on how to go about getting it possible to have user code updates from a PC via a serial connection or via a USB/Serial adapter cable you will need to equip your MCU with a boot loader capability. SiLabs has a whole AppNote on that subject that works as two separate executables that you program in C and then compile separately and program into the MCU at initial production.

I, for one, do not like having to support and maintain the boot loader separately from my application program so I have devised a concept where I have a boot loader that is written in assembler language and then linked to my application as just another module. The loader module gets linked at address zero and is designed to support a command packet interface to a PC over the UART port to support erasing and programming the "application" part of the FLASH whilst not letting itself get overwritten. There is a posted listing of one flavor of this boot loader that I did for the C8051F126 at the link below. I have since adapted additional versions of this boot loader to about a half dozen other SiLabs MCU families.

http://www.8052.com/users/mkaras/loader.pdf

Some other links where boot loaders have been discussed before:

http://old.8052.com/forum/read/69865
http://old.8052.com/forum/read/90590
http://old.8052.com/forum/read/161742
http://old.8052.com/forum/read/176970
http://www.8052.com/forum/read/177015

It takes a custom app written for the PC side to support the command packet interface and offer the user a nice reliable interface for downloading code updates to the target MCU. If you like the concept of the loader as described here and would like to see sample host side code please contact me off board.

Michael Karas


List of 10 messages in thread
TopicAuthorDate
Learing SiLabs C8051020            01/01/70 00:00      
   for my SILabs jobs            01/01/70 00:00      
   Boot Loader            01/01/70 00:00      
      more than one way to skin a cat            01/01/70 00:00      
      Bootloader            01/01/70 00:00      
   Learing SiLabs C8051020 - HLL steping?            01/01/70 00:00      
      F8051F5*            01/01/70 00:00      
         maybe            01/01/70 00:00      
   HLL stepping            01/01/70 00:00      
      Ditto            01/01/70 00:00      

Back to Subject List