|
Как сделать, чтоб микроконтроллер сам себя отключал от батареи питания? |
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 14)
|
Dec 7 2008, 20:18
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Ну, например, вот так как на схеме. Q1 это Logic Level N-channel MOSFET, который коммутирует питание. Если вам не нравится коммутация в цепи минуса, то поставьте P-channel MOSFET в цепи плюса. Только придется еще и проинвертировать сигнал управления МК с помощью еще одного транзистора. R2 и C1 иммитируют нагрузку в виде схемы и вашего МК. S3 и R3 иммитирует функцию выходного пина МК, которым вы управляете питанием. S2 иммитирует кнопку включения питания. На графиках представлен слудующий алгоритм управления. Замыкаем кнопку включения питания S2 на 10мс (верхний график). На схеме и МК появляется питание (нижний график). За 4мс после подачи питания МК инициализируется и подает сигнал "поддержки" питания на затвор полевого транзистора (средний график). Транзистор открывается, шунтируя кнопку S2. МК выполняет какую-то свою программу в течение 50мс и снимает сигнал управления с затвора полевика. Поскольку кнопка S2 к тому моменту уже отпущена, то полевой транзистор закрывается и все схема вместе с МК обесточивается. В принципе, если держать кнопку нажатой дольше, то питание будет подаваться на схему столько времени, сколько будет нажата кнопка. Но не менее, чем присутствует сигнал "поддержки" питания от МК. P.S. сюда же можно добавить защиту от переполюсовки батареи. Для этого нужен симметричный ключ. Вместо одного полевика ставим два последовательно, включенных симметрично, объединив их затворы. На втором скриншоте такая схема. На третьем она же, но с инверсным включением батарей питания (демонстрация защиты от переполюсовки).
Эскизы прикрепленных изображений
|
|
|
|
|
Dec 8 2008, 09:00
|

Местный
  
Группа: Свой
Сообщений: 221
Регистрация: 20-06-07
Из: Россия, Тула.
Пользователь №: 28 569

|
Цитата(IVV @ Dec 7 2008, 20:49)  Есть некое устройство на микроконтроллере с питанием от аккумуляторной батареи (4х1,2 V). Вот решенее для питания 9В и стабилизатора, в Вашем случае нужно выбросить стабилизатор, и возможно заменить верхний ключ на мосфет р-типа, например IRLML6302. Логика работы такая: - давим на кнопку - питание поступает на мк. - мк делает паузу, для устаканивания переходных процессов, открывает VT2 блокируя кнопку. - мк работает, выполняет свою программу. - теперь при нажатии на кнопку, на ноге RB0 появляется высокий уровень, можно сделать прерывание. - по этому прерыванию, ждем пока кнопку отпустят, потом пауза, потом закрываем VT2 - питание отключено.
Эскизы прикрепленных изображений
--------------------
vodaspb.ru
|
|
|
|
|
Dec 8 2008, 18:09
|
Участник

Группа: Свой
Сообщений: 63
Регистрация: 9-06-06
Пользователь №: 17 920

|
Всем ответившим огромное спасибо! Сегодня только поздно вечером добрался до компьютера, спать хочется, завтра попробую покрутить эти схемки в протеусе. Вопросик есть еще к rezident... какой программкой пользовались? А на счет схемки Andrey_B, есть подозрение, что если VT1 поменять на IRLML6302, то нам встроенный в него диод будет мешаться... может я ошибаюсь...завтра проверю
|
|
|
|
|
Dec 9 2008, 11:15
|
Участник

Группа: Свой
Сообщений: 63
Регистрация: 9-06-06
Пользователь №: 17 920

|
Цитата(Artak @ Dec 9 2008, 01:05)  А собственно зачем отключать У многих микроконтроллеров есть Sleep Mode(даже несколько режимов) при котором ток потребления всего пара микроампер и даже меньше (например у Атмелловской AVR picoPower серии) Легче всего просто использовать один из слееп режимов без дополнительных внешных элементов. а просыпание происходит по прерыванию из за нажатия кнопки Устройство состоит не из одного только микроконтроллера, а несколько посложнее
|
|
|
|
|
Dec 9 2008, 15:06
|

Местный
  
Группа: Свой
Сообщений: 457
Регистрация: 7-06-07
Из: Минск
Пользователь №: 28 262

|
Цитата(muravei @ Dec 9 2008, 16:58)  Цитата ... микроконтроллер питать прямо от батареи... Вот-вот! Нам так и сделали , но в результате их плата потребляет 2мА!!! выключенная.  ну так за портами микроконтроллера нужно следить, что там к ним подключено
--------------------
Человек учится говорить два года, а молчать - всю жизнь
|
|
|
|
|
Dec 9 2008, 15:34
|

Местный
  
Группа: Свой
Сообщений: 457
Регистрация: 7-06-07
Из: Минск
Пользователь №: 28 262

|
Цитата(muravei @ Dec 9 2008, 17:10)  Смотрел, все выключено, но 2 ач аккум содится в 0 за месяц. внимательно почитать спецификации на потребление микроконтроллера в Sleep Mode. если там все "хорошо", то бракованный экземпляр?...  ЗЫ. потребление в Sleep Mode может увеличится после воздействия "предельной" электростатики (увеличивается утечка защитных схем, подключенных к контактным площадкам), но 2 мА этим не объяснишь...
Сообщение отредактировал Jurenja - Dec 9 2008, 15:38
--------------------
Человек учится говорить два года, а молчать - всю жизнь
|
|
|
|
|
Dec 9 2008, 17:38
|
Участник

Группа: Свой
Сообщений: 63
Регистрация: 9-06-06
Пользователь №: 17 920

|
Сейчас проверил в протеусе схемку от rezident - работает правильно. Только есть одна заморочка с микроконтроллером. А именно - в программе в некоторых случаях используется переинициализация портов, иногда команда RESET, а при любом сбросе выводы микроконтроллера автоматически делаются входами. Соответственно при любом виде сброса устройство будет выключаться. У меня есть мысль поставить в цепь затвора конденсатор (вообще немного переделать эту часть схемы), чтобы выключалось с некоторой задержкой. Задержку планирую подобрать таким образом, чтоб этого времени хватало на перенастройку порта как OUT и подачу на него "1". Есть еще над чем поломать голову  Может у кого-нибудь есть какое-нибудь оригинальное решение этой проблемки?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|