Главная » Статьи » Полезная информация

Еще один способ эффективного энергосбережения для проектов



 Размышляя на тему как максимально экономить батарейку в проектах где основная задача выполняется по нажатию кнопок (как в пультах ДУ) в голову пришла очень простая и эффективная схема. Ее достоинство состоит в том, чтобы на кнопку возложить не только задачу вызывать ту или иную функцию, но и подавать питание на микроконтроллер. Таким образом потребление схемы в режиме ожидание падает до нуля (!), так как батарейка оказывается полностью отключенной от схемы.

 Такой алгоритм просто реализуется на кнопках с несколькими парами контактных групп, чаще же в проектах используется обычная тактовая кнопка, которая умеет замыкать только два контакта между собой. Поэтому пошевелив извилинами накидал вот такую схему:





Как видно, при нажатии на любую кнопку, происходит запитывание микроконтроллера и одновременно с этим на соответствующей ножке выставляется высокий уровень. Диоды в схеме нужны чтобы отсечь попадание высокого уровня на остальные входы.

для проверки схемы собрал ее на макетке:




код обработки нажатия самый элементарный:

$regfile = "m16def.dat"
$crystal = 8000000

Config Portb = Output
Config Portc = Input

Do

If Pinc.= 1 Then
 Portb.= 1
End If

If Pinc.= 1 Then
 Portb.= 1
End If

If Pinc.= 1 Then
 Portb.= 1
End If

Loop

End






Как видно схема оказалась вполне работоспособной и ко всем прочим прелестям умеет обрабатывать сразу несколько нажатий, поэтому обязательно найдет себе применение.


 

Категория: Полезная информация | Добавлено: 29.09.2013
Просмотров: 14086 | Комментарии: 15 | Теги: энергосбережение | Рейтинг: 5.0/12
Всего комментариев: 15
+1   Спам
15 Kolini   (23.02.2014 18:40)
Код программы требует доработок. Светодиоды выключаются только когда отжаты все кнопки. ТО есть если нажать две или три кнопки а потом отпустить все кроме одной (любой), то светодиоды буду продолжать гореть :-)

+2   Спам
14 gorlofu   (04.10.2013 09:58)
Всё гениальное - просто

+1   Спам
13 kip96   (01.10.2013 11:20)
Ну и слава Богу, что разобрались. Сам сегодня, ради интереса, отключил питание от Меги 8 и подключил питание на пустую ногу. Мега8 справилась имея на борту DS1307, NRF24L01 и индикатор 1602.Всё отработало нормально. Конечно, через внутренние диоды запитывать опасно, но можно в программе включать ногу потрта, который откроет мосфет, который подаст питание уже на Vcc, как уже предлогал exersizze

12 Valera18   (30.09.2013 23:14)
Прикольно, даже не знал, что с любого порта напряжение попадает на VCC. :))))

11 Oboltus   (30.09.2013 23:04)
Да, взглянул даташиты, понял о чем речь.

kip96 я ни к кому не настроен враждебно.Я просто уточняю Вашу мысль.Я сразу ее не понял. Кстати, спасибо! Момент с диодной защитой я как-то упустил из виду...

+1   Спам
10 exersizze   (30.09.2013 22:04)
Немного не допоняли вы друг друга, просто исключить из этой схемы диоды конечно нельзя, это очевидно smile
Но камрад kip96 оказался таки прав. Если просто подавать напряжение с батареи на входы, то напряжение попадет на VCC через внутренние диоды. И схема работает точно также
а для проверки просто отключил провод питания  http://avrproject.ru/112/42dzhltva439.png
падение на внутренних диодах оказалось 1 Вольт (при питании 5 вольт на VCC появляется 3,98 вольт)
ps max, для пользователей смайлы отключил, из-за непонятной ошибки при вставке бывает что у сайта сносит крышу и страницы криво отображаются

9 kip96   (30.09.2013 20:34)
Oboltus, тут всё в письменной форме, читайте коментарий 3.Зачем мне повторяться. Так что вопрос только с теории пройти на практику.

