How to Program an STM32 via UART

You want to know what is the BOOT0 pin, what is a Bootloader, and how to program an STM32 via UART, then this Tutorial is for you.