|  | .. zephyr:board:: nucleo_f334r8 | 
|  |  | 
|  | Overview | 
|  | ******** | 
|  | STM32 Nucleo-64 development board with STM32F334R8 MCU, supports Arduino and ST morpho connectivity. | 
|  |  | 
|  | The STM32 Nucleo board provides an affordable and flexible way for users to try out new concepts, | 
|  | and build prototypes with the STM32 microcontroller, choosing from the various | 
|  | combinations of performance, power consumption and features. | 
|  |  | 
|  | The Arduino* Uno V3 connectivity support and the ST morpho headers allow easy functionality | 
|  | expansion of the STM32 Nucleo open development platform with a wide choice of | 
|  | specialized shields. | 
|  |  | 
|  | The STM32 Nucleo board does not require any separate probe as it integrates the ST-LINK/V2-1 | 
|  | debugger and programmer. | 
|  |  | 
|  | The STM32 Nucleo board comes with the STM32 comprehensive software HAL library together | 
|  | with various packaged software examples. | 
|  |  | 
|  | More information about the board can be found at the `Nucleo F334R8 website`_. | 
|  |  | 
|  | Hardware | 
|  | ******** | 
|  | Nucleo F334R8 provides the following hardware components: | 
|  |  | 
|  | - STM32 microcontroller in QFP64 package | 
|  | - Two types of extension resources: | 
|  |  | 
|  | - Arduino* Uno V3 connectivity | 
|  | - ST morpho extension pin headers for full access to all STM32 I/Os | 
|  |  | 
|  | - On-board ST-LINK/V2-1 debugger/programmer with SWD connector: | 
|  |  | 
|  | - Selection-mode switch to use the kit as a standalone ST-LINK/V2-1 | 
|  |  | 
|  | - Flexible board power supply: | 
|  |  | 
|  | - USB VBUS or external source (3.3V, 5V, 7 - 12V) | 
|  | - Power management access point | 
|  |  | 
|  | - Three LEDs: | 
|  |  | 
|  | - USB communication (LD1), user LED (LD2), power LED (LD3) | 
|  |  | 
|  | - Two push-buttons: USER and RESET | 
|  | - USB re-enumeration capability. Three different interfaces supported on USB: | 
|  |  | 
|  | - Virtual COM port | 
|  | - Mass storage | 
|  | - Debug port | 
|  |  | 
|  |  | 
|  | More information about STM32F334R8 can be found in the | 
|  | `STM32F334 reference manual`_ | 
|  |  | 
|  |  | 
|  | Supported Features | 
|  | ================== | 
|  |  | 
|  | .. zephyr:board-supported-hw:: | 
|  |  | 
|  | Connections and IOs | 
|  | =================== | 
|  |  | 
|  | Each of the GPIO pins can be configured by software as output (push-pull or open-drain), as | 
|  | input (with or without pull-up or pull-down), or as peripheral alternate function. Most of the | 
|  | GPIO pins are shared with digital or analog alternate functions. All GPIOs are high current | 
|  | capable except for analog inputs. | 
|  |  | 
|  | Board connectors: | 
|  | ----------------- | 
|  | .. image:: img/nucleo_f334r8_connectors.jpg | 
|  | :align: center | 
|  | :alt: Nucleo F334R8 connectors | 
|  |  | 
|  | Default Zephyr Peripheral Mapping: | 
|  | ---------------------------------- | 
|  |  | 
|  | - UART_1 TX/RX : PA9/PA10 | 
|  | - UART_2 TX/RX : PA2/PA3 (ST-Link Virtual Port Com) | 
|  | - UART_3 TX/RX : PB10/PB11 | 
|  | - I2C1 SCL/SDA : PB8/PB9 (Arduino I2C) | 
|  | - SPI1 CS/SCK/MISO/MOSI : PB6/PA5/PA6/PA7 (Arduino SPI) | 
|  | - PWM_1_CH1 : PA8 | 
|  | - USER_PB   : PC13 | 
|  | - LD2       : PA5 | 
|  |  | 
|  | For more details please refer to `STM32 Nucleo-64 board User Manual`_. | 
|  |  | 
|  | Programming and Debugging | 
|  | ************************* | 
|  |  | 
|  | .. zephyr:board-supported-runners:: | 
|  |  | 
|  | Nucleo F334R8 board includes an ST-LINK/V2-1 embedded debug tool interface. | 
|  |  | 
|  | Applications for the ``nucleo_f334r8`` board configuration can be built and | 
|  | flashed in the usual way (see :ref:`build_an_application` and | 
|  | :ref:`application_run` for more details). | 
|  |  | 
|  | Flashing | 
|  | ======== | 
|  |  | 
|  | The board is configured to be flashed using west `STM32CubeProgrammer`_ runner, | 
|  | so its :ref:`installation <stm32cubeprog-flash-host-tools>` is required. | 
|  |  | 
|  | Alternatively, OpenOCD, JLink, or pyOCD can also be used to flash the board using | 
|  | the ``--runner`` (or ``-r``) option: | 
|  |  | 
|  | .. code-block:: console | 
|  |  | 
|  | $ west flash --runner openocd | 
|  | $ west flash --runner jlink | 
|  | $ west flash --runner pyocd | 
|  |  | 
|  | Flashing an application to Nucleo F334R8 | 
|  | ---------------------------------------- | 
|  |  | 
|  | Connect the Nucleo F334R8 to your host computer using the USB port, | 
|  | then build and flash an application. Here is an example for the | 
|  | :zephyr:code-sample:`blinky` application. | 
|  |  | 
|  | .. zephyr-app-commands:: | 
|  | :zephyr-app: samples/basic/blinky | 
|  | :board: nucleo_f334r8 | 
|  | :goals: build flash | 
|  |  | 
|  | You will see the LED blinking every second. | 
|  |  | 
|  | Debugging | 
|  | ========= | 
|  |  | 
|  | You can debug an application in the usual way.  Here is an example for | 
|  | the :zephyr:code-sample:`blinky` application. | 
|  |  | 
|  | .. zephyr-app-commands:: | 
|  | :zephyr-app: samples/basic/blinky | 
|  | :board: nucleo_f334r8 | 
|  | :maybe-skip-config: | 
|  | :goals: debug | 
|  |  | 
|  | References | 
|  | ********** | 
|  |  | 
|  | .. target-notes:: | 
|  |  | 
|  | .. _Nucleo F334R8 website: | 
|  | https://www.st.com/en/evaluation-tools/nucleo-f334r8.html | 
|  |  | 
|  | .. _STM32F334 reference manual: | 
|  | https://www.st.com/resource/en/reference_manual/dm00093941.pdf | 
|  |  | 
|  | .. _STM32 Nucleo-64 board User Manual: | 
|  | https://www.st.com/resource/en/user_manual/dm00105823.pdf | 
|  |  | 
|  | .. _STM32CubeProgrammer: | 
|  | https://www.st.com/en/development-tools/stm32cubeprog.html |