реклама на сайте
подробности

 
 
> Борьба за микроамперы, ATmega324P, RTC
ivainc1789
сообщение Dec 14 2009, 20:02
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 175
Регистрация: 5-01-05
Пользователь №: 1 807



В текущей программе реализован элементарный счетчик секунд на базе таймера2 и часы на его основе. Хотелось бы добиться уменьшения потребления и сделать так, чтобы в sleep mode микроконтроллер просыпался 1 раз в 8 сек (или реже?), а при нажатии пользователем на клавишу просыпался и автоматически корректировал счет времени и показывал его пользователю в формате HH:MM:SS. При этом пользователь не должен заметить самого переключения (по индикации секунд).
Сходу мне удалось только при wake up ждать пока наступит переполнение от таймера, прибавлять 8 сек и только потом переключаться в режим 1 раз в сек используя OC2A. Ясно, что пользователь максимум в течение 8 сек видит что ЧАСЫ ОСТАНОВИЛИСЬ ))). Это плохо. Учитывая, что индикация времени задача типовая может кто-нибудь поделится идеями?
Интересно, почему прескалер таймера2 имеет такой "небольшой" предделитель? Ведь при тактировании от 32.768kHz можно пробуждать контроллер не реже 1 раза в 8 сек. Стоит ли заморачиваться, если потребуется раз в минуту? И вообще заметно ли увеличится при этом жизнь батареи? Количественно оценить не смог...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rx3apf
сообщение Dec 14 2009, 20:47
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



ivainc1789 Для начала - что выбрано в качестве индикатора ? Потому как обычно индикатор и лимитирует энергопотребление, а прерывания Timer2 - это копейки, при частоте прерываний 16 Hz это порядка пары uA (@3.6V, RC-тактирование), сам осциллятор жрет существенно больше. А вот индикатор со столь малым потреблением - уже непросто (разве что речь о микроконтроллерах с поддержкой сегментных LCD). Да, и за какой бюджет энергопотребления боремся ?
Причина редактирования: Избыточное цитирование
Go to the top of the page
 
+Quote Post
ivainc1789
сообщение Dec 14 2009, 21:14
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 175
Регистрация: 5-01-05
Пользователь №: 1 807



rx3apf Индикатор у меня LCD WH-1202 но я его отрубаю (как и вообще все перед уходом в спячку). Устройство используется пару раз в неделю, поэтому микропотребление важно... При пробуждении необходимо отображать время с точностью до 1 сек. Питается устройство от двух элементов AAA. Также на борту сс1100, 1wire, клава, пьезоизлучатель. Стабилизатор импульсный L6920 от STM. В принципе я достиг неплохих показателей по потреблению, если выключить часы, то амперметр VC9808 показывает в спячке 38 мкА (верится с трудом, уж очень мало). Работа часов в течение недели в режиме пробуждения MCU 1раз/сек кажется достойной борьбы за использование режима 1раз/8сек или реже. Мне кажется оптимально 1раз/мин. Но... может это нецелесообразно?
Причина редактирования: Избыточное цитирование
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 11:12
Рейтинг@Mail.ru


Страница сгенерированна за 0.01375 секунд с 7
ELECTRONIX ©2004-2016