2012-01-02 06:52 AM
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, Adam2012-01-02 08:01 AM
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.2012-01-02 01:20 PM
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...)
2012-01-02 01:36 PM
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.