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

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



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

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





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

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




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

$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
Просмотров: 15004 | Комментарии: 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
авторизация
Логин:
Пароль:
Комментарии
Бесконтактный датчик температуры MLX90614
22.06.2017 - TSL:
Приветствую. Как я понял, собираем по схеме выше, и всё должно работать.
...
Устройство имитации звука светового меча
18.06.2017 - Dron_S:
Всем привет задержку звука при включении удалось победить))) вот что получилось ...
Регулятор температуры и влажности
17.06.2017 - max:
Не за что.
Регулятор температуры и влажности
17.06.2017 - alex222:
max
Спасибо вам огромное!!!
Регулятор температуры и влажности
17.06.2017 - max:
Вот: http://rgho.st/6HFCxxVgG
Регулятор температуры и влажности
15.06.2017 - alex222:
Есть тот кто может скомпилировать очень нужно? С кем можно связаться?
Пом...
Регулятор температуры и влажности
14.06.2017 - alex222:
Ребят, помогите пожалуйста можете скомпилировать этот файл для регулятора https:...
Регулятор температуры и влажности
12.06.2017 - Xfighter:
Atmega8A tqfp корпус, буквы не важны?, кварц внешний 10мгц, фузи понипрог http:/...
Регулятор температуры и влажности
11.06.2017 - exersizze:
Дисплей можно использовать любой русифицированный 16х2 с контроллером hd44780, н...