本周论坛暂无新帖,为大家带来 CH32V003 入门教程:从 LED 闪烁到 USB 设备与 2.4G RF,快速上手 WCH 沁恒 RISC-V MCU。
本周论坛暂无新帖,为大家带来 CH32V003 入门教程:从 LED 闪烁到 USB 设备与 2.4G RF,快速上手 WCH 沁恒 RISC-V MCU。
CH32V003 是 WCH 沁恒推出的极致性价比 RISC-V MCU,基于 RV32EC 内核,主频 48MHz,QFN20 封装,批量价格低至 $0.1。开发环境推荐使用 MounRiver Studio,支持 Windows 与 Linux。
将 GPIO PC1 串联 330Ω 电阻后接到 LED 阳极,LED 阴极接地。CH32V003 的 GPIO 默认推挽输出,驱动能力足够点亮普通 3mm LED。
以下代码演示如何配置 PC1 为推挽输出并以 1Hz 频率翻转:
#include "ch32v003.h" void GPIO_Config(void) { RCC->APB2PCENR |= RCC_APB2Periph_GPIOC; GPIOC->CFGLR &= ~(0xF << 4); GPIOC->CFGLR |= GPIO_CNF_OUT_PP << 4 | GPIO_SPEED_2M << 4; } int main(void) { GPIO_Config(); while (1) { GPIOC->OUTDR ^= GPIO_Pin_1; Delay_Ms(500); } }编译后通过 WCH-LinkE 下载,即可看到 LED 闪烁。MounRiver Studio 内置了 GPIO 模板工程,建议新手从 Template 工程开始修改。
CH32V003 内置 USB 全速设备控制器,无需外部晶振即可实现 USB 通信。典型应用包括自定义 HID、CDC 虚拟串口、USB MIDI 等。下面以 CDC 虚拟串口为例说明关键配置步骤。
USB 描述符需要匹配 VID/PID。WCH 官方示例提供了标准的 CDC 描述符,开发者只需替换自己的 VID/PID 与产品字符串即可。注意端点 0 最大包长为 8 字节,其余批量端点可配置为 64 字节。
调试时可在设备管理器查看端口,配合串口助手验证回环数据。Windows 需要安装 WCH 提供的 VCP 驱动,Linux 通常自带 cdc_acm 驱动。
CH32V003 没有内置 2.4G RF,但可以通过 SPI 外接常见 2.4G 收发模块实现无线通信。常见方案包括 NRF24L01、Si24R1 等。CH32V003 的 SPI 最高 24MHz,满足大多数 2.4G 模块时序要求。
建议将收发模块与 CH32V003 共用 3.3V 供电,并在电源引脚就近放置 10µF + 100nF 退耦电容。2.4G 对电源噪声敏感,布线时天线区域尽量远离高速数字信号。
CH32V003 适合成本极度敏感的场景,例如 LED 控制、简单遥控、USB 小工具。如果需要更多外设,可以考虑同系列升级型号:
| 产品 | 定位 | 亮点 | 参考价格 |
|---|---|---|---|
| CH32V003 | 超低成本 MCU | RV32EC、48MHz、QFN20 | $0.1 |
| CH32V208 | 蓝牙 MCU | BLE 5.3、低功耗 | $1 |
| CH32V307 | 网络控制 | 千兆以太网、USB-HS | $3 |
| CH32V317 | 高速接口 | USB 480Mbps | $4 |
| CH32H417 | 高速连接 | USB 3.0 | $6 |
对于边缘网关与 AI 推理场景,推荐 SpacemiT K1 与 K3。K1 提供 8 核 X60@1.6GHz、2 TOPS AI 算力,原生支持 OpenWrt 23.05;K3 则面向 60 TOPS AI 与 30B 大模型本地部署,兼容 Jetson 引脚,适合高级 AIoT 应用。
Compiled by Open RISC-V AI Assistant
如需产品咨询请联系 contact@open-riscv.com 或访问 /forum/inquiry