闪灯芯片工作原理:四段循环状态机是怎么跑的
把这类芯片的行为翻译成代码,二十来行就写完了,这也是它便宜的原因。
以 EC105C-06 为例,外部行为可以等价成一个四态有限状态机加一个分频计时器。注意是等价描述,不是它的内部电路,规格书没有公开内部框图,别把推测当结论。
它的接口只有三样东西:KEY 脚收按键,OUT1 和 OUT2 两路低有效输出,剩下 VDD 和 GND 供电,2 脚 NC 悬空。状态怎么走,规格书写得很直白:触发第一次快闪,第二次慢闪,第三次常亮,第四次灭,再按回到快闪。
写成伪代码大概是这样:
state = ? // 上电初值规格书未标注,实物量过再定
tick = 0
on KEY_pressed(debounced):
state = (state + 1) % 4
every tick: // 内部时基分频
switch (state):
case 0: out = blink(FAST) // 快闪
case 1: out = blink(SLOW) // 慢闪
case 2: out = ACTIVE // 常亮
case 3: out = IDLE // 灭
drive(OUT1, out)
drive(OUT2, out)
// 低有效:out = ACTIVE 时 OUT 脚被拉低,电流从 VDD 经限流电阻、LED 灌入芯片,灯亮
// out = IDLE 时 OUT 脚为高,LED 两端无压差,灯灭
blink() 那一层就是把内部时基做不同分频,快闪和慢闪的区别只是分频系数,占空比和频率都是固定的,外部改不了。这一点决定了它的天花板。
低有效这件事值得单独讲。习惯 MCU 高电平点灯的人第一次接线常接反:LED 阳极要经限流电阻接 VDD,阴极接 OUT 脚,芯片做的是灌电流的活。所以"输出"这个词在这里指的是往里吸,不是往外推。
功耗跟状态是绑在一起的。灭态基本只剩芯片自身消耗,规格书给的静态电流 Isb 最大 10µA;工作电流 Iop 最大 500µA,备注是 No load,也就是不含 LED。常亮态整机吃多少,主要由你那颗限流电阻和灯珠决定,跟这两个数关系不大。
供电范围 Vdd 2.4~5.8V,典型 3V,测试条件是 VDD=3.0V、TA=25℃。用干电池的要留意快闪瞬间的压跌,电池老化后内阻变大,电压掉到下限附近,状态机的表现就不一定还是你调交互时看到的那样。
还有一点容易被忽略:状态是靠按键计数往前推的,没有"直接跳到常亮"这种指令。用户想从灭态回到常亮,得连按三下,交互说明和说明书上要写清楚,不然客户会以为产品坏了。
再说清楚它做不到什么,这比卖点更值得记。闪法固定四段,渐变、呼吸、RGB 调色、音乐律动这些都得上 MCU 或专用 LED 驱动。LED 推动电流那一行只给了 @Vds=1.0V 的条件,具体 mA 数是空的,多灯珠并联必须自己核算限流电阻再实测。输出只有两路,多路分区闪烁得并几颗。工作温度 0~60℃,超出这个区间的可靠性场景不建议直接用。
理解了这套闪灯芯片工作原理,选型时的判断会快很多:能用四个状态说完的需求,一颗四段闪灯芯片加一个轻触开关就够;说不完的,趁早换方案,别在两页规格书里找不存在的功能。
想核对状态顺序和电气参数,搜 EC105C-06 规格书,脚位表和闪法那两节看一遍就清楚了。

浙公网安备 33010602011771号