Я хочу спроектировать схему так, чтобы микроконтроллер мог переключать вывод GPIO и выключать всю систему (включая сам микроконтроллер). И когда пользователь нажимает кратковременную кнопку, снова включается питание.
Это возможно?
microcontroller
power-supply
design
cksa361
источник
источник
Один из способов сделать это - войти в режим глубокого сна на микроконтроллере.
Многие микроконтроллеры поддерживают пробуждение от внешнего прерывания, такого как ребро на выводе ввода-вывода.
источник
Да, это, безусловно, возможно, но то, как вы этого достигнете, зависит от того, какую нагрузку вы собираетесь включать и выключать.
Это, вероятно, так же просто, как просто использовать реле, подключенное к выходному ПИН микроконтроллера (через транзистор и защитный диод), и кнопочный переключатель, подключенный к пину, настроенному в качестве входа.
Вот простой пример принципиальной схемы:
При использовании кратковременного кнопочного переключателя будьте осторожны с дебазами однако вам необходимо ввести задержку в коде вашего микроконтроллера, чтобы убедиться, что вы проверяете состояние кнопки в течение определенного периода времени (например, 1 мс), прежде чем переключать реле обратно на. Если вы этого не сделаете, то микроконтроллер может принять несколько сигналов и переключить ваше реле несколько раз за очень короткое время, и вы обнаружите, что ваша кнопка работает с перебоями.
ОБНОВЛЕНИЕ Я только что видел ваше изменение о выключении микроконтроллера. Можете ли вы дать больше информации о том, что вы на самом деле пытаетесь сделать? Трудно ответить на ваш вопрос без понимания всей системы.
Если вы также хотите выключить микроконтроллер, вам понадобится способ вернуть питание микроконтроллеру. Возможно, вы могли бы использовать реле для питания всего, включая микроконтроллер, чтобы микроконтроллер мог выключиться сам, но не снова. Затем ваша кнопка может быть подключена к вашему реле, чтобы эффективно закорачивать его, давая достаточно времени для включения и удержания реле открытым.
источник