基于
ATtiny13
的手电筒(头灯)控制电路和程序
本人有一个用一节
18650
电池、带变焦的头灯,该头灯有强光、弱光和闪烁三个档,
用
Q5 LED
,一个按钮来控制开
/
关和换档,顺序是:开(强光)
-
〉弱光
->
闪烁
->
关。
但功能和档位不太满意,于是用
A
Ttiny13
单片机制作一个控制电路替换原有的控制器。
通过
ATtiny13a
单片机的编程实现了一下功能:
1
、按一次开灯,再按一次就关灯,解决了按三次关灯的问题。
2
、开灯后长按
1.5
秒以上并进入设定亮度模式,闪烁三次来提示。
3
、亮度设定共有
5
个档位,
20%
、
40%
、
60%
、
80%
、
100%
每按一次加一个档,到头再按
循环。
4
、在设定模式下长按
1.5
秒以上便推出设定模式,闪烁三次来提示。
5
、退出设定模式时候亮度值保存在
EEPROM
,这样就拿掉电池也不怕丢设定值,下次开灯
直接就是上次设定值了。
6
、开灯时亮度逐渐变亮到设定值,关灯时亮度逐渐变暗
,最终灭掉,此功能为独创,是为
了减少对眼睛的刺激。设定值为
100%
亮度的时候,约
1
秒内亮度从
0%
开始逐渐达到
100%
的亮度,关灯相反、约
1
秒内亮度从
100%
开始逐渐减到
0%
。
手电筒控制电路如下: