I have purchased this LPC1788FBD144,551 MCU and this LPC1313FBD48/01,15 MCU and I want to install a bootloader in assembly on them which can call a function in C. How can I install the bootloader on the ARM MCU? Would I install it directly on the MCU or on a separate component (if so can you show me which part on the newark website)?
Electronic – Installing a bootloader on an ARM Microcontroller
armbootloadermicrocontroller
Related Topic
- Electronic – Writing bootloader for STM32 by C language in Keil
- Electronic – ARM Cortex M software update via bootloader
- ATSamd10 Atmel ARM programming via UART bootloader
- Electronic – Make the own microcontroller ARM M0 board: do I need bootloader
- Electronic – bootloader application on arm controller
- Electrical – .elf or .bin file to be download as application code in ARM cortex M4
Best Answer
Both devices have on-chip bootloaders that will always be executed. With the LPC17xx, you can write a secondary bootloader to execute custom code that will run directly after. You simply need to direct your IDE to place the code at location 0x00.
On the documentation page, have a look at AN11257 and AN11258. These discuss creating secondary bootloaders (SBL) to load code from SPI or I2C respectively. This could retrieve code from a PC or an external memory device.
From AN11257:
I couldn't find similar documentation on the LPC13xx. But it's primary bootloader has a bit more functionality built-in. Specifically the ability to load new programs via UART. Your version lacks the USB functionality they talk about in the User Guide:
You can still make the first instructions executed after the primary bootloader act as a custom secondary bootloader. You just need to locate that code at the proper address. How this is done is heavily dependent on your IDE. Refer to your IDE's documentation on how to properly control code placement into the desired sectors.