1.. _nucleo_f767zi_board: 2 3ST Nucleo F767ZI 4################ 5 6Overview 7******** 8 9The STM32 Nucleo-144 F767ZI boards offer combinations of performance and 10power that provide an affordable and flexible way for users to build 11prototypes and try out new concepts. For compatible boards, the SMPS 12significantly reduces power consumption 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_f767zi.jpg 48 :align: center 49 :alt: Nucleo F767ZI 50 51More information about the board can be found at the `Nucleo F767ZI website`_. 52 53Hardware 54******** 55 56Nucleo F767ZI provides the following hardware components: 57 58- STM32F767ZI 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- 2 MB Flash 65- 512 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_f767zi 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| RNG | on-chip | True Random number generator | 122+-----------+------------+-------------------------------------+ 123| DAC | on-chip | DAC Controller | 124+-----------+------------+-------------------------------------+ 125| RTC | on-chip | rtc | 126+-----------+------------+-------------------------------------+ 127 128 129(*) nucleo_f767zi with soc cut-A (Device marking A) has some ethernet 130 instability (:github:`26519`). 131 Use of cut-Z is advised. 132 see restrictions errata: 133 https://www.st.com/content/ccc/resource/technical/document/errata_sheet/group0/23/a6/11/0b/30/24/46/a5/DM00257543/files/DM00257543.pdf/jcr:content/translations/en.DM00257543.pdf 134 135Other hardware features are not yet supported on this Zephyr port. 136 137The default configuration can be found in 138:zephyr_file:`boards/st/nucleo_f767zi/nucleo_f767zi_defconfig` 139 140For more details please refer to `STM32 Nucleo-144 board User Manual`_. 141 142Default Zephyr Peripheral Mapping: 143---------------------------------- 144 145The Nucleo F767ZI board features a ST Zio connector (extended Arduino Uno V3) 146and a ST morpho connector. Board is configured as follows: 147 148- UART_2 TX/RX/RTS/CTS : PD5/PD6/PD4/PD3 149- UART_3 TX/RX : PD8/PD9 (ST-Link Virtual Port Com) 150- UART_6 TX/RX : PG14/PG9 (Arduino UART) 151- USER_PB : PC13 152- LD1 : PB0 153- LD2 : PB7 154- LD3 : PB14 155- ETH : PA1, PA2, PA7, PB13, PC1, PC4, PC5, PG11, PG13 156- USB DM : PA11 157- USB DP : PA12 158- I2C : PB8, PB9 159- PWM : PE13 160- SPI : PD14, PA5, PA6, PA7 161 162.. note:: 163 The Arduino Uno v3 specified SPI device conflicts with the on-board ETH 164 device on pin PA7. 165 166System Clock 167------------ 168 169Nucleo F767ZI System Clock could be driven by an internal or external 170oscillator, as well as the main PLL clock. By default, the System clock is 171driven by the PLL clock at 72MHz, driven by an 8MHz high-speed external clock. 172 173Serial Port 174----------- 175 176Nucleo F767ZI board has 4 UARTs and 4 USARTs. The Zephyr console output is 177assigned to UART3. Default settings are 115200 8N1. 178 179 180Programming and Debugging 181************************* 182 183Applications for the ``nucleo_f767zi`` board configuration can be built and 184flashed in the usual way (see :ref:`build_an_application` and 185:ref:`application_run` for more details). 186 187Flashing 188======== 189 190Nucleo F767ZI board includes an ST-LINK/V2-1 embedded debug tool interface. 191 192Flashing an application to Nucleo F767ZI 193---------------------------------------- 194 195Here is an example for the :ref:`hello_world` application. 196 197Run a serial host program to connect with your Nucleo board. 198 199.. code-block:: console 200 201 $ minicom -b 115200 -D /dev/ttyACM0 202 203Build and flash the application: 204 205.. zephyr-app-commands:: 206 :zephyr-app: samples/hello_world 207 :board: nucleo_f767zi 208 :goals: build flash 209 210You should see the following message on the console: 211 212.. code-block:: console 213 214 $ Hello World! nucleo_f767zi 215 216Debugging 217========= 218 219You can debug an application in the usual way. Here is an example for the 220:ref:`hello_world` application. 221 222.. zephyr-app-commands:: 223 :zephyr-app: samples/hello_world 224 :board: nucleo_f767zi 225 :maybe-skip-config: 226 :goals: debug 227 228.. _Nucleo f767zi website: 229 https://www.st.com/en/evaluation-tools/nucleo-f767zi.html 230 231.. _STM32 Nucleo-144 board User Manual: 232 https://www.st.com/resource/en/user_manual/dm00244518.pdf 233 234.. _STM32f767zi on www.st.com: 235 https://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32-high-performance-mcus/stm32f7-series/stm32f7x&/stm32f767zi.html 236 237.. _STM32F767 reference manual: 238 https://www.st.com/resource/en/reference_manual/DM00224583.pdf 239