小华半导体-低功耗 MCU:HC32L021 来喽~ 这是他哥,出新品还是比较快的。
最近这个小华的新品给到我了,又是一颗 M0+的 MCU,我整体的研究了一下,感觉还是蛮多感受的,国产感觉最近俩年可能是和 M0+的核心较上劲儿了,库库发新品,也没有看到更加高效的核心,比如 M23,M33 这些:

比如姜主任搞飞控,就需要强大的DSP 核心
其实 M33 也是 M4 的 DSP 性能,只有一些加密而已。
然后这个外设是加入的更加独出心裁,我时而觉得有点像一个“无脑”巨人,这里的无脑不是弱的意思,而是不能做太多实时性的活,还有一点就是如果追求较多的外设的话,封装上面的引脚又不够了:

感觉有点像最近看的战锤 40K 里面的阿斯塔特的感觉

首先是封装最大,也是功能最全的
这个图非常的清晰,可以看看芯片的命名方式:

直接就可以识图了

这个有点像 TI 的板子设计
也可以快速选型:

可以看大全系都给了 128k

可以看到除了这个引脚少点,功能是一点不缩水
书接上文:
“既然有这么多外设、还有高速 ADC 和 LCD 控制器,为什么不用 Cortex-M3/M4,而只用 M0+?”
这颗 MCU 面向的不是高算力场景(如DSP或复杂运算),而是传感、采集、测控类系统,这些系统有几个共性:
系统类型 | 特征 | 例子 |
|---|---|---|
仪表类 | 数据量小、实时性高 | 电表、血压计、温湿度计 |
可穿戴类 | 待机时间长 | 智能手环、体温计 |
工业采集类 | 外设多、逻辑明确 | ADC采集、比较器保护、PWM驱动 |
这些应用的算力需求极低,但功耗要求极严、外设交互极多。
因此选用 Cortex-M0+ 是“能耗最优解”:

指令集简化 → 功耗小、逻辑密度高
无硬件除法、无乱序执行 → 逻辑门少、晶体管功耗低
2 级流水线 → 响应快、确定性强(无复杂分支预测)
内核电流仅 40–60 µA/MHz,比 M3/M4 低约 30–50%
模式 | CPU | 外设 | 时钟 | 功耗 |
|---|---|---|---|---|
运行 | 运行 | 可选 | 主时钟 | 51 μA/MHz |
休眠 | 停止 | 关闭 | 主时钟运行 | 27 μA/MHz |
深度休眠 | 停止 | 关闭 | 所有时钟关闭 | 0.65 μA |

一部分
换句话说:
外设多 ≠ 一定要用高端内核,只要外设能自主运作(DMA / Trigger / Event),CPU 就不必参与。
HC32L12x 的体系不是让 CPU 去轮询,而是让外设互相触发、自动流转。另外这也不仅仅是M0+的设计,其实现在 MCU 都趋向于这样的设计,比如 MSPM0 的事件功能,以及领慧的触发互联:

无一不是再解放 CPU
比较器 VC → 触发 ADC 转换 → ADC DMA → Timer 更新 PWM
整个过程CPU 不参与,靠硬件事件触发矩阵完成:
VC 输出硬件信号连到 ADC 触发器
ADC 完成转换后自动启动 DMA
DMA 将结果写入定时器寄存器
PWM 波形立即更新→ CPU 空闲、功耗低、响应快(几十 ns 级)
模块链路 | 说明 |
|---|---|
Timer → ADC | 定时采样 |
VC → Timer | 过流关断 |
RTC → Wake | 定时唤醒 |
UART → DMA | 零拷贝传输 |
因此 M0+ 只需配置和管理这些通路,不用实时干预。
HC32L12x 的“智能”不在 CPU,而在“外设互联矩阵 + DMA + Trigger 控制”,M0+ 核心只是一个调度大脑,外设是分布式神经元,这样的角度来看这样的设计,其实就比较说的过去了。
M0+的最大优势就是功耗低,一个小电池工作一年,那就比较要用最小面积的晶体管,大部分外设(ADC、SPI、Timer)都有独立时钟域,能在 CPU 休眠时继续运行,以及多样的外设门开关,低功耗?什么是他妈的低功耗!

呜呜呜,不会 P 图啦!

其实就是很简单
用就费电,不用就不费电,所以顺手就把外设关了,以及时钟。
功能 | 时钟域 | CPU 是否参与 |
|---|---|---|
ADC 采样 | PCLK / 异步触发 | 否 |
Timer PWM | 独立计数器时钟 | 否 |
RTC / LPTIM | 32 kHz | 否 |
DMA 搬运 | AHB 总线时钟 | 否 |
LCD 显示 | LCDCLK | 否 |
→ 因此系统可以:CPU 工作在 4 MHz(极低功耗);外设在独立域高频运作(如 ADC@2 Msps);功耗仍极低(几十 µA 级),这正是 M0+ 架构适配“多外设、低功耗”的关键。

