CH582M 特性与概览
芯片型号:CH582M(QFN48 封装)
厂商:南京沁恒微电子(WCH)
学习状态:🚧 基础功能熟悉中
更新日期:2026年7月18日
1. 核心规格速查
| 参数 | 规格 |
| CPU 内核 | 青稞 V4 32位 RISC-V(QingKe V4) |
| 最高主频 | 80 MHz |
| 指令集 | RV32IMACF + 自研字节/半字压缩指令 |
| 程序存储 | 448 KB CodeFlash |
| 数据存储 | 32 KB SRAM |
| 工作电压 | 2.3 V ~ 3.6 V |
| 睡眠功耗 | 低至 0.3 μA |
| 封装 | QFN-48-EP (5 mm × 5 mm) |
2. 无线通信
BLE 5.3
- 集成 2 Mbps 低功耗蓝牙 协议栈(物理层 + 链路层 + Host)
- 支持角色:
- Peripheral(从机):最常用,如传感器、键鼠、手环
- Central(主机):扫描、连接多个从机
- Observer(观察者):仅扫描,不连接
- Broadcaster(广播者):仅广播,不接收
- 支持 BLE MESH 组网(需配合例程)
- 支持 2.4G 私有协议 模式(非标准 BLE,适合自定义遥控器)
实际应用例程(官方 EVT 包)
CH583EVT 包中 EXAM/ 目录包含 16 个大类、约 60+ 个独立例程,覆盖 BLE、USB、外设、RTOS 等。以下是分类速查:
BLE 例程(约 30+ 个)
| 例程 | 角色/场景 | 说明 |
Peripheral | 从机 | 通用从机,含 5 种属性特征(读/写/通知/可读可写/安全可读) |
Central | 主机 | 扫描并连接从机,执行读写操作 |
MultiCentral | 主机 | 同时连接管理多个从机 |
CentPeri / MultiCentPeri | 主从一体 | 芯片同时扮演主机和从机角色 |
Observer | 观察者 | 仅扫描广播包,不建立连接 |
Broadcaster | 广播者 | 仅发送广播,不接收扫描请求 |
BLE_UART | 从机 | 蓝牙串口透传(最常用,BLE ↔ UART 数据桥) |
BLE_USB | 从机 | BLE ↔ USB 数据桥 |
HID_Keyboard | 从机 | 模拟蓝牙键盘 |
HID_Mouse | 从机 | 模拟蓝牙鼠标 |
HID_Consumer | 从机 | 模拟媒体控制键(音量/播放等) |
HID_Touch | 从机 | 模拟触摸笔/触控板 |
HeartRate | 从机 | 心率计 Profile(模拟 Health 设备) |
RunningSensor | 从机 | 跑步传感器(RSCP Profile) |
CyclingSensor | 从机 | 骑行传感器(CSCP Profile) |
SpeedTest_Central / SpeedTest_Peripheral | 主机/从机 | BLE 传输速率测试 |
Direct_Test_Mode | — | BLE 射频直连测试(DTM) |
RF_PHY / RF_PHY_Hop | — | 2.4G 私有协议(非标准 BLE)收发/跳频 |
SYNC_ADV / SYNC_SCAN | — | 周期同步广播/扫描(Periodic Advertising) |
peripheral_ancs_client | 从机 | Apple Notification Center Service 客户端 |
IoCHub_NET | — | IoCHub 网络相关 |
LWNS | — | 轻量级组网协议 |
| MESH 系列 | 节点 | 天猫精灵灯、厂商自定义模型、代理节点、低功耗节点、朋友节点、自配网等 15+ 个子例程 |
| OTA 系列 | — | 备份升级 / 固定库升级(含 IAP、JumpIAP、用户固件 3 件套) |
USB 例程
| 例程 | 模式 | 说明 |
Device/COM | Device | USB-CDC 虚拟串口 |
Device/HID_CompliantDev | Device | 标准 HID 设备 |
Device/CompoundDev | Device | 复合设备(CDC + HID 等组合) |
Device/CompoundU2Dev | Device | 复合设备(USB2.0 全速) |
Device/VendorDefinedDev | Device | 厂商自定义 USB 设备 |
Host/HostEnum | Host | USB 主机枚举 |
Host/HostU2Enum | Host | USB2.0 主机枚举 |
Host/HostAOA | Host | Android Open Accessory 协议 |
Host/U_DISK | Host | U 盘读写(Mass Storage) |
外设基础例程
| 例程 | 说明 |
ADC | 14 通道 12bit ADC 采集 |
FLASH | CodeFlash / DataFlash 读写擦除操作 |
I2C | I2C 主从通信(CH582M 无硬件 I2C,需 GPIO 模拟) |
SPI | SPI 主从通信 |
TMR | 定时器 / PWM 输出 |
PWMX | 高级 PWM 功能 |
TOUCH | 触摸按键检测 |
UART1 | 串口通信 |
PM | 电源管理(低功耗模式切换) |
RTOS 与系统例程
| 例程 | 说明 |
FreeRTOS | 集成 FreeRTOS 操作系统 |
RT-Thread | 集成 RT-Thread 操作系统 |
HarmonyOS | 集成 OpenHarmony 轻量系统 |
IAP | 在应用编程(APP / UART_IAP / USB_IAP 3 种方式) |
SRC | 启动代码和系统底层相关 |
3. USB 外设
- 2 组独立全速 USB 2.0(12 Mbps)
- 可同时做 Host + Device
- 或双 Device / 双 Host 组合
- 常见用法:
- USB-CDC(虚拟串口)用于调试/升级
- USB-HID 用于键鼠设备
- USB-U盘 用于数据记录
4. 其他片上外设
| 外设 | 数量/规格 | 学习要点 |
| UART | 4 组 | 蓝牙透传、日志打印、GPS 等 |
| SPI | 1 组(CH583 有 2 组) | 驱动屏幕、外接 Flash、传感器 |
| ADC | 14 通道,12 bit | 电池电压、模拟传感器采集 |
| 触摸按键 | 内置检测模块 | 省外部电容,适合做面板 |
| RTC | 内置日历 | 低功耗定时唤醒、时间戳 |
| GPIO | 最多 40 个 | 注意复用优先级 |
| 定时器 | 内置通用定时器 | 做 PWM、延时、任务调度 |
| 温度传感器 | 内置 | 粗略温度监测 |
| 看门狗 | 独立 | 防死机复位 |
5. 软件开发生态
开发环境
| 工具 | 说明 |
| MounRiver Studio (MRS) | 沁恒官方免费 IDE,基于 Eclipse,内置 RISC-V GCC 工具链 |
| WCH-Link | 调试下载器(RISC-V 两线调试) |
| ISP 工具 | 串口/USB 免调试器下载 |
软件框架
- TMOS(Task Management Operating System)
- 沁恒提供的任务调度系统,非 RTOS,但支持任务分时和事件驱动
- BLE 协议栈跑在 TMOS 上,用户应用建议也基于 TMOS 编写
- 比裸机轮询更省功耗,比 FreeRTOS 更轻量
关键 SDK 资源
| 资源 | 位置/获取方式 |
| CH583 EVT 包 | 官网下载,含全部例程 + 蓝牙开发手册 |
| BLE 协议栈库 | LIB/ 目录,以库文件形式提供 |
| MESH 协议栈库 | MESH/MESH_LIB/ 目录 |
| 低功耗蓝牙软件开发参考手册 | EVT 包内 PDF |
6. Flash 与存储(速览)
📄 详细解析已拆分为独立文章:CH582M Flash 存储与 SNV 详解
CH582M 的 512 KB Flash 被分为 4 个区域:448 KB CodeFlash(程序)、32 KB DataFlash(用户数据)、24 KB BootLoader、8 KB InfoFlash。关键注意点:
| 要点 | 说明 |
| CodeFlash 最小擦除 4 KB,带加解密 | 擦后读前 4 字节是"乱码"属正常 |
| DataFlash 最小擦除 256 B,无加密 | 偏移地址操作,ISP 可直接读取 |
| 写前必擦 | Flash 不能直接覆盖写,必须先擦除 |
| Buff 4 字节对齐 | RAM 中读写缓冲区地址必须对齐,否则 HardFault |
| SNV 在尾部 | 0x7E00 偏移后是 BLE 配对信息,误写会导致重新配对 |
| 擦写寿命 | 常温 10 万次,全温 5 万次 |
片上存储不够用?通过 SPI 外接 W25Q64(SPI Flash)、AT24C02(EEPROM)、FM25W256(FRAM) 等芯片扩展,详见详解文章。
7. 硬件设计参考
最小系统要点
- 电源:2.3 ~ 3.6 V,建议 3.3 V LDO 供电
- 晶振:内置 HSI,外部 32.768 kHz 晶振(可选,用于 RTC 精度)
- 复位:外部 NRST 引脚 + 上电复位 POR
- 天线:PCB 板载天线或陶瓷天线(参考官方 SCHPCB 封装库)
- 调试:WCH-Link 两线调试,或串口 ISP 下载
引脚复用注意
CH582M 为 QFN48,很多引脚有 3 ~ 4 个复用功能,设计时要先查 引脚定义表 确认优先级。
8. 沁恒 CH58x 系列选型对比
| 参数 | CH582 | CH583 | CH585 | CH592 | CH591 |
| 内核 | 青稞 V4 (RISC-V) | 青稞 V4 (RISC-V) | 青稞 V3C (RISC-V) | 青稞 V4C (RISC-V) | 青稞 V4C (RISC-V) |
| 主频 | 80 MHz | 80 MHz | 78 MHz | 20 MHz | 20 MHz |
| CodeFlash | 448 KB | 448 KB | 448 KB | 448 KB | 192 KB |
| DataFlash | 32 KB | 32 KB | 32 KB | 32 KB | 32 KB |
| SRAM | 32 KB | 32 KB | 128 KB ⭐ | 26 KB | 26 KB |
| BLE 版本 | 5.3 | 5.3 | 5.4 | 5.4 | 5.4 |
| USB | 2 × 全速 | 2 × 全速 | 1 × 高速 480M + 全速 | 1 × 全速 | 1 × 全速 |
| NFC | ❌ | ❌ | ✅ | ❌ | ❌ |
| 段式 LCD | ❌ | ❌ | ✅ (112点) | ✅ (80点) | ✅ (部分型号) |
| LED 点阵 | ❌ | ❌ | ✅ | ❌ | ❌ |
| SPI | 1 | 2 | 2 | 1 | 1 |
| 触摸按键 | ✅ | ✅ | ✅ (14ch) | ✅ (12ch) | ❌ |
| GPIO | 40 | 40 | 40 | 24 | 20/12/10 |
| 最低电压 | 2.3 V | 1.75 V | 1.7 V | 1.7 V | 1.7 / 2.3 V |
| 封装 | QFN48 | QFN48 | QFN48/QFN32/QFN20 | QFN32/QFN28/QFN20 | QFN28/QFN20/TSSOP16 |
| 价格区间 | 低 | 低 | 中 | 低 | 很低 |
| 典型场景 | 通用 BLE + 双 USB | 通用 BLE + 双 USB | 高性能、大 RAM、USB HS、NFC | 低功耗、小体积、成本极致 | 极简成本方案 |
选型建议
| 你的需求 | 推荐型号 | 理由 |
| 刚入门学 BLE,要资料全 | CH582M | 例程最多,社区最活跃,性价比最高 |
| 程序大 / RAM 吃紧 / 要 USB 高速 | CH585 | 128 KB SRAM 是 4 倍提升,USB 480M 传文件快 10 倍 |
| 电池供电、小体积、成本压到极致 | CH592F | QFN20 只有 3×3 mm,功耗更低 |
| 只需要 BLE 透传,啥都不要 | CH591R | TSSOP16 封装,192 KB Flash 够用,价格最低 |
📌 一句话:CH582M 是甜点型号——功能够全、价格够低、资料够多。如果不够用了,按"缺什么补什么"升级:RAM 不够 → CH585;体积/功耗 → CH592;成本 → CH591。
9. Nordic nRF 系列对比(预习框架)
沁恒走的是 RISC-V + 国产低价 路线,Nordic 走的是 ARM + 国际生态 路线。两者不是直接替代关系,而是不同场景的最优解。
| 参数 | nRF52832 | nRF52840 | nRF5340 | nRF54H20 |
| 内核 | Cortex-M4 @ 64 MHz | Cortex-M4F @ 64 MHz | 双核 Cortex-M33 | 双 Cortex-M33 + 双 RISC-V |
| Flash | 512 KB | 1 MB | 1 MB + 256 KB | 2 MB |
| RAM | 64 KB | 256 KB | 512 KB + 64 KB | 1 MB |
| BLE 版本 | 5.0 | 5.0 / 5.1 (长距离/高速) | 5.3 | 5.4 |
| TX 功率 | +4 dBm | +8 dBm | +3 dBm | +10 dBm |
| 接收灵敏度 | -96 dBm | -103 dBm (125Kbps) | - | - |
| USB | ❌ | ✅ 全速 | ✅ 全速 | ✅ 高速 |
| NFC | ✅ | ✅ | ✅ | ✅ |
| 802.15.4 | ❌ | ✅ (Thread/Zigbee) | ✅ | ✅ |
| LE Audio | ❌ | ❌ | ✅ | ✅ |
| Direction Finding | ❌ | ❌ | ✅ (AoA/AoD) | ✅ |
| 最大速率 | 2 Mbps | 2 Mbps | 2 Mbps | 4 Mbps |
| SDK | nRF5 SDK | nRF5 SDK | nRF Connect SDK (Zephyr) | nRF Connect SDK |
| IDE | Keil/SES | Keil/SES | VS Code + nRF Connect | VS Code + nRF Connect |
| 价格 | 中 | 中高 | 高 | 很高 |
| 典型场景 | 手环/传感器 | 键鼠/复杂网关 | 音频/定位/多协议 | Matter/高端音频 |
沁恒 vs Nordic 的选择逻辑
| 场景 | 推荐平台 | 原因 |
| 成本敏感、出货量 10K+、USB 调试/升级刚需 | 沁恒 CH58x | 价格低 30~50%,中文支持好,USB 双口设计更灵活 |
| 需要大 RAM 跑算法(如数字信号处理) | Nordic nRF52840/5340 | 256 KB / 512 KB RAM 碾压 CH58x 的 32 KB |
| 需要 LE Audio、蓝牙定位、Matter | Nordic nRF5340/54H20 | 沁恒目前不支持这些高级特性 |
| 需要过 CE/FCC 认证出口 | Nordic | 协议栈认证完善,全球法规支持更成熟 |
| 国内 IoT 项目、快速落地、低 BOM | 沁恒 | 生态在国内更接地气,MRS 免费,无需 Keil 授权 |
💡 我的计划:先吃透 CH582M(低成本 BLE + 双 USB),后续如果要搞音频、定位或超大内存应用,再切 nRF5340。两者的开发思维差异主要在 SDK 架构(沁恒是库 + TMOS,Nordic 是 Zephyr RTOS + 配置系统),底层 BLE 协议原理是通的。
10. 学习 TODO
参考链接