第一个电路是我素未谋面的朋友抄的电路,也是一个很方便的一个一键开关机电路,这个电路是在一个已经量产产品上的电路,所以说大家也是可以放心借鉴与参考(可以适当增加防护或缓起等)。做低功耗的应该会比较实用,因为断电就是0功耗(仅有一点点PMOS漏电),非常好用省电。
首先是电源控制部分,这部分大家应该都耳熟能详了,是一个三极管控制MOS管的电源电路。下图中为两节干电池供电:
然后三极管的控制CONTROL接到按键那边,和一个IO口PA1共同控制:
原理:- 关机状态下,PMOS不导通,电路完全断电。
-
开机时,按键长按,三极管控制网络CONTROL被按键拉高,从而三极管导通,三极管导通后PMOS导通,电源上电,单片机上电。单片机上电后拉高PA1管脚,从而当按键松开后,PA1仍然能保证三极管导通,从而PMOS持续开启。
- PA0作为按键检测管脚,当按键按下时PA0检测到高电平(电池电压),按键断开时检测到的是低电平(大概0.3V左右,因为正常工作室PA1拉高,PA0的电压是电阻R52和R54的分压值)。
- 当要关机时,比如PA0检测到按键长按3秒或者设备2分钟无操作,单片机只需要PA1管脚拉低,就可以保证三极管关断,从而PMOS关断,设备掉电关机。
-
二极管D1一定不能去掉。
第二个电路图是在嘉立创社区看到的,大家也可去社区玩一玩,还是有一些技术帖子可以学习,电路图如下,也是很经典的电路图,下面的电路图来自‘暮雨笙’:
功能及原理如下:- 开机之前 按下瞬间,开关拉低PMOS栅极,PMOS导通开机。3秒内松手自动关机(程序控制)。
- 开机结束 开机时按住3秒后,单片机拉低PMOS栅极(PowerCtrl为高电平),指示灯亮。
- 此时松手可保持开机状态。
- 关机 开机后按住3秒,单片机放开PMOS栅极(PowerCtrl为低电平),灭灯,程序停止运行 此时松手,真正关机(几乎0漏电流)。
- D1作用:由于某些单片机的GPIO默认不是高阻态,所以设置D1防止漏电流。
- D2作用 由于D2存在,PG为低时,switch_check不会被NPN的Vce拉低, 所以当机械开关断开(3秒开机后松手)时 单片机可以读取到上拉的3V3,只有按键按下是才会检测到低电平。