WCH CH32V203EVT
Overview
The WCH [1] CH32V203C8T6EVT hardware provides the evaluation kit for the CH32V203 MCU. A QuingKe V4B 32-bit RISC-V processor.
The board is equipped with two 2 LEDs, but those are not connected by default and a jumper has to be installed.
The WCH webpage on CH32V203 [2] contains the processor’s manuals. The openwch github [3] contains the schematics and some more references.
Hardware
The QingKe V4B 32-bit RISC-V processor is clocked by an external 8 MHz high speed crystal and a 32768 Hz low speed crystal, both also offering internal oscillators. Those run the board up to 144 MHz. The CH32V203 SoC Features 2-4 USART, 4 GPIO ports, 1-2 SPI, 0-2 I2C, 9-16 ADC, RTC, CAN, USB Device, USB Host, OPA, and several timers.
Supported Features
The ch32v203c8t6evt 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.
ch32v203c8t6evt@0/ch32v203 target
On-target memory for this board target: 20 KiB of RAM, 224 KiB of Flash.
Type |
Location |
Description |
Compatible |
|---|---|---|---|
CPU |
on-chip |
WCH QingKe V4B RISC-V MCU1 |
|
Clock control |
on-chip |
WCH CH32V00x Reset and Clock Control (RCC)1 |
|
on-chip |
WCH CH32V00x HSE Clock1 |
||
on-chip |
WCH CH32V00x HSI Clock1 |
||
on-chip |
Generic fixed-rate clock provider1 |
||
on-chip |
WCH CH32V20x/30x PLL1 |
||
DMA |
on-chip |
WCH DMA controller2 |
|
GPIO & Headers |
on-chip |
||
I2C |
on-chip |
WCH I2C controller2 |
|
Interrupt controller |
on-chip |
WCH CH32V00x Programmable Fast Interrupt Controller (PFIC)1 |
|
on-chip |
WCH CH32V003/20x/30x External Interrupt and Event Controller (EXTI)1 |
||
MTD |
on-chip |
Flash node1 |
|
Pin control |
on-chip |
WCH CH32V20x/30x AFIO1 |
|
RNG |
on-chip |
WCH CH32 RNG (Random Number Generator)1 |
|
Serial controller |
on-chip |
WCH SDI console1 |
|
on-chip |
|||
SPI |
on-chip |
WCH SPI2 |
|
SRAM |
on-chip |
Generic on-chip SRAM1 |
|
Timer |
on-chip |
WCH CH32V00x Systick1 |
|
Watchdog |
on-chip |
WCH Independent Watchdog (IWDG)1 |
Programming and Debugging
The ch32v203c8t6evt board supports the runners and associated west commands listed below.
| flash | debug | attach | rtt | debugserver | |
|---|---|---|---|---|---|
| minichlink | ✅ (default) | ||||
| openocd | ✅ | ✅ (default) | ✅ | ✅ | ✅ |
| wchisp | ✅ | ||||
| wlink | ✅ |
Applications for the ch32v203c8t6evt board can be built and flashed
in the usual way (see Building an Application and Run an Application
for more details); however, an external programmer is required since the board
does not have any built-in debug support.
The following pins of the external programmer must be connected to the following pins on the PCB:
VCC = VCC
GND = GND
SWIO = PA13
SWCLK = PA14
Flashing
You can use minichlink or wlink to flash the board. Once either has been set up, build and
flash applications as usual (see Building an Application and
Run an Application for more details).
Debugging
This board can be debugged via OpenOCD or minichlink.