TI E2E Community
Stellaris® ARM® Microcontrollers
Stellaris® ARM® LM3S Microcontrollers Forum
Doubt regarding Boot Loader
If you set the program address for your application to 0x0 in LMFLASH when you use the serial bootloader, then the bootloader will overwrite itself with the program. You should specify the offset in LMFLASH at 0x1800.
If you want to have CCS not overwrite the bootloader when you use CCS to program the application into the flash, you will need to change the .cmd file to have an APP_BASE of 0x00001800 as well. The .cmd files in the boot_demo examples in Stellarisware should show you how an application can be run from the bootloader.
Remember to reduce the length of the flash in the .cmd file when you increase the program's starting address so you don't try to write past the flash area.
Thanks for your reply.
Actually I have misunderstood this whole bootloader concept. But now after playing with bootloader and going through the TI documents and example programs, now I understood how actually bootloader is working. Previously I thought my serial_boot program is actually programming my flash everytime ...so I get confused. But now I came to know that its actually the ROM bootloader that is taking control when I use one of my GPIO pin to decide whether I want to go to ROM bootloader or application part.
Moreover now I get the idea about the APP_BASE. When I am using ROM bootloader I shouldn't change the .cmd file to other address other than 0x00. It should need to be change only if I use the example serial_boot program ..am I right ?
Yes you are right. If you are using the ROM bootloader, your apps should start at 0x00. This is why the examples in Stellarisware except for boot_demo start from 0x00.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.