1.. zephyr:board:: nucleo_f303k8 2 3Overview 4******** 5 6The Nucleo F303K8 board features an ARM Cortex-M4 based STM32F303K8 7mixed-signal MCU with FPU and DSP instructions capable of running at 72 MHz. 8Here are some highlights of the Nucleo F303K8 board: 9 10- STM32 microcontroller in LQFP32 package 11- one type of extension resources: 12 13- Arduino™ Nano V3 connectivity support 14 15- On-board ST-LINK/V2-1 debugger/programmer with SWD connector 16- Flexible board power supply: 17 18- 5 V from ST-LINK/V2-1 USB VBUS 19- External power sources: 3.3 V, 5V and 7 - 12 V 20 21- One user LED 22- One push-buttons: RESET 23 24More information about the board can be found at the `Nucleo F303K8 website`_, 25and in the `STM32 Nucleo-32 board User Manual`_. 26 27Hardware 28******** 29 30The Nucleo F303K8 provides the following hardware components: 31 32- STM32F303K8T6 in LQFP32 package 33- ARM |reg| 32-bit Cortex |reg| -M4 CPU with FPU 34- 72 MHz max CPU frequency 35- VDD from 2.0 V to 3.6 V 36- 64 KB Flash 37- 12 KB SRAM 38- RTC 39- Advanced-control Timer 40- General Purpose Timers (5) 41- Basic Timer (2) 42- Watchdog Timers (2) 43- PWM channels (12) 44- SPI/I2S (1) 45- I2C (1) 46- USART/UART (2) 47- CAN (1) 48- GPIO with external interrupt capability 49- DMA channels (7) 50- Capacitive sensing channels (18) 51- 12-bit ADC with 21 channels 52- 12-bit D/A converter 53- Analog comparator (3) 54- Op amp 55 56 57More information about the STM32F303K8 can be found here: 58 59- `STM32F303K8 on www.st.com`_ 60- `STM32F303K8 reference manual`_ 61- `STM32F303K8 datasheet`_ 62 63Supported Features 64================== 65 66The Zephyr nucleo_f303k8 board configuration supports the following hardware 67features: 68 69+-----------+------------+-------------------------------------+ 70| Interface | Controller | Driver/Component | 71+===========+============+=====================================+ 72| NVIC | on-chip | nested vector interrupt controller | 73+-----------+------------+-------------------------------------+ 74| UART | on-chip | serial port-polling; | 75| | | serial port-interrupt | 76+-----------+------------+-------------------------------------+ 77| PINMUX | on-chip | pinmux | 78+-----------+------------+-------------------------------------+ 79| GPIO | on-chip | gpio | 80+-----------+------------+-------------------------------------+ 81| PWM | on-chip | pwm | 82+-----------+------------+-------------------------------------+ 83| I2C | on-chip | i2c | 84+-----------+------------+-------------------------------------+ 85| SPI | on-chip | spi | 86+-----------+------------+-------------------------------------+ 87| ADC | on-chip | ADC Controller | 88+-----------+------------+-------------------------------------+ 89 90Other hardware features are not yet supported on this Zephyr port. 91 92The default configuration can be found in 93:zephyr_file:`boards/st/nucleo_f303k8/nucleo_f303k8_defconfig` 94 95Connections and IOs 96=================== 97 98The Nucleo F303K8 Board has 1 GPIO controller. This controllers is responsible 99for input/output, pull-up, etc. 100 101Board connectors: 102----------------- 103.. image:: img/nucleo_f303k8_pinout.jpg 104 :align: center 105 :alt: Nucleo F303K8 connectors 106 107Default Zephyr Peripheral Mapping: 108---------------------------------- 109 110The Nucleo F303K8 board features an Arduino Zero V3 connector. Board is configured as follows: 111 112- UART_2 TX/RX : PA2/PA15 (ST-Link Virtual Port Com) 113- I2C1 SCL/SDA : PB7/PB6 114- SPI1 CS/SCK/MISO/MOSI : PA_4/PA_5/PA_6/PA_7 115- LD2 : PB3 116 117System Clock 118------------ 119 120The Nucleo F303K8 System Clock can be driven by an internal or 121external oscillator, as well as by the main PLL clock. By default the 122System Clock is driven by the PLL clock at 72 MHz. The input to the 123PLL is an 8 MHz internal clock supply. 124 125Serial Port 126----------- 127 128The Nucleo F303K8 board has 2 UARTs. The Zephyr console output is assigned 129to UART2. Default settings are 115200 8N1. 130 131 132Programming and Debugging 133************************* 134 135The Nucleo F303K8 board includes an ST-LINK/V2-1 embedded debug tool interface. 136 137Flashing 138======== 139 140The board is configured to be flashed using west `STM32CubeProgrammer`_ runner, 141so its :ref:`installation <stm32cubeprog-flash-host-tools>` is required. 142 143Alternatively, OpenOCD, JLink, or pyOCD can also be used to flash the board using 144the ``--runner`` (or ``-r``) option: 145 146.. code-block:: console 147 148 $ west flash --runner openocd 149 $ west flash --runner jlink 150 $ west flash --runner pyocd 151 152 153.. _Nucleo F303K8 website: 154 https://www.st.com/en/evaluation-tools/nucleo-F303K8.html 155 156.. _STM32 Nucleo-32 board User Manual: 157 https://www.st.com/resource/en/user_manual/dm00231744-stm32-nucleo32-boards-mb1180-stmicroelectronics.pdf 158 159.. _STM32F303K8 on www.st.com: 160 https://www.st.com/en/microcontrollers/stm32F303K8.html 161 162.. _STM32F303K8 reference manual: 163 https://www.st.com/resource/en/reference_manual/dm00043574-stm32f303xbcde-stm32f303x68-stm32f328x8-stm32f358xc-stm32f398xe-advanced-armbased-mcus-stmicroelectronics.pdf 164 165.. _STM32F303K8 datasheet: 166 https://www.st.com/resource/en/datasheet/stm32f303k8.pdf 167 168.. _STM32CubeProgrammer: 169 https://www.st.com/en/development-tools/stm32cubeprog.html 170