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