Accendo e spengo Arduino via software con un mosfet

Salve a tutti è molto tempo che non scrivo su questo gruppo, volevo condividere con voi un sistema che ho elaborato eliminare l'interruttore di alimentazione su un circuito a base Arduino utilizzando semplicemente un tasto funzione collegato ad un pin digitale. Per lo scopo ho utilizzato un mosfet a canale P un transistor NPN e 2 diodi. Come si può vedere dallo schema elettrico la pressione del tasto manda a stato basso un pin di Arduino trascinando il gate di Q2 causandone la conduzione. La tensione uscente dal Drain porterà i 9v al circuito di Arduino che inizierà a funzionare. Il micro manderà a stato alto il pin 7 (qui D17...a scelta) che saturerà Q3 e manterrà in conduzione il mosfet, per spegnere sarà sufficiente mandare il pin7 a stato basso. Nel void setup configureremo : pinMode(OnOff, OUTPUT); e indicheremo la porta utilizzata: #define OnOff 17. Per spegnere tutto il circuito di Arduino sarà sufficiente inserire alla pressione di un tasto o un evento timer ecc ,, l'istruzione : digitalWrite(OnOff,LOW); . Questo causerà lo stato basso della porta D17 di Arduino dallo schema che riporterà a stato alto il gate di Q2 togliendo i 9 volt a Arduino . Questo sistema da spento non consuma nulla. E' anche possibile legarlo ad un valore ADC se la tensione di batteria (se è una applicazione a pile)scende oltre un certo valore...Nello schema del mio circuito esistono 3 pulsanti che alla pressione vanno a stato basso. Il diodo D4 collegato sulla porta D8 serve a non far tornare indietro la tensione che è più alta dei 5 v dal gate del mosfet verso il micro e il diodo D3 evita che il micro veda un tasto premuto quando Q3 è in conduzione...

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.