boards/weact/blackpill_f401ce/doc/index.rst
.. zephyr:board:: blackpill_f401ce
Overview
The WeAct Black Pill V3.0 Board is an extremely low cost and bare-bones
development board featuring the STM32F401CE, see STM32F401CE website.
This is the 48-pin variant of the STM32F401x series,
see STM32F401x reference manual. More info about the board available
here <stm32-base-board-page_>_ and on WeAct Github_.
Hardware
The STM32F401CE based Black Pill V3.0+ Board provides the following hardware components:
.. zephyr:board-supported-hw::
.. image:: img/Blackpill_Pinout.jpg :align: center :alt: Black Pill V3.0+ Pinout
Note on SPI pin mapping: According to the board release notes_, there was a brief
change for V2.0 specifically where MISO was routed to PB4 for the flash footprint.
This was reverted for V2.1+ so that the flash DO pin was routed back to PA6. If using
V2.0 and en external flash, the pinmux will need to be modified accordingly.
The board has two external oscillators. The frequency of the slow clock (LSE) is 32.768 kHz. The frequency of the main clock (HSE) is 25 MHz.
The default configuration sources the system clock from the PLL, which is derived from HSE, and is set at 84MHz, which is the maximum possible frequency to achieve a stable USB clock (42MHz).
Programming and Debugging
.. zephyr:board-supported-runners::
There are 2 main entry points for flashing STM32F4X SoCs, one using the ROM bootloader, and another by using the SWD debug port (which requires additional hardware). Flashing using the ROM bootloader requires a special activation pattern, which can be triggered by using the BOOT0 pin.
It is recommended to use at least v0.8 of dfu-util_. The package available in
debian/ubuntu can be quite old, so you might have to build dfu-util from source.
There is also a Windows version which works, but you may have to install the
right USB drivers with a tool like Zadig_.
Connect a USB-C cable and the board should power ON. Force the board into DFU mode by keeping the BOOT0 switch pressed while pressing and releasing the NRST switch.
The dfu-util runner is supported on this board and so a sample can be built and tested easily.
.. zephyr-app-commands:: :zephyr-app: samples/basic/blinky :board: blackpill_f401ce :goals: build flash
The board can be debugged by installing the included 100 mil (0.1 inch) header, and attaching an SWD debugger to the 3V3 (3.3V), GND, SCK, and DIO pins on that header.
References
.. target-notes::
.. _board release notes: https://github.com/WeActStudio/WeActStudio.MiniSTM32F4x1/blob/master/HDK/README.md
.. _Zadig: https://zadig.akeo.ie/
.. _WeAct Github: https://github.com/WeActStudio/WeActStudio.MiniSTM32F4x1
.. _stm32-base-board-page: https://stm32-base.org/boards/STM32F401CEU6-WeAct-Black-Pill-V3.0.html
.. _dfu-util: http://dfu-util.sourceforge.net/build.html
.. _STM32F401CE website: https://www.st.com/en/microcontrollers/stm32f401ce.html
.. _STM32F401x reference manual: https://www.st.com/resource/en/reference_manual/dm00096844.pdf