分析上圖的電路工作原理。長(cháng)按按鍵時(shí),PUSHBUTTONCONN被拉到地,R5和D3組成的回路導通,Q1的1腳被拉,Q1截止。U2的7腳EN被拉高,U2是一顆DC-DC,EN高電平使能,所以U2工作,輸出3V3。單片機開(kāi)始工作,IO口置高電平給3V3_EN,Q2的1腳被拉高,Q2導通,拉低 Q1的1腳,實(shí)現開(kāi)機的功能。關(guān)機過(guò)程,長(cháng)按按鍵,PUSHBUTTON_UC被拉低,單片機檢測到PUSHBUTTON_UC拉低后,判斷是長(cháng)按后,就把3V3_EN置低電平,Q2截止,松開(kāi)按鍵后,Q1的1腳被拉高,Q1導通,U2的EN腳被拉低,U2不工作,3V3停止輸出,系統關(guān)機。
朋友遇到的問(wèn)題是因為單片機在復位時(shí),IO默認是低電平,所以單片機復位時(shí),3V3_EN會(huì )變低電平,機器就會(huì )關(guān)機。如果要解決這個(gè)問(wèn)題,必須要對電路做一些修改。電路修改如下。
只要是增加一個(gè)三極管,三極管的C極接到Q2的1腳,并上拉到3V3。3V3_EN接三極管的B極。這樣改動(dòng)后,3V3_EN低電平是開(kāi)機,高電平是關(guān)機。所以,即使單片機復位,IO默認是低電平,也不會(huì )讓系統斷電關(guān)機。