> Some PICS with Flash memory like the 16F877 can program themselves, without > the aid of programming hardware (low voltage programming). A bootloader is > a small PIC program that resides at the top 256 bytes of program memory. Minor nit, but a "bootloader" doesn't need to be exactly 256 locations long, and doesn't need to be at the end of the memory. One of mine, for example, starts at the beginning of the last program memory page (1800h). > The reset vector points to it. When the device resets the bootloader > executes and determines if there is new firmware waiting to be delivered on > a serial port or other comm channel. If it is, it downloads it into the rest > of the program memory. If not, it jumps to the normal program entry point. > > A common configuration is to have a program on your PC platform that uses > the serial port to transfer a new program to a device over a serial port. Aside from the minor nit, I agree with your description. ******************************************************************** Olin Lathrop, embedded systems consultant in Littleton Massachusetts (978) 742-9014, olin@embedinc.com, http://www.embedinc.com -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads