cancel
Showing results for 
Search instead for 
Did you mean: 

booting ST3210x from RAM

wadi
Associate II
Posted on January 02, 2012 at 15:52

Is it possible to make software reset of procesor , and tell him to execute from RAM (without pooling BOOTx pins ) ?

I want to remove RDP bit and I need to reset procesor and next execute it from procedure loaded to RAM

with best regards,

Adam
3 REPLIES 3
Posted on January 02, 2012 at 17:01

You can jump to RAM.

You can latch the state of BOOTx pins externally.

The F2 and F4 designs supposedly permit you to control the BOOTx pins and Zero Mapping with internal registers, which might achieve your goals, the F1 design does not.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
wadi
Associate II
Posted on January 02, 2012 at 22:20

I cannot jump to RAM  - I have to reset processor to update new status of option bits (see documentation).

Changing BOOTx pins internally ? Could you explain this ? (I dont understand what you mean with this F1 F2 F4...)

Posted on January 02, 2012 at 22:36

STM32F1xx

STM32F2xx

STM32F4xx

One of the side effects of the BOOTx pins is what memory is shadowed at address ZERO. The F2 and F4 series provide a register to read the initial mapping, and change it. Look at SYSCFG_MEMRMP, but I'm not sure it achieves what you want.

Yes, I'm aware that it's going to be impossible to jump to RAM from a blank FLASH device. But that's why it's generally advisable to do a staged boot, with boot loaders you don't erase, and keep separate from the application code which you do want to erase/replace.

Your best bet is to latch a value for BOOTx externally, prior to your reset, or as part of your reset. You might be able to loop back a GPIO pin, not sure if that will hold to the fourth clock when the BOOTx pins are sampled.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..