还是很灵活的
即使算力不强,M0+ 对于控制类任务完全够用。
操作类型 | 周期 | 说明 |
|---|---|---|
GPIO 响应中断 | <10 cycles | 触发快 |
ADC 结果计算(滤波/平均) | 1–2 µs | 远快于采样速率 |
UART 处理(9600–115200bps) | <5% CPU 占用 | 丰裕 |
LCD 刷新 | DMA 驱动 | CPU 不占用 |
相比之下,M3/M4 只有在:DSP / FFT / PID 运算密集型;USB / 以太网协议栈;多任务 RTOS 复杂场景;才真正需要;而 HC32L12x 明显不走那条路线。
在芯片设计层面:
模块 | 晶体管占比(约) |
|---|---|
Cortex-M0+ 核心 | <10% |
模拟前端 (ADC/VC/LVD) | ~25% |
时钟/电源管理 | ~15% |
外设矩阵/DMA/LCD | ~40% |
其他逻辑 | ~10% |
因为 M0+ 面积极小(约 0.04 mm² @ 90 nm),留出了大量空间放外设;如果换成 M4(带 FPU、NVIC 扩展),功耗和面积会翻倍;而绝大多数目标应用(LCD 表、医疗仪表)根本用不到。
HC32L12x 体现了“控制器去 CPU 化趋势”的思路
现代低功耗 MCU 已不再依赖 CPU 做所有控制。 取而代之的是:
外设间触发矩阵(Peripheral Trigger Matrix, PTM),DMA 自动搬运,独立时钟域管理,事件控制器 (ECL)
HC32 系列中有部分型号(如 HC32F460 / HC32M120 / HC32L130)包含完整的 Peripheral Trigger Matrix (PTM) 或 AOS(A peripheral trigger system) 模块;虽然 HC32L12x 没有独立命名为 “PTM”的模块,但在参考手册中,多个外设内部定义了可被触发的输入源和可输出的触发信号。
这种模式叫做:
“硬件有限状态机 (FSM) + 轻量 CPU 管理”
就给你一种感觉,外设是最重要的,只是没有办法才给了一个 M0+的核心罢了。

image-20251026103607964
然后ARM 这种架构确实是好呀,越设计越简洁,就是几个 AHB 和 APB 的桥,高低速和实时性分割开。
(说小话,有朋友告诉我,芯源的 MCU 都是 XH 的人设计的,我看这个数据手册的写法,emmmm,感觉是很大的一样了)


哈哈哈,感觉灵魂一样
这个我在 STM32 的一些型号里面看到的。


加入了了比传统的 IIC 更加强大的外设
特性 | 普通 I²C | HSI2C |
|---|---|---|
速率 | 100 / 400 kHz | 100 / 400 / 1000 kHz |
FIFO | 无 | 16 字节 TX/RX FIFO |
DMA 支持 | 一般仅 TX | TX + RX 全双向 |
电源域 | 主域 | 可低功耗独立运行 |
硬件自动序列 | 部分 | 完整 START–STOP 流程 |
唤醒功能 | 无 | 可唤醒 CPU |
时序配置 | 固定延时 | 寄存器可调(TIMINGR) |
多主仲裁 | 可选 | 默认支持并自动恢复 |
细节不说,自己看手册,写一个例子。
比如一个低功耗多传感器采集系统:多个 I²C 传感器(温湿度、加速度、光照)挂在总线上;MCU 进入 DeepSleep;某传感器周期性发送 START;HSI2C 唤醒系统 + DMA 自动收数据;CPU 仅在 DMA 结束中断时处理一次→ 功耗极低、CPU 负载极小。

这我喜欢,这我熟悉
还是蛮快的,12bit,以及差不多到了满轨的采集范围。

image-20251026105028730
使用起来简单,也有了比较完整的回环检测功能,可以看系统的电压情况。

中断也很完整
因为现在 MCU 的外设和设计都是固定的,单纯的也已经没有什么可解读的了,毕竟是一个数学电路,没有模拟烦人。但是确实是国产的 MCU 越来越有性价比了,128K 的存储空间,我不敢想。然后还有一堆模拟外设,在不那么精确的情况下都可以剩下不少其他的 bom,而且还有特色的时钟校准,都可以剩下了晶振,基本上接电就可以使用,电源轨道也宽;对于开发者是好事情,祝越来越好。
可以找他们申请和购买。
图片
https://www.xhsc.com.cn/product/1310.html