Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Потребление МК


Потребление МК

Сообщений 1 страница 30 из 32

1

Вот не пойму, т.к. не нашёл информации. В режиме powersave потребление МК будет меньше на внутреннем генераторе или на внешнем кварце? По идее МК останавливается и разницы нет. Что скажете?

0

2

Никакой разницы нет (внут. или внешка), главное - это частота (чем меньше - тем меньше потребление).

0

3

Благодарю.

0

4

RDW написал(а):

главное - это частота

В режиме powersave тактовый генератор остановлен и его частота значения не имеет.

0

5

Пётр написал(а):

В режиме powersave тактовый генератор остановлен

Смотря где, например в Хмеге по другому.

0

6

Tankor написал(а):

Вот не пойму, т.к. не нашёл информации. В режиме powersave потребление МК будет меньше на внутреннем генераторе или на внешнем кварце?


Посмотрите здесь и здесь

0

7

Вот и меня коснулась данная тема. Опишу чего добился.
Делаю некий контроллер на ATmega644P частота 1,863 МГц. Питание от аккумулятора. НЕобходимо добиться срока службы не менее 5 лет.
На борту кроме МК IoT модуль ВC95-8, ЕЕПРОМ 24С64.
Система в основном спит в режиме IDLE, но постоянно должна быть готова принять данные от модуля. Обмен по UART на прерываниях.
Ещё она принимает данные от двух датчиков, тоже в режиме прерывания.
Теперь по сути.
Замерил ток спячки МК не принимая никаких мер по отключению ненужных устройств и получил 750 мкА.
Отключил ненужные устройства регистром PRR0 оставив только UART и буферы аналогового компаратора регистрами DIDR0 и DIDR1.
Ток сна уменьшился до 710 мкА.
После этого все неиспользуемые выводы сделал выходами и установил на них 0.
Ток сна упал до 430 мкА.
Вот такая получилась история. :glasses:
Конечно хочется ещё меньше, будем пробовать.

0

8

sva-don написал(а):

Система в основном спит в режиме IDLE

Это мало что даст, т. к. отключается только ядро, а периферия работает.

0

9

Пётр написал(а):

Это мало что даст, т. к. отключается только ядро, а периферия работает.

Это понятно, но в других режимах не получается вывести МК из спячки. У AVR слишком примитивна эта система.

0

10

В других МК видел периферию специально рассчитанную для пониженного потребления (таймер, USART и т. д.), но баскома для них нет. На практике их не использовал и сколько на самом деле будут потреблять точно не знаю.

0

11

а если сигнал uart подать и на Int0, после чего настроить пробуждение на сигнал от внешнего прерывания? и только потом включать уарт
Хотя я не знаю скорости обмена и требований к реакции МК на внешний сигнал.

0

12

Пётр написал(а):

В других МК видел периферию специально рассчитанную для пониженного потребления (таймер, USART и т. д.), но баскома для них нет. На практике их не использовал и сколько на самом деле будут потреблять точно не знаю.

Я знаю. Малопотребляющие МК из серии MSP430 от Texas Instruments, но блин просто нет времени пересаживаться на С. :canthearyou:  А так было бы отлично.

0

13

Александр Д. написал(а):

а если сигнал uart подать и на Int0, после чего настроить пробуждение на сигнал от внешнего прерывания? и только потом включать уарт
Хотя я не знаю скорости обмена и требований к реакции МК на внешний сигнал.

Была такая задумка, но... Посылка состоит из "кучи" импульсов и может иметь длину до 255 байт. Представляете сколько раз будет срабатывать прерывание. o.O
Можно конечно по первому фронту уйти в прерывание и там всё сделать, но это получается очень долго, остальные события можно пропустить.
Я пытался поставить триггер на один вход которого подаётся посылка. Он срабатывает и даёт прерывание. Как только прерывание заканчивается контроллер сбрасывает триггер обратно, но...
Сам триггер жрёт немало и смысл его применения остался под вопросом. Т.е. режим PowerDown с триггером жрет столько же, сколько без него в режиме IDLE.

0

14

Такой вот вопрос возник. А как оценить время работы устройства?
Например некое устройство потребляет 2 мА, питается от батареи ёмкостью 1800 мАч.
Я так понимаю нужно 1800/2/365 = 4,9 года?
Или я не прав?

0

15

2 мА в час. Нужно еще поделить на 24.

0

16

sva-don написал(а):

Я так понимаю нужно 1800/2/365 = 4,9 года?
Или я не прав?

2мА/ч. То есть 2 миллиапмера потребляет за час, а не за сутки. Так что 1800/(2*24). Хватит на 37 дней.

sva-don написал(а):

Малопотребляющие МК из серии MSP430 от Texas Instruments

Не только, но они тоже. Но не знаю как у них с малопотребляющим USART.

sva-don написал(а):

просто нет времени пересаживаться на С

Об этом нужно было думать заранее. Постепенно не спеша можно было изучить.

0

17

Что-то недопонимаю, видимо... ;)

Настольные часы типа таких
http://s9.uploads.ru/t/8nKTc.jpg

С января 2012-го и по сей день работают на свежекупленных батарейках АА (две последовательно)...
Минимум 4 раза в неделю отрабатывает голосовой будильник...
Самим часам уже скоро лет 20 будет...

Батарейки - явно не 1800мАч, упомянутые здесь...
Дешевенькие Hitachi...

0

18

Раньше батарейки были лучше чем сейчас. :D
Что мешает проверить сколько потребляют часы в рабочем режиме? :)

0

19

неверно считаете
если найду статью - выложу.
Я недавно проект делал - там жуть была по энергопотреблению!!!

0

20

Пётр написал(а):

Раньше батарейки были лучше чем сейчас.

Не удивлюсь...

Пётр написал(а):

Что мешает проверить сколько потребляют часы в рабочем режиме?

Заинтриговало, возможно займусь... ;)
Уверен, что потребление больше указанных здесь в качестве примера 2мА, особенно в режиме "говорилки".

Если честно, то никогда не интересовало... ;)
Работают себе и работают... ;)

0

21

sva-don написал(а):

После этого все неиспользуемые выводы сделал выходами и установил на них 0

Вообще, когда МК кидаем в глубокую спячку, то всё делается на оборот (все выводы переводятся на вход). Если выход, то они нагружаются линию.

sva-don написал(а):

но в других режимах не получается вывести МК из спячки

Ну тут надо продумывать уже какой МК использовать, под экзотическую задачу подбираем "железо". Я скажу даже более, чтобы заснуть и проснуться нужна задержка (чтобы увсе устройства уснули или были готовы к работе), т.е. сразу по щелчку выкл/вкл не получится. Следовательно возможно понадобится внешнее решение/обвязка.

Ещё потребление можно уменьшить не только частотой, но и напряжением, взять минимальное.

0

22

RDW написал(а):

Ещё потребление можно уменьшить не только частотой, но и напряжением, взять минимальное.

Я думал об этом, ATmega 644P может работать от 1,8 В, но IoT модуль только от 3,6, придётся как то это согласовывать, а это дополнительный жор.
Выхода нет, переходим на АРМы. :crazyfun:

0

23

RDW написал(а):

Вообще, когда МК кидаем в глубокую спячку, то всё делается на оборот (все выводы переводятся на вход). Если выход, то они нагружаются линию.

Сегодня попробую и отпишусь есть ли разница.

0

24

Чтобы разница была, надо вокруг МК обвязку продумывать. А то когда обвязки нет, то при подвешивании ног в 3-е состояние, начинаются утечки через внешние компоненты.

0

25

sva-don написал(а):

ATmega 644P может работать от 1,8 В, но IoT модуль только от 3,6, придётся как то это согласовывать, а это дополнительный жор.

Есть линейные стабилизаторы напряжения с микропотреблением например HT7333, который потребляет 4 мкА. http://catalog.gaw.ru/index.php?page=co … p;id=16128

0

26

RDW написал(а):

Вообще, когда МК кидаем в глубокую спячку, то всё делается на оборот (все выводы переводятся на вход). Если выход, то они нагружаются линию.

Здрасьте, приплыли!
Все переводим на выход!!!
Если все будут на входе, то там заведутся привидения, а они жрут много.

0

27

kip написал(а):

Здрасьте, приплыли!
Все переводим на выход!!!
Если все будут на входе, то там заведутся привидения, а они жрут много.

Блин, совсем меня запутали. o.O  Так на вход или на выход? :canthearyou:

0

28

Ну что. Провёл эксперимент. Отчёт о потреблении.
На МК конфигурировал ноги и он сразу впадал в спячку. Питание 3,48В, температура в помещении 25 гр. Частота 1,8432 мГц.
Режим IDLE
1. Ноги на выход притянуты к 0. Без PRR0. Ток 547 мкА.
2. PRR0=FF. Ток 330 мкА.
3. Ноги на вход притянуты к 1. Ток 600 мкА, плавает от 600 до 630.
Режим POWERDOWN
1. Ноги на выход притянуты к 0. Ток 65 мкА.

Вывод. Для серьёзных устройств с питанием от батареи МК AVR не подходят. :glasses:

Отредактировано sva-don (2018-10-25 11:57:04)

0

29

sva-don написал(а):

Вывод. Для серьёзных устройств с питанием от батареи МК AVR не подходят.

Я делал устройство типа часов, но с немного другим функционалом. Мега8 большую часть времени спала (Powersave), просыпаясь от прерываний таймера 2, к которому подключен часовой кварц. Точно не помню какой был ток потребления. Если не ошибаюсь 4 мкА.

0

30

Пётр написал(а):

Я делал устройство типа часов, но с немного другим функционалом. Мега8 большую часть времени спала (Powersave), просыпаясь от прерываний таймера 2, к которому подключен часовой кварц. Точно не помню какой был ток потребления. Если не ошибаюсь 4 мкА.

Да, 65 мкА похоже многовато. Ищу ещё где что утекает.

0


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Потребление МК