19:49
Режим энергосбережения
Вот такая хреновина у меня работает уже месяц






Схема состоит из светодиода, резистора (220 Ом) и микроконтроллера Attiny2313. В камень зашит вот такой код 

$regfile = Attiny2313.dat
$crystal = 1000000
'$sim

'конфигурируем таймер для генерации прерываний
'прерывания от таймера будут происходить примерно раз в 4 секунды

Config Timer1 = Timer , Prescale = 64
On Timer1 Awake:
Config Portd.= Output
Led Alias Portd.6

Enable Interrupts
Enable Timer1
Start Timer1

Do
 Led = 1
 Waitms 100
 Led = 0
 Idle                                 'погружаем в сон
Loop

Awake:                                 'случилось прерывание по таймеру
Return

End


 Этот код запускает таймер с переполнением каждые 4 секунды, а в главном цикле на 0,1 сек зажигается светодиод. После этого микроконтроллер погружается в сон командой Idle. По прошествии 4 секунд таймер переполняется и вызывает прерывание, которое пробуждает камень и перекидывает выполнение программы в начало главного цикла. Как итог, светодиод периодично мигает, а во время простоя работает режим энергосбережения.

 Теперь самое интересное и ради чего все затевалось - как сильно разрядилась батарейка? Для питания я использовал старый аккумулятор от сотового емкостью 1530мА/ч. Но это то, что написано на нем, за 7 лет емкость там куда меньше.
 Напряжение на нем в начале эксперимента составляло 3,97 вольта. Промигав дни и ночи без остановок, адское устройство разрядило аккумулятор аж на 0,3 вольта!!! за 27 дней. По прикидкам на 0,01 вольта в сутки. Неплохо так, ящитаю.
 



12 Valera18   (23.09.2013 19:48)
Да, разобрался. Спасибо.
При программировании в USBASP нужно выставить так:
http://s1.ipicture.ru/uploads/20130923/Gb20C91R.jpg

Вот фьюзы для 128кГц:
http://s1.ipicture.ru/uploads/20130923/DKJ5xorS.jpg

+1   Спам
11 exersizze   (23.09.2013 19:21)
а делитель на 8 выключен?

10 Valera18   (23.09.2013 17:52)
Может кто сталкивался с таким: не могу у Attiny2313A выставить внутренний RC на 128 КГц, после выставления микросхема отказывается работать, поэтому приходится восстанавливать заводские фьюзы с помощью доктора.
Кто пробовал выставлять внутренний RC на 128 КГц?

+1   Спам
9 exersizze   (19.05.2013 20:32)
навряд ли, фьюзы выставляются на минимальную частоту внешнего кварца 0,4 МГц
хотя у тини можно выбрать внутренний  RC на 128 КГц.

8 Valera18   (19.05.2013 17:48)
Подскажите, Attiny2313A сможет работать от внешнего кварца (в 32.768 кГц - часовой кварц) как основной кварц? Энергопотребление должно быть меньше.
Фьюзы выставляются также как и на 16 МГц, или как-то по другому для 32.768 кГц?

7 Valera18   (15.03.2013 18:07)
Попробовал "режим Idle", так-же со светодиодом.

Заметил:
при Prescale = 1024 = 1 минуте.
при Prescale = 1024 и во фьюзах выставил "делитель частоты" = 2 минутам.

Хорошая команда "Idle" для термометров.

+1   Спам
6 max   (24.02.2013 00:14)
По большому счету от передатчика больше и не требуется: проснулись, измерили, отправили, уснули.

5 kip96   (23.02.2013 23:53)
Ну да, только я вот сейчас запустил несколько передатчиков наодин приёмник, а тут просто передавать пока ни как! Надо ждать запроса на передачу с "приёмника". Хотя , как вариант, тупо, раз в минуту(или пять) передавать температуру, только так.

+1   Спам
4 max   (22.02.2013 22:10)
Valera18 имел ввиду передатчики.

3 kip96   (22.02.2013 22:00)
Вся сложность в том, что NRF24L01 должен быть на приёме, что-бы разбудитьконтролер. А он (24L01) жрёт не хило.

2 max   (22.02.2013 15:30)
Прикольно!

1 Valera18   (22.02.2013 13:46)
Такой-же эксперимент нужно провести с передатчиком температуры с использованием режима энергосбережения (Idle):
"Atmega8 + NRF24L01 + DS18B20" и "Attiny2313 + NRF24L01 + DS18B20"
- эти знания могут пригодится.
Ещё вместо "DS18B20" можно использовать "терморезистор TC1047AVNBTR"

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

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

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

   Нарисуй свою схему прямо сейчас!
   Изготовление печатных плат   https://easyeda.com/order
авторизация
Логин:
Пароль:
Комментарии
Управляем микроконтроллером с ПК по UART
23.06.2017 - belcof:
Привет.
Как настроить фьюзы от внутреннего и внешнего кварца для SinaProg...
Бесконтактный датчик температуры 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:/...