1.. _stm32f072_eval_board: 2 3ST STM32F072 Evaluation 4####################### 5 6Overview 7******** 8 9The STM32F072-EVAL Discovery kit features an ARM Cortex-M0 based STM32F072VBT6 MCU 10with a wide range of connectivity support and configurations. 11Here are some highlights of the STM32F072-EVAL board: 12 13- Four 5 V power supply options: power jack, ST-LINK/V2 USB connector, user USB connector, or daughter board 14- Stereo audio jack, which supports a headset with microphone connected to DAC and ADC of STM32F072VBT6. 15- 2G Byte (or more) SPI interface MicroSD card 16- I2C compatible serial interface temperature sensor 17- RF E2PROM 18- RS232 and RS485 communication 19- IrDA transceiver 20- IR LED and IR receiver 21- SWD debug support, ST-LINK/V2 embedded 22- 240x320 TFT color LCD connected to SPI interface of STM32F072VBT6 23- Joystick with 4-direction control and selector 24- Reset and tamper buttons 25- Four color user LEDs and two LEDs as MCU low power alarm 26- Extension connector for daughter board or wrapping board 27- MCU voltage choice: fixed 3.3 V or adjustable from 1.65 V to 3.6 V 28- USB full-speed connector 29- Touch sensing buttons 30- RTC with backup battery 31- CAN2.0A/B compliant connector 32- Light Dependent Resistor (LDR) 33- Potentiometer 34- Two HDMI connectors with DDC and CEC 35- Smart Card slot 36- Motor control connector 37 38 39.. image:: img/stm32f072_eval.jpg 40 :align: center 41 :alt: STM32F072-EVAL 42 43Hardware 44******** 45 46STM32F072-EVAL Discovery kit provides the following hardware components: 47 48- STM32F072VBT6 in LQFP100 package 49- ARM |reg| 32-bit Cortex |reg| -M0 CPU 50- 48 MHz max CPU frequency 51- VDD from 2.0 V to 3.6 V 52- 128 KB Flash 53- 16 KB SRAM with HW parity 54- GPIO with external interrupt capability 55- one 12-bit ADC with 16 channels 56- one 12-bit D/A converters with 2 channels 57- RTC 58- Advanced-control Timer 59- General Purpose Timers (8) 60- Watchdog Timers (2) 61- USART (4) 62- I2C (2) 63- SPI (2) 64- CAN 65- USB 2.0 OTG FS with on-chip PHY 66- CRC calculation unit 67- DMA Controller 68- HDMI CEC Controller 69- 24 capacitive sensing channels for touchkey, linear, and rotary touch sensors 70- Up to 87 fast I/Os: 68 I/Os with 5V tolerant capability and 19 with independent supply 71 72More information about STM32F072VB can be found here: 73 - `STM32F072VB on www.st.com`_ 74 - `STM32F072 reference manual`_ 75 76Supported Features 77================== 78 79The Zephyr stm32f072_eval board configuration supports the following hardware features: 80 81+-----------+------------+-------------------------------------+ 82| Interface | Controller | Driver/Component | 83+===========+============+=====================================+ 84| NVIC | on-chip | nested vector interrupt controller | 85+-----------+------------+-------------------------------------+ 86| UART | on-chip | serial port-polling; | 87| | | serial port-interrupt | 88+-----------+------------+-------------------------------------+ 89| PINMUX | on-chip | pinmux | 90+-----------+------------+-------------------------------------+ 91| GPIO | on-chip | gpio | 92+-----------+------------+-------------------------------------+ 93| PWM | on-chip | pwm | 94+-----------+------------+-------------------------------------+ 95| CLOCK | on-chip | reset and clock control | 96+-----------+------------+-------------------------------------+ 97| WATCHDOG | on-chip | independent watchdog | 98+-----------+------------+-------------------------------------+ 99 100Other hardware features are not yet supported on this Zephyr porting. 101 102The default configuration can be found in 103:zephyr_file:`boards/st/stm32f072_eval/stm32f072_eval_defconfig` 104 105 106Pin Mapping 107=========== 108 109STM32F072-EVAL Discovery kit has 6 GPIO controllers. These controllers are responsible for pin muxing, 110input/output, pull-up, etc. 111 112For more details please refer to STM32F072-EVAL board User Manual. 113 114Default Zephyr Peripheral Mapping: 115---------------------------------- 116- UART_2_TX : PD5 117- UART_2_RX : PD6 118- TAMPER_PB : PC13 119- JOYSTICK_RIGHT_PB : PE3 120- JOYSTICK_LEFT_PB : PF2 121- JOYSTICK_UP_PB : PF9 122- JOYSTICK_DOWN_PB : PF10 123- JOYSTICK_SEL_PB : PA0 124- LD1 : PD8 125- LD2 : PD9 126- LD3 : PD10 127- LD4 : PD11 128 129System Clock 130============ 131 132STM32F072-EVAL System Clock could be driven by an internal or external oscillator, 133as well as the main PLL clock. By default the System clock is driven by the PLL clock at 48MHz, 134driven by an 8MHz high speed internal clock. 135 136Serial Port 137=========== 138 139STM32F072-EVAL Discovery kit has up to 4 UARTs. The Zephyr console output is assigned to UART2. 140Default settings are 115200 8N1. 141 142Programming and Debugging 143************************* 144 145Applications for the ``stm32f072_eval`` board configuration can be built and 146flashed in the usual way (see :ref:`build_an_application` and 147:ref:`application_run` for more details). 148 149Flashing 150======== 151 152STM32F072-EVAL Discovery kit includes an ST-LINK/V2 embedded debug tool interface. 153This interface is supported by the openocd version included in Zephyr SDK. 154 155Flashing an application to STM32F072-EVAL 156------------------------------------------- 157 158Here is an example for the :zephyr:code-sample:`blinky` application. 159 160.. zephyr-app-commands:: 161 :zephyr-app: samples/basic/blinky 162 :board: stm32f072_eval 163 :goals: build flash 164 165You will see the LED blinking every second. 166 167Debugging 168========= 169 170You can debug an application in the usual way. Here is an example for the 171:zephyr:code-sample:`blinky` application. 172 173.. zephyr-app-commands:: 174 :zephyr-app: samples/basic/blinky 175 :board: stm32f072_eval 176 :maybe-skip-config: 177 :goals: debug 178 179 180.. _STM32F072VB on www.st.com: 181 https://www.st.com/en/microcontrollers/stm32f072vb.html 182 183.. _STM32F072 reference manual: 184 https://www.st.com/resource/en/reference_manual/dm00031936.pdf 185