boards/weact/mini_stm32h743/doc/index.rst
.. zephyr:board:: mini_stm32h743
Overview
The MiniSTM32H743 Core board is a compact development board equipped with an STM32H743VIT6 microcontroller. It features a variety of peripherals, including a user LED and button, a display, and external SPI and QuadSPI NOR flash memory.
Key Features
STM32 microcontroller in LQFP100 package
USB OTG or full-speed device
1 user LED
User, boot, and reset push-buttons
32.768 kHz and 25MHz HSE crystal oscillators
External NOR Flash memories: 64-Mbit Quad-SPI and 64-Mbit SPI
Board connectors
More information about the board can be found on the Mini_STM32H743 website_.
Hardware
The MiniSTM32H743 Core board provides the following hardware components:
More information about STM32H743 can be found here:
STM32H743VI on www.st.com_STM32H743/753 reference manual_STM32H743VI datasheet_.. zephyr:board-supported-hw::
MiniSTM32H743 Core board has 5 GPIO controllers. These controllers are responsible for pin muxing, input/output, pull-up, etc.
For more details please refer to Mini_STM32H743 website_.
The MiniSTM32H743 Core board is configured as follows
The STM32H743VI System Clock can be driven by an internal or external oscillator, as well as by the main PLL clock. By default, the System clock is driven by the PLL clock at 240MHz. PLL clock is fed by a 25MHz high speed external clock.
The Zephyr console output is assigned to the USB CDC ACM virtual serial port. Virtual COM port interface. Default communication settings are 115200 8N1.
Programming and Debugging
.. zephyr:board-supported-runners::
The MiniSTM32H743 Core board facilitates firmware flashing via the USB DFU bootloader. This method simplifies the process of updating images, although it doesn't provide debugging capabilities. However, the board provides header pins for the Serial Wire Debug (SWD) interface, which can be used to connect an external debugger, such as ST-Link.
To activate the bootloader, follow these steps:
Upon successful execution of these steps, the device will transition into bootloader mode and present itself as a USB DFU Mode device. You can program the device using the west tool or the STM32CubeProgrammer.
Here is an example for the :zephyr:code-sample:hello_world application.
First, put the board in bootloader mode as described above. Then build and flash
the application in the usual way. Just add CONFIG_BOOT_DELAY=5000 to the
configuration, so that USB CDC ACM is initialized before any text is printed,
as below:
.. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: mini_stm32h743 :goals: build flash :gen-args: -DCONFIG_BOOT_DELAY=5000
Run a serial host program to connect with your board:
.. code-block:: console
$ minicom -D <tty_device> -b 115200
Then, press the RESET button, you should see the following message after few seconds:
.. code-block:: console
Hello World! mini_stm32h743
Replace :code:<tty_device> with the port where the board XIAO BLE
can be found. For example, under Linux, :code:/dev/ttyACM0.
This current Zephyr port does not support debugging.
Testing the LEDs in the MiniSTM32H743
There is a sample that allows to test that LED on the board are working properly with Zephyr:
.. zephyr-app-commands:: :zephyr-app: samples/basic/blinky :board: mini_stm32h743 :goals: build flash :gen-args: -DCONFIG_BOOT_DELAY=5000
You can build and flash the examples to make sure Zephyr is running correctly on
your board. The LED definitions can be found in
:zephyr_file:boards/weact/mini_stm32h743/mini_stm32h743.dts.
Testing shell over USB in the MiniSTM32H743
There is a sample that allows to test shell interface over USB CDC ACM interface with Zephyr:
.. zephyr-app-commands:: :zephyr-app: samples/subsys/shell/shell_module :board: mini_stm32h743 :goals: build flash :gen-args: -DCONFIG_BOOT_DELAY=5000
.. _Mini_STM32H743 website: https://github.com/WeActStudio/MiniSTM32H7xx
.. _STM32H743VI on www.st.com: https://www.st.com/en/microcontrollers-microprocessors/stm32h743vi.html#overview
.. _STM32H743/753 reference manual: https://www.st.com/resource/en/reference_manual/rm0433-stm32h742-stm32h743753-and-stm32h750-value-line-advanced-armbased-32bit-mcus-stmicroelectronics.pdf
.. _STM32H743VI datasheet: https://www.st.com/resource/en/datasheet/stm32h743vi.pdf