8 Valera18   (30.09.2013 17:42)
Я согласен с Oboltus
Прочитайте статью.

Сам раньше думал про такой способ питания (включения) для передатчика на NRF24L01, но не хотелось возиться с диодами, так так после диода напряжение было меньше (особенно, заметно в цепях с низким напряжением питания).

+1   Спам
7 Oboltus   (30.09.2013 17:29)
Т.е. Вы хотите сказать, что,диоды стоят например между PC2 и VCC ? И стоит просто сразу подавать питание только на PC2, а VCC вообще не трогать?

Или Вы все-таки не просекли момент: (фраза из статьи выше) Диоды в схеме нужны чтобы отсечь попадание высокого уровня на остальные входы. Вы о чем?

6 kip96   (30.09.2013 16:55)
Точно так-же, как и в схеме статьи. Эти диоды уже стоят в МК. т.е. получается масло масленное. Диоды уже давно ставят в микросхемах, это своеобразная защита от статики.

5 Oboltus   (30.09.2013 15:34)
Видимо транзистор и подразумевается, иначе ничего серьезнее выше приведеной схемы и не соберешь))
3 kip96!А как за пределами корпуса МК тогда разделить сигналы на прерывании без диодов? Иначе просто все кнопки окажутся запараллелеными. Или я не понял Вашу мысль?

4 max   (30.09.2013 15:21)
Дешево и сердито.

P.S. В комментах не хватает смайлов.

+1   Спам
3 kip96   (30.09.2013 14:40)
На самом деле в мк диоды уже стоят. На каждой ноге к Vcc и Vss. exersizze , попробуй без диодов, просто подать питание на порт, должно работать.

2 exersizze   (30.09.2013 12:43)
Да. Но еще можно добавить транзистор, который будет держать напряжение пока это необходимо, а после выполнения программы закрывать его.

1 Scorpushka   (30.09.2013 12:35)
спасибо, вообщем, пока держишь кнопку, работает

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]






   EasyEDA:  бесплатный редактор схем

   ✓ Создание схем
   ✓ Возможность симуляции
   ✓ Быстрое создание печатных плат
   ✓ Интуитивно понятный интерфейс

   Нарисуй свою схему прямо сейчас!
   Изготовление печатных плат   https://easyeda.com/order
авторизация
Логин:
Пароль:
Комментарии
Когда не хватает ног. Часть 2. Сдвиговый регистр 74HC595
08.12.2016 - exersizze:
yorx выдалось немного свободного времени, проверил в симуляторе. Проблема...
Логгер температуры 2.0
05.12.2016 - Evgeny6873:
Хотел повторить схему и долго ждал дисплей, два раза заказывал с Китая, пришел. ...
Когда не хватает ног. Часть 2. Сдвиговый регистр 74HC595
01.12.2016 - yorx:
Доброго времени суток, exersizze попробовал Ваш код все равно не работает как на...
Помни об усадке!
30.11.2016 - pchela5:
Автомобильные никакие не лезут?
Помни об усадке!
29.11.2016 - AlekS:
Виктор, спасибо.
С заменой транса в зиму, перестройка не комельфо) Валяет...
Управляем микроконтроллером с ПК по UART
29.11.2016 - exersizze:
Михаил, для работы с инфракрасными датчиками и диодами есть команды RC5SE...
Управляем микроконтроллером с ПК по UART
29.11.2016 - Михаил:
Всем привет.
Подскажите как переменную S передать по инфракрасному каналу...
Помни об усадке!
29.11.2016 - pchela5:
> Если ленту светодиодную порезать и соединить последовательно
Только ...
Когда не хватает ног. Часть 2. Сдвиговый регистр 74HC595
29.11.2016 - exersizze:
yorx, вывод Q7 ' первой микросхемы соединен с DS второй микросхемы? С...


Лучшие цены на 3D принтеры
успей сделать себе подарок к Новому Году! ;)


Prusa i3

Prusa i3 от 12500 р.



Rostoсk

Rostock от 15000 р.