In this section we will write an application that will raise the system clock frequency to 72 MHz and blink the on-board LED connected to the PC13 pin. The application will involve using multiple threads, futures, streams, memory-mapped registers, and peripherals.
The full code for this example can be found at Github.
To begin with, let's generate a new Drone project for a Blue Pill board:
$ drone new \ --toolchain nightly-2020-04-30 \ # we need to pick a fresh nightly with \ # all required rustup components --device stm32f103 \ # microcontroller identifier --flash-size 128K \ # flash memory size in bytes --ram-size 20K \ # RAM size in bytes bluepill-blink # project name $ cd bluepill-blink $ just deps
To briefly test the newly generated application, connect a Black Magic Probe to your PC, and a Blue Pill board to the BMP as in Hello, world! chapter. Flash the firmware and check the SWO output:
$ just flash $ just log
If you can see a "Hello, world!" message, follow to the next chapter.