I'm currently developing board that i would like to program from uart (new, fresh, virgin mcu STM32F0...).
Problem is it doesn't work like I imagined. I can program by uart only when i first programmed with swd.
I stumbled on this:
|On STM32F070x6 and STM32F030xC devices only, internal empty check flag is|
| implemented to allow easy programming of the virgin devices by the boot loader. This flag is|
| used when BOOT0 pin is defining Main Flash memory as the target boot space. When the|
| flag is set, the device is considered as empty and System memory (boot loader) is selected|
| instead of the Main Flash as a boot space to allow user to program the Flash memory.|
| This flag is updated only during Option bytes loading: it is set when the content of the|
| address 0x08000 0000 is read as 0xFFFF FFFF, otherwise it is cleared. It means a power|
| on or setting of OBL_LAUNCH bit in FLASH_CR register is needed to clear this flag after|
programming of a virgin device to execute user code after System reset.
Does it mean that I can flash it with uart only on those series of mcu? or am I reading it wrong?