Back to Zephyr

Overview

boards/wch/ch32v003f4p6_dev_board/doc/index.rst

4.4.02.9 KB
Original Source

.. zephyr:board:: ch32v003f4p6_dev_board

Overview


The WCH_ CH32V003F4P6 Development Board hardware provides support for QingKe V2A 32-bit RISC-V processor and the following devices:

  • CLOCK
  • :abbr:GPIO (General Purpose Input Output)
  • :abbr:NVIC (Nested Vectored Interrupt Controller)

The board is equipped with one LED, wired to PD1 and SWIO pins. The WCH webpage on CH32V003_ contains the processor's information and the datasheet.

Hardware


The QingKe V2A 32-bit RISC-V processor of the WCH CH32V003F4P6_DEV_BOARD is clocked by an internal RC oscillator and runs at 24 MHz.

Supported Features

.. zephyr:board-supported-hw::

Connections and IOs

LED

  • LED1 (red) = PD1

Programming and Debugging


.. zephyr:board-supported-runners::

Applications for the ch32v003f4p6_dev_board board target can be built and flashed in the usual way (see :ref:build_an_application and :ref:application_run 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 (see image):

  • VCC = VCC (do not power the board from the USB port at the same time)
  • GND = GND
  • SWIO = PD1

Flashing

SWIO pin is connected to PD1 and also to led on the board. By default, the function of PD1 is SWD. To use the led on the board, the function of PD1 is changed to GPIO if PD1 is not put to ground (see :zephyr_file:boards/wch/ch32v003f4p6_dev_board/board.c). In order to be able to reflash the board, if some zephyr application is already loaded in flash, power on the board with PD1 put to ground to let PD1 as SWIO. After that, reconnect the external debugger SWDIO pin to PD1/SWIO to be able to flash the board using the external debugger.

You can use minichlink to flash the board. Once minichlink has been set up, build and flash applications as usual (see :ref:build_an_application and :ref:application_run for more details).

Here is an example for the :zephyr:code-sample:blinky application.

.. zephyr-app-commands:: :zephyr-app: samples/basic/blinky :board: ch32v003f4p6_dev_board :goals: build flash

Debugging

This board can be debugged via OpenOCD or minichlink.

Testing the LED on the WCH CH32V003F4P6_DEV_BOARD


There is 1 sample program that allow you to test that the LED on the board is working properly with Zephyr:

.. code-block:: console

samples/basic/blinky

You can build and flash the examples to make sure Zephyr is running correctly on your board. The button and LED definition can be found in :zephyr_file:boards/wch/ch32v003f4p6_dev_board/ch32v003f4p6_dev_board.dts.

References


.. target-notes::

.. _WCH: http://www.wch-ic.com .. _WCH webpage on CH32V003: https://www.wch-ic.com/products/CH32V003.html