STM32C0116-DK Discovery Kit
Overview
The STM32C0116-DK Discovery kit helps to discover features of the STM32C0 Series microcontroller in a UFQFPN20 package. This Discovery kit features one UFQFPN20 to DIL20 module designed with the STM32C011F6 microcontroller and allows the user to develop and share applications. It includes an on-board ST-LINK/V2-1 to debug and program the embedded STM32 microcontroller. Important board features include:
More information about the board can be found at the STM32C0116-DK website.
Hardware
The STM32C0116-DK Discovery kit provides the following hardware components:
STM32C011F6 microcontroller with 32 Kbytes of Flash memory and 6 Kbytes of RAM, in a UFQFPN20 package
On-board ST-LINK/V2-1 debugger/programmer with USB re-enumeration capability: mass storage and debug port
User LED
Reset push-button
5 way joystick using a single ADC input pin
Individual STM32 UFQFPN20 to DIL20 module
Board connectors:
USB Micro-B
DIL20 socket
Dedicated LCD footprint
Grove (UART)
2 x 10 pin headers for MCU daughterboard
Extension connectors
More information about STM32C011F6 can be found here:
Supported Features
The stm32c0116_dk
board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo
-
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
stm32c0116_dk/stm32c011xx
target
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M0+ CPU1 |
|
ADC |
on-chip |
STM32 ADC1 |
|
Clock control |
on-chip |
STM32F0/G0 RCC (Reset and Clock controller)1 |
|
on-chip |
STM32 HSE Clock1 |
||
on-chip |
STM32C0 HSI Clock1 |
||
on-chip |
STM32 LSE Clock1 |
||
on-chip |
Generic fixed-rate clock provider1 |
||
on-chip |
STM32 Microcontroller Clock Output (MCO)2 |
||
DMA |
on-chip |
STM32 DMA controller (V2)1 |
|
on-chip |
STM32 DMAMUX controller1 |
||
Flash controller |
on-chip |
STM32 Family flash controller1 |
|
GPIO & Headers |
on-chip |
STM32 GPIO Controller4 |
|
I2C |
on-chip |
STM32 I2C V2 controller1 |
|
Input |
on-board |
Group of GPIO-bound input keys1 |
|
on-board |
Input driver for ADC attached resistor ladder buttons1 |
||
Interrupt controller |
on-chip |
ARMv6-M NVIC (Nested Vectored Interrupt Controller) controller1 |
|
on-chip |
STM32G0 External Interrupt Controller1 |
||
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
on-board |
Group of PWM-controlled LEDs1 |
||
MTD |
on-chip |
STM32 flash memory1 |
|
Pin control |
on-chip |
STM32 Pin controller1 |
|
PWM |
on-chip |
||
Reset controller |
on-chip |
STM32 Reset and Clock Control (RCC) Controller1 |
|
RTC |
on-chip |
STM32 RTC1 |
|
Sensors |
on-chip |
STM32 TEMP for production calibrated sensors with a single calibration temperature1 |
|
on-chip |
STM32 VREF+1 |
||
Serial controller |
on-chip |
STM32 USART2 |
|
SMbus |
on-chip |
STM32 SMBus controller1 |
|
SPI |
on-chip |
STM32 SPI controller with embedded Rx and Tx FIFOs1 |
|
SRAM |
on-chip |
Generic on-chip SRAM description1 |
|
Timer |
on-chip |
ARMv6-M System Tick1 |
|
on-chip |
|||
Watchdog |
on-chip |
STM32 system window watchdog1 |
|
on-chip |
STM32 watchdog1 |
Pin Mapping
STM32C0116-DK Discovery kit has 4 GPIO controllers. These controllers are responsible for pin muxing, input/output, pull-up, etc.
For more details please refer to STM32C0116-DK board User Manual.
Default Zephyr Peripheral Mapping:
The STM32C0116 Discovery board is configured as follows:
UART_2 TX/RX : PA2/PA3
UART_1 TX/RX : PA9/PA10 (ST-Link Virtual Port Com)
PWM_1_CH3 : PB6
ADC1_CH8 : PA8
LD3 : PB6
Programming and Debugging
STM32C0116-DK Discovery kit includes an ST-LINK/V2 embedded debug tool interface.
Applications for the stm32c0116_dk
board configuration can be built and
flashed in the usual way (see Building an Application and
Run an Application for more details).
Flashing
The board is configured to be flashed using west STM32CubeProgrammer runner, so its installation is required.
Alternatively, JLink can also be used to flash the board using
the --runner
(or -r
) option:
$ west flash --runner jlink
Flashing an application to STM32C0116-DK
First, connect the STM32C0116 Discovery kit to your host computer using the USB port to prepare it for flashing. Then build and flash your application.
Here is an example for the Hello World application.
# From the root of the zephyr repository
west build -b stm32c0116_dk samples/hello_world
west flash
Run a serial host program to connect with your board:
$ minicom -D /dev/ttyACM0
You should see the following message on the console:
Hello World! arm