Je travaille sur un interrupteur d'alimentation doux pour un microcontrôleur où un interrupteur momentané peut allumer le circuit (y compris le microcontrôleur), puis lorsque l'interrupteur est enfoncé une deuxième fois, le microcontrôleur peut s'éteindre après avoir effectué un nettoyage.
J'ai le circuit ci-dessus jusqu'à présent, mais je ne sais pas s'il sera fiable. J'utilise une batterie lithium-ion (3,7-4,2 V) et le régulateur TC1015 (sortie 3,0 V). L'idée est que lorsque le commutateur est enfoncé, le régulateur se met en marche, puis le microcontrôleur se met en position uC Power
haute, se maintenant en marche. Lorsque l'interrupteur est enfoncé une deuxième fois, une interruption uC Switch
activée permettra au microcontrôleur de se mettre en position uC Power
basse, s'éteignant.
Ce dont je ne suis pas sûr, c'est si je dois protéger le microcontrôleur de la tension de la batterie. Le microcontrôleur que j'utilise a une tension maximale absolue sur les broches d'E / S de Vdd + 0,4 V, donc je ne sais pas comment gérer cela au mieux.
Deuxièmement, ce circuit empêchera-t-il réellement le régulateur de s'allumer lorsqu'il est dans l'état "éteint"? J'avais pensé à utiliser une résistance de rappel sur la ligne d'activation, mais je m'inquiète du tirage actuel pendant que la puce est sous tension.
Edit: Le microcontrôleur est la charge principale qui sera commutée, donc le mettre en mode basse consommation ne fonctionnera malheureusement pas ici.
Modifier # 2 (après la publication des réponses):
J'ai fini par utiliser le circuit ci-dessous:
Le circuit précédemment affiché ne fonctionnait pas très bien et avait des problèmes avec une ligne d'activation flottante lorsque le microcontrôleur ne l'alimentait pas.
Le nouveau circuit utilise une bascule, la ligne de données étant normalement tirée vers le bas. Appuyez sur l'interrupteur pour faire sonner l'horloge et mettre le système sous tension. Des pressions ultérieures sur le commutateur entraînent la CLOCK
ligne haut (permettant au microcontrôleur de détecter la pression), mais n'affectent pas la sortie du régulateur. Une fois que le microcontrôleur est prêt à s'éteindre, il met la DATA
ligne haute puis la CLOCK
ligne haute, ce qui entraînera l'arrêt du régulateur.
L'une des choses vraiment intéressantes à propos de cette configuration, c'est que la première pression sur le bouton allume le régulateur et le maintient jusqu'à ce que le microcontrôleur soit prêt à s'éteindre. Le rebond n'est pas un problème, car peu importe combien de fois la ligne d'horloge monte, la ligne de données est toujours maintenue basse par le pull down. De plus, la consommation de courant devrait être très minime (juste la bascule et le TC1015 éteint), et il y a une consommation de courant minimale à travers les résistances quand elle est allumée.
Le microcontrôleur doit être protégé de la tension de la batterie sur la ligne d'horloge, mais comme l'a suggéré @Andy aka, cela peut être fait avec une résistance activée CLOCK
.