I've been reading the information available in ST.com about creating a bootloader for a STM32F0xxx microcontroller, and it says the following:
"The bootloader is automatically activated by configuring the BOOT0 and BOOT1 pins in the specific “System memory” configuration and then by applying a reset."
"In some products, BOOT1 is not an I/O but a bit in the option byte area. This is the case for the STM32F05x and STM32F3xx devices where BOOT1 is configured through nBoot1 bit in the option bytes."
"The hardware required to put the STM32F051xx devices into System memory boot mode consists of any circuitry, switch or jumper, capable of holding the BOOT0 pin high while nBOOT1 bit in the option bytes (starting at address 0x1FFFF800) is set to value 1. The setting of this bit can be done through STLINK utility or an equivalent tool."
So, if I want to load my programs in this microcontroller, I need to set the nBOOT1 bit to 1 by software. But how can I change its value if I hadn't communicated with it yet, as I need to change it before communicating? :S
Then, do I need to buy the STLINK utility if I want to bootload my custom programs? :S