一键开关机短路
图中BAT是电池的电压输出,一般在3.5~4.2V之间,VCC是通过按键得到的供电通道电压,3.3V是经过稳压芯片得到的最终给MCU供电的电压。MCU_Read是单片机检测引脚,输入给单片机;MCU_ON是控制引脚,由单片机输出高低电平。Si2301是P型MOS管,S8050是NPN型三极管。
在电池有电且系统关机的初始状态下,不按下按键,则SI2301栅极为高,截止,BAT到VCC无通路,系统没有电。按下按键以后,SI2301栅极为低,导通,BAT到VCC(PMOS的源漏之间约有0.05V压降),经过AMS1117后得到3.3V给单片机供电,单片机程序开始运行,检测MCU_Read电平,若低则延迟500ms再检测仍为低,就给MCU_ON置高,S8050导通,之后即便松开按键,SI2301的栅极仍通过S8050接地,保持导通;若延时检测过程中间松开按键,供电即断。
之后关机键即可通过自定义时间检测按键按下时长,控制MCU_ON置低,完成关机