1.. _stm32h7b3i_dk_board:
2
3ST STM32H7B3I Discovery Kit
4###########################
5
6Overview
7********
8
9The STM32H7B3I-DK Discovery kit is a complete demonstration and development
10platform for STMicroelectronics Arm® Cortex®-M7 core-based STM32H7B3LIH6QU
11microcontroller.
12
13The STM32H7B3I-DK Discovery kit is used as a reference design for user
14application development before porting to the final product, thus simplifying
15the application development.
16
17The full range of hardware features available on the board helps users enhance
18their application development by an evaluation of almost all peripherals (such as
19USB OTG_HS, microSD, USART, FDCAN, audio DAC stereo with audio jack input and output,
20camera, SDRAM, Octo-SPI Flash memory and RGB interface LCD with capacitive touch
21panel). ARDUINO® Uno V3 connectors provide easy connection to extension shields or
22daughterboards for specific applications.
23
24STLINK-V3E is integrated into the board, as an embedded in-circuit debugger and
25programmer for the STM32 MCU and the USB Virtual COM port bridge. The STM32H7B3I-DK
26board comes with the STM32CubeH7 MCU Package, which provides an STM32 comprehensive
27software HAL library as well as various software examples.
28
29.. image:: img/stm32h7b3i_dk.jpg
30     :align: center
31     :alt: STM32H7B3I-DK
32
33More information about the board can be found at the `STM32H7B3I-DK website`_.
34More information about STM32H7B3 can be found here:
35
36- `STM32H7A3/7B3 on www.st.com`_
37- `STM32H7A3/7B3/7B0 reference manual`_
38- `STM32H7B3xI datasheet`_
39
40Supported Features
41==================
42
43The current Zephyr stm32h7b3i_dk board configuration supports the following hardware features:
44
45+-----------+------------+-------------------------------------+
46| Interface | Controller | Driver/Component                    |
47+===========+============+=====================================+
48| NVIC      | on-chip    | nested vector interrupt controller  |
49+-----------+------------+-------------------------------------+
50| UART      | on-chip    | serial port-polling;                |
51|           |            | serial port-interrupt               |
52+-----------+------------+-------------------------------------+
53| PINMUX    | on-chip    | pinmux                              |
54+-----------+------------+-------------------------------------+
55| GPIO      | on-chip    | gpio                                |
56+-----------+------------+-------------------------------------+
57| I2C       | on-chip    | i2c                                 |
58+-----------+------------+-------------------------------------+
59| FLASH     | on-chip    | flash memory                        |
60+-----------+------------+-------------------------------------+
61| FMC       | on-chip    | memc (SDRAM)                        |
62+-----------+------------+-------------------------------------+
63| LTDC      | on-chip    | display                             |
64+-----------+------------+-------------------------------------+
65| CANFD     | on-chip    | can                                 |
66+-----------+------------+-------------------------------------+
67
68
69Other hardware features have not been enabled yet for this board.
70
71The default configuration per core can be found in the defconfig file:
72``boards/arm/stm32h7b3i_dk/stm32h7b3i_dk_defconfig``
73
74Pin Mapping
75===========
76
77For mode details please refer to `STM32H7B3I-DK website`_.
78
79Default Zephyr Peripheral Mapping:
80----------------------------------
81
82- UART_1 TX/RX : PA9/PA10 (ST-Link Virtual Port Com)
83- UART_4 TX/RX : PH13/PH14 (Arduino Serial)
84- I2C4 SCL/SDA : PD12/PD13 (Arduino I2C, Touchscreen FT5336 with PH2 Interrupt Pin)
85- SPI2 SCK/MISO/MOSI/NSS : PA12/PB14/PB15/PI0 (Arduino SPI)
86- LD1 : PG11
87- LD2 : PG2
88- USER_PB : PC13
89- SDMMC D0/D1/D2/D3/CK/CMD/CD : PC8/PC9/PC10/PC11/PC12/PD2/PI8
90- CANFD RX/TX/WAKE [#]_ : PA11/PA12/PH8
91- FMC SDRAM :
92
93    - D0-D15 : PD14/PD15/PD0/PD1/PE7/PE8/PE9/PE10/PE11/PE12/PE13/PE14/PE15/PD8/PD9/PD10
94    - A0-A11 : PF0/PF1/PF2/PF3/PF4/PF5/PF12/PF13/PF14/PF15/PG0/PG1
95    - A14/A15 : PG4/PG5
96    - SDNRAS/SDNCAS : PF11/PG15
97    - NBL0/NBL1 : PE0/PE1
98    - SDCLK/SDNWE/SDCKE1/SDNE1 : PG8/PH5/PH7/PH6
99
100- LTDC :
101
102    - R0-R7 : PI15/PJ0/PJ1/PJ2/PJ3/PJ4/PJ5/PJ6
103    - G0-G7 : PJ7/PJ8/PJ9/PJ10/PJ11/PK0/PK1/PK2
104    - B0-B7 : PJ12/PK13/PJ14/PJ15/PK3/PK4/PK5/PK6
105    - DE/CLK/HSYNC/VSYNC : PK7/PI14/PI12/PI13
106
107
108System Clock
109============
110
111The STM32H7B3I System Clock can be driven by an internal or external oscillator,
112as well as by the main PLL clock. By default, the System clock is driven
113by the PLL clock at 280MHz. PLL clock is fed by a 24MHz high speed external clock.
114
115Serial Port
116===========
117
118The STM32H7B3I Discovery kit has up to 8 UARTs.
119The Zephyr console output is assigned to UART1 which connected to the onboard
120ST-LINK/V3.0. Virtual COM port interface. Default communication settings are
121115200 8N1.
122
123
124Programming and Debugging
125*************************
126
127See :ref:`build_an_application` for more information about application builds.
128
129
130Flashing
131========
132
133Flashing operation will depend on the target to be flashed and the SoC
134option bytes configuration.
135It is advised to use `STM32CubeProgrammer`_ to check and update option bytes
136configuration and flash the ``stm32h7b3i_dk`` target.
137
138
139Debugging
140=========
141
142You can debug an application in the usual way.  Here is an example for the
143:ref:`hello_world` application.
144
145.. zephyr-app-commands::
146   :zephyr-app: samples/hello_world
147   :board: stm32h7b3i_dk
148   :goals: debug
149
150
151.. _STM32H7B3I-DK website:
152   https://www.st.com/en/evaluation-tools/stm32h7b3i-dk.html
153
154.. _STM32H7A3/7B3 on www.st.com:
155   https://www.st.com/en/microcontrollers-microprocessors/stm32h7a3-7b3.html
156
157.. _STM32H7A3/7B3/7B0 reference manual:
158   https://www.st.com/resource/en/reference_manual/rm0455-stm32h7a37b3-and-stm32h7b0-value-line-advanced-armbased-32bit-mcus-stmicroelectronics.pdf
159
160.. _STM32H7B3xI datasheet:
161   https://www.st.com/resource/en/datasheet/stm32h7b3ai.pdf
162
163.. _STM32CubeProgrammer:
164   https://www.st.com/en/development-tools/stm32cubeprog.html
165
166.. _STM32H7B3I_DK board schematics:
167   https://www.st.com/resource/en/schematic_pack/mb1332-h7b3i-c02_schematic.pdf
168
169.. [#] To use CAN, solder bridges SB3, SB4 and SB5 need to be connected.
170       Take note that CANFD pins are shared with STMOD+ connector (P1), so please check
171       `STM32H7B3I_DK board schematics`_ for possible collisions if using that connector.
172