Calling the bootloader in software

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Calling the bootloader in software

835 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by amrbekhit on Thu Oct 07 15:02:21 MST 2010
Hello,

I'm using the LPC11C14. I understand that by setting some of the  GPIO pins at reset, the microcontroller will automatically enter into CAN bootloader mode. However, this obviously requires access to the reset and bootloader_en pins. Is there a way of getting the microcontroller to enter into CAN bootloader mode through my application software?

Thanks,

--Amr
0 Kudos
Reply
3 Replies

819 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by Ex-Zero on Mon Oct 11 06:26:15 MST 2010
What about AUTOISP sample in LPC11xx Series - Example Projects?

http://ics.nxp.com/support/lpcxpresso/#Examples
0 Kudos
Reply

819 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by amrbekhit on Mon Oct 11 05:45:25 MST 2010
I feel like an idiot. NXP support have told me that there is a command to reinvoke the bootloader as part of the IAP API: Reinvoke ISP, Command code 5710. Nice to know that there is a proper way of calling the bootloader.
0 Kudos
Reply

819 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by amrbekhit on Mon Oct 11 03:45:27 MST 2010
I've just figured out a way that this could be possible. As I understand it, on reset, the bootloader is always run first and the first thing it does is calculate the checksum of all the interrupt vectors at the bottom of memory and compare it to a value held in flash somewhere. If the checksums match, then it knows that there is a valid program and runs it, otherwise, it remains in bootloader mode. So, all my software needs to do is to write an invalid checksum value and reset. That should fool the bootloader into thinking that there is no program and staying there.

Of course, once the checksum has been modified, the chip will always remain in bootloader mode until new firmware is programmed.
0 Kudos
Reply