WCH CH32V307V-EVT-R1

Overview

The WCH [1] CH32V307V-EVT-R1 is an evaluation board for the RISC-V based CH32V307VCT6 SOC.

The board is equipped with a power LED, reset button, USB port for power, and two user LEDs. It also features Ethernet port and built-in programmer.

Hardware

The QingKe V4F 32-bit RISC-V processor of the WCH CH32V307V-EVT-R1 is clocked by an external crystal and runs at 144 MHz.

The WCH webpage on CH32V30x [2] contains the processor’s information and the datasheet. WCH CH32V307V-EVT-R1 board schematics can be found on CH32V307 openwch git repository [5].

Supported Features

The ch32v307v_evt_r1 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.

ch32v307v_evt_r1/ch32v307 target

Type

Location

Description

Compatible

CPU

on-chip

WCH QingKe V4F RISC-V MCU1

wch,qingke-v4f

Clock control

on-chip

WCH CH32V00x Reset and Clock Control (RCC)1

wch,rcc

on-chip

WCH CH32V00x HSE Clock1

wch,ch32v00x-hse-clock

on-chip

WCH CH32V00x HSI Clock1

wch,ch32v00x-hsi-clock

on-chip

Generic fixed-rate clock provider1

fixed-clock

on-chip

WCH CH32V20x/30x PLL1

wch,ch32v20x_30x-pll-clock

DMA

on-chip

WCH DMA controller2

wch,wch-dma

GPIO & Headers

on-chip

WCH CH32V00x General-Purpose Input/Output (GPIO)5

wch,gpio

I2C

on-chip

WCH I2C controller2

wch,i2c

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

WCH CH32V00x Programmable Fast Interrupt Controller (PFIC)1

wch,pfic

LED

on-board

Group of GPIO-controlled LEDs1

gpio-leds

MTD

on-chip

Flash node1

soc-nv-flash

Pin control

on-chip

WCH CH32V20x/30x AFIO1

wch,20x_30x-afio

Serial controller

on-chip

WCH CH32V00x UART17

wch,usart

SPI

on-chip

WCH SPI3

wch,spi

SRAM

on-chip

Generic on-chip SRAM1

mmio-sram

Timer

on-chip

WCH CH32V00x Systick1

wch,systick

Connections and IOs

LED

Board LEDs are not connected to SoC in layout. For blinky and threads sample applications you have to use jumper wires to connect them to I/O pins. You also need to change leds status to “okay” in boards/wch/ch32v307v_evt_r1/ch32v307v_evt_r1.dts.

LED connection

J3 header

J4 header

LED1

PD0

LED2

PD1

Programming and Debugging

The ch32v307v_evt_r1 board supports the runners and associated west commands listed below.

flash debug
minichlink ✅ (default)

Applications for the ch32v307v_evt_r1 board can be built and flashed in the usual way (see Building an Application and Run an Application for more details). The board includes WCH LinkE [4] programmer accessible on USB-C port P9.

Flashing

You can use minichlink [3] to flash the board. Once minichlink has been set up, build and flash applications as usual (see Building an Application and Run an Application for more details).

Here is an example for the Blinky application.

# From the root of the zephyr repository
west build -b ch32v307v-evt-r1 samples/basic/blinky
west flash

Or you can use Basic thread manipulation sample to test both LEDs.

# From the root of the zephyr repository
west build -b ch32v307v-evt-r1 samples/basic/threads
west flash

Debugging

This board can be debugged via minichlink.

References