http://www.scienceprog.com/flashing-programs-to-stm32-embedded-bootloader/