[通用M0+] HC32L196超低功耗模式切换策略与功耗预算分配如何设计?

[复制链接]
190|21
p0gon9y 发表于 2026-11-7 16:07 | 显示全部楼层
水表这行的功耗账不能按三个模块各分一份来算,得先看谁必须一直活着。RTC 只是时基,段码刷新本来就是 LCD 控制器自己在扫,CPU 睡着屏也照样显示,真正需要 CPU 的只有脉冲攒到阈值、阀门动作和通信这三件事。把这三件事做成事件源,其余时间沉到 Power Down,平均电流才有得谈。我们那边以前栽在脉冲脚上,干簧管断开时引脚悬空,漏的那点电比整机预算还难看,后来统一改成输入加下拉,睡前再把没用的脚设成固定电平,底电流才落下去。这套东西最好在原理图阶段就定,板子回来再补很折腾。
g0d5xs 发表于 2026-11-7 17:53 | 显示全部楼层
预算怎么分,我习惯先把底电流量出来再谈分配。把外设全关掉只留 RTC,单独测一遍;再把 LCD 加上,看增量是多少;最后加脉冲计数。每一档的增量心里有数,才知道该从哪抠。楼里说的整机 10μA、静态 5μA 是官方口径,实际板子上还有稳压器、上拉、电池自放电这些,别拿这个数当设计余量。
su1yirg 发表于 2026-11-7 19:00 | 显示全部楼层
RTC 走时用外部 32.768k 晶体比内部 RC 稳,但起振裕量和负载电容要按晶体规格配,不然低温下停振,表就停走了。
q1ngt12 发表于 2026-11-7 20:38 | 显示全部楼层
LCD 常显是这里面最难压的,占空比和偏压直接决定驱动电流。表盘段数不多的话,能用低 duty 就别上高 duty,扫描线少、翻转次数少,电流自然小。偏压优先用内部电阻分压,电荷泵升压对比度更稳,但多一路开关损耗,电池表要算清楚这笔。
t1ngus4 发表于 2026-11-7 22:51 | 显示全部楼层
切换策略我一般写成一张状态表:上电自检、计量、通信、阀门动作,四个状态各自的进入条件和退出条件写死,别用标志位到处乱跳。计量态只等脉冲或 RTC 闹钟,通信态才开串口时钟,阀门态直接跑全速。状态机的好处是漏了一个外设没关,回头照着表能查出来。
suw12q 发表于 2026-11-8 09:28 | 显示全部楼层
有个细节容易漏,睡前把没用到的外设时钟一并关掉,光把 CPU 停下来没用,ADC、运放、比较器只要时钟还在就一直吃电。我见过有人在 Power Down 里留着 ADC 时钟,一晚上电池就明显下去。睡前统一走一遍关闭流程,醒来再按需重新初始化。
b5z1giu 发表于 2026-11-8 11:01 | 显示全部楼层
Power Down 下还能自己干活的外设才是关键,脉冲如果能由计数器吃进去、攒够数再叫 CPU,睡眠占比就能拉得很高。
ex7s4 发表于 2026-11-8 13:26 | 显示全部楼层
电池选型得留余量,锂亚电池低温内阻会涨,脉冲发射那一下电压塌下去,MCU 可能直接欠压复位。我一般按平均电流算容量之后再打个折,还要看脉冲瞬间的压降。表箱里温度也不均匀,电池别贴着 LCD 和阀门。
tax2r6c 发表于 2026-11-8 15:38 | 显示全部楼层
计量不能丢这件事,靠的是计数不经过 CPU。脉冲中断里只置标志或者让硬件计数器加一,CPU 醒了再读硬件计数值,两边对得上才落 Flash。Flash 写要分两个区轮换,写坏一个还有另一个,指针也一起存。掉电检测用 LVD,电压掉到阈值先中断,把当前计数值写进去再让它复位。这一套做下来,哪怕半夜电池被人拔了,重新上电也能从上次的断点接上,不会退数。
lamanius 发表于 2026-11-8 17:48 | 显示全部楼层
唤醒之后别急着加计数,先把引脚电平读一遍做消抖,干簧管抖动一次能给你三四个沿。我一般要求连续几个采样点电平一致才认一个脉冲,采样间隔按磁铁经过的最短时间定。这个参数设大了漏计,设小了误计,得拿实际的表壳和磁铁配着试。
遗忘领域 发表于 2026-11-8 08:17 | 显示全部楼层
考虑RTC和LCD功耗较高,可降低LCD刷新率,RTC使用低功耗时钟源。切换策略上,优先使用Deep Sleep,唤醒后检查脉冲计数,必要时才启用LCD。
深渊之海 发表于 2026-11-9 10:10 | 显示全部楼层
考虑RTC、LCD和脉冲计数唤醒功耗,分配可按需调整,尽量延长Deep Sleep时间,唤醒时关注关键代码执行稳定性。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部