1.. zephyr:board:: nucleo_h743zi 2 3Overview 4******** 5 6The STM32 Nucleo-144 boards offer combinations of performance and power that 7provide an affordable and flexible way for users to build prototypes and try 8out new concepts. For compatible boards, the SMPS (Switched-Mode Power Supply) 9significantly reduces power consumption in Run mode. 10 11The Arduino-compatible ST Zio connector expands functionality of the Nucleo 12open development platform, with a wide choice of specialized Arduino* Uno V3 13shields. 14 15The STM32 Nucleo-144 board does not require any separate probe as it integrates 16the ST-LINK/V2-1 debugger/programmer. 17 18The STM32 Nucleo-144 board comes with the STM32 comprehensive free software 19libraries and examples available with the STM32Cube MCU Package. 20 21Key Features 22 23- STM32 microcontroller in LQFP144 package 24- Ethernet compliant with IEEE-802.3-2002 (depending on STM32 support) 25- USB OTG or full-speed device (depending on STM32 support) 26- 3 user LEDs 27- 2 user and reset push-buttons 28- 32.768 kHz crystal oscillator 29- Board connectors: 30 31 - USB with Micro-AB 32 - SWD 33 - Ethernet RJ45 (depending on STM32 support) 34 - ST Zio connector including Arduino* Uno V3 35 - ST morpho 36 37- Flexible power-supply options: ST-LINK USB VBUS or external sources. 38- On-board ST-LINK/V2-1 debugger/programmer with USB re-enumeration 39- capability: mass storage, virtual COM port and debug port. 40- Comprehensive free software libraries and examples available with the 41 STM32Cube MCU package. 42- Arm* Mbed Enabled* compliant (only for some Nucleo part numbers) 43 44More information about the board can be found at the `Nucleo H743ZI website`_. 45 46Hardware 47******** 48 49Nucleo H743ZI provides the following hardware components: 50 51- STM32H743ZI in LQFP144 package 52- ARM 32-bit Cortex-M7 CPU with FPU 53- Chrom-ART Accelerator 54- Hardware JPEG Codec 55- 480 MHz max CPU frequency 56- VDD from 1.62 V to 3.6 V 57- 2 MB Flash 58- 1 MB SRAM 59- High-resolution timer (2.1 ns) 60- 32-bit timers(2) 61- 16-bit timers(12) 62- SPI(6) 63- I2C(4) 64- I2S (3) 65- USART(4) 66- UART(4) 67- USB OTG Full Speed and High Speed(1) 68- USB OTG Full Speed(1) 69- CAN FD(2) 70- SAI(2) 71- SPDIF_Rx(4) 72- HDMI_CEC(1) 73- Dual Mode Quad SPI(1) 74- Camera Interface 75- GPIO (up to 114) with external interrupt capability 76- 16-bit ADC(3) with 36 channels / 3.6 MSPS 77- 12-bit DAC with 2 channels(2) 78- True Random Number Generator (RNG) 79- 16-channel DMA 80- LCD-TFT Controller with XGA resolution 81 82Supported Features 83================== 84 85The Zephyr nucleo_h743zi board configuration supports the following hardware 86features: 87 88+-------------+------------+-------------------------------------+ 89| Interface | Controller | Driver/Component | 90+=============+============+=====================================+ 91| NVIC | on-chip | nested vector interrupt controller | 92+-------------+------------+-------------------------------------+ 93| UART | on-chip | serial port | 94+-------------+------------+-------------------------------------+ 95| PINMUX | on-chip | pinmux | 96+-------------+------------+-------------------------------------+ 97| GPIO | on-chip | gpio | 98+-------------+------------+-------------------------------------+ 99| RTC | on-chip | counter | 100+-------------+------------+-------------------------------------+ 101| I2C | on-chip | i2c | 102+-------------+------------+-------------------------------------+ 103| PWM | on-chip | pwm | 104+-------------+------------+-------------------------------------+ 105| ADC | on-chip | adc | 106+-------------+------------+-------------------------------------+ 107| DAC | on-chip | DAC Controller | 108+-------------+------------+-------------------------------------+ 109| RNG | on-chip | True Random number generator | 110+-------------+------------+-------------------------------------+ 111| ETHERNET | on-chip | ethernet | 112+-------------+------------+-------------------------------------+ 113| SPI | on-chip | spi | 114+-------------+------------+-------------------------------------+ 115| Backup SRAM | on-chip | Backup SRAM | 116+-------------+------------+-------------------------------------+ 117| WATCHDOG | on-chip | independent watchdog | 118+-------------+------------+-------------------------------------+ 119| USB | on-chip | usb_device | 120+-------------+------------+-------------------------------------+ 121| CAN/CANFD | on-chip | canbus | 122+-------------+------------+-------------------------------------+ 123| die-temp | on-chip | die temperature sensor | 124+-------------+------------+-------------------------------------+ 125| RTC | on-chip | rtc | 126+-------------+------------+-------------------------------------+ 127 128Other hardware features are not yet supported on this Zephyr port. 129 130The default configuration can be found in the defconfig file: 131:zephyr_file:`boards/st/nucleo_h743zi/nucleo_h743zi_defconfig` 132 133For more details please refer to `STM32 Nucleo-144 board User Manual`_. 134 135Default Zephyr Peripheral Mapping: 136---------------------------------- 137 138The Nucleo H743ZI board features a ST Zio connector (extended Arduino Uno V3) 139and a ST morpho connector. Board is configured as follows: 140 141- UART_3 TX/RX : PD8/PD9 (ST-Link Virtual Port Com) 142- USER_PB : PC13 143- LD1 : PB0 144- LD2 : PE1 145- LD3 : PB14 146- I2C : PB8, PB9 147- ADC1_INP15 : PA3 148- DAC1_OUT1 : PA4 149- ETH : PA1, PA2, PA7, PB13, PC1, PC4, PC5, PG11, PG13 150- SPI1 NSS/SCK/MISO/MOSI : PD14/PA5/PA6/PB5 (Arduino SPI) 151- CAN/CANFD : PD0, PD1 152 153System Clock 154------------ 155 156Nucleo H743ZI System Clock could be driven by an internal or external 157oscillator, as well as the main PLL clock. By default, the System clock is 158driven by the PLL clock at 96MHz, driven by an 8MHz high-speed external clock. 159 160Serial Port 161----------- 162 163Nucleo H743ZI board has 4 UARTs and 4 USARTs. The Zephyr console output is 164assigned to UART3. Default settings are 115200 8N1. 165 166Backup SRAM 167----------- 168 169In order to test backup SRAM you may want to disconnect VBAT from VDD. You can 170do it by removing ``SB156`` jumper on the back side of the board. 171 172CAN, CANFD 173---------- 174 175Requires an external CAN or CANFD transceiver. 176 177Programming and Debugging 178************************* 179 180Nucleo H743ZI board includes an ST-LINK/V2-1 embedded debug tool interface. 181 182Applications for the ``nucleo_h743zi`` board configuration can be built and 183flashed in the usual way (see :ref:`build_an_application` and 184:ref:`application_run` for more details). 185 186Flashing 187======== 188 189The board is configured to be flashed using west `STM32CubeProgrammer`_ runner, 190so its :ref:`installation <stm32cubeprog-flash-host-tools>` is required. 191 192Alternatively, OpenOCD, JLink or pyOCD can also be used to flash the board using 193the ``--runner`` (or ``-r``) option: 194 195.. code-block:: console 196 197 $ west flash --runner openocd 198 $ west flash --runner jlink 199 $ west flash --runner pyocd 200 201Flashing an application to Nucleo H743ZI 202---------------------------------------- 203 204Here is an example for the :zephyr:code-sample:`hello_world` application. 205 206Run a serial host program to connect with your Nucleo board. 207 208.. code-block:: console 209 210 $ minicom -b 115200 -D /dev/ttyACM0 211 212Build and flash the application: 213 214.. zephyr-app-commands:: 215 :zephyr-app: samples/hello_world 216 :board: nucleo_h743zi 217 :goals: build flash 218 219You should see the following message on the console: 220 221.. code-block:: console 222 223 $ Hello World! nucleo_h743zi 224 225Debugging 226========= 227 228You can debug an application in the usual way. Here is an example for the 229:zephyr:code-sample:`hello_world` application. 230 231.. zephyr-app-commands:: 232 :zephyr-app: samples/hello_world 233 :board: nucleo_h743zi 234 :maybe-skip-config: 235 :goals: debug 236 237.. _Nucleo H743ZI website: 238 https://www.st.com/en/evaluation-tools/nucleo-h743zi.html 239 240.. _STM32 Nucleo-144 board User Manual: 241 https://www.st.com/resource/en/user_manual/dm00244518.pdf 242 243.. _STM32H743ZI on www.st.com: 244 https://www.st.com/content/st_com/en/products/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus/stm32-high-performance-mcus/stm32h7-series/stm32h743-753/stm32h743zi.html 245 246.. _STM32H743 reference manual: 247 https://www.st.com/resource/en/reference_manual/dm00314099.pdf 248 249.. _STM32CubeProgrammer: 250 https://www.st.com/en/development-tools/stm32cubeprog.html 251