今天给大家讲解一款广泛应用于智能硬件产品中的一键开关机威廉希尔官方网站 。首先,我们先定义需要实现的功能:长按开机、长按关机、短按功能切换。接下来我们就对照如下威廉希尔官方网站 图做详细讲解吧。
如图1所示,PMOS Q1用来控制系统电源的通断,开关S1模拟用户按键,开关S2模拟单片机GPIO输出高低电平,NMOS Q2用来维持Q1的通断,LED1为系统启动提示灯,NMOS Q3协同S1完成短按功能的切换。
图1 一键开关机威廉希尔官方网站 仿真示意图
一、长按开机
在按键S1闭合之前,Q1的栅源极电压都为3.8V,Vgs=0,Q1关断,系统电源U1未使能。当按下按键S1按下后,将会形成如下图2红色箭头的通路,此时Vgs=-2.31V,Q1导通,,系统电源U1使能上电,给MCU供电。
图2 用户按键按下后使能系统
当最小系统启动后,MCU通过GPIO控制Q2导通(开关S2拉高模拟),此时形成如下图3回路,维持系统的持续供电。LED1的亮起提示用户系统已开机,可以松开按键S1。
图3 MCU维持系统供电稳定
这里需要注意几点:
1、电源U1最好选用带使能pin的IC,这样可以避免PMOS直接串联到电源通路上,影响效率;
2、用户提示LED最好通过MCU单独控制,像上图这种常亮的方式,很多超低功耗系统是无法接受的;
二、短按功能切换
当系统处于稳定运行状态时,按键S1被按下后,NMOS Q3导通,此时GPIO_IN由高电平变为低电平,MCU可以捕获这种变化并做相应处理,此时回路如图4所示。
图4 短按按键实现功能切换
二、长按关机
系统处于稳定运行状态时,当按键S1被长时间按下,此时GPIO_IN会长时间处于低电平,MCU通过判断GPIO_IN拉低的时间超过关机设定时间(比如3s),拉低GPIO_OUT(开关S2模拟至低),LED1熄灭,提示用户松开按键S1,完成关机流程。
评论
查看更多