Страница 1 из 2

Спящие режимы

Добавлено: 03.10.2016{, 14:37}
Garrison
Не для кого наверное не секрет что ардуинки умеют "спать". Причем режимов сна у них аж  несколько разных. Пока что приходится  кусок кода, чтобы девайс в сон загнать ручками в программу вписывать, а это очень неудобно, если учесть  какую аброкадабру представляет из себя скомпилированный проект созданный в FLProg. Может добавите блоки сна  в программу? Здорово бы было если бы были блоки всех типов режимов сна в проекте.

Спящие режимы

Добавлено: 03.10.2016{, 15:03}
Слимпер
Garrison, а как ее потом будете?
И можно кусок кода или ссылку откуда брали.

Спящие режимы

Добавлено: 03.10.2016{, 15:49}
Олег
Вот тут есть.

Спящие режимы

Добавлено: 03.10.2016{, 16:30}
Слимпер
Поискал сам вот еще Снотворное для Arduino и AVR - Power management или как правильно спать и спящий режим

Ну сделать блок для усыпления не сложно, а вот по выводу из сна надо думать.

Спящие режимы

Добавлено: 03.10.2016{, 19:11}
Garrison
Слимпер писал(а):а вот по выводу из сна надо думать.
Добавлено (03.10.2016, 19:11)
---------------------------------------------
Ну как оно из сна выводится в инете примеров полно, как говорится "все уже придумано до нас"

Спящие режимы

Добавлено: 03.10.2016{, 19:30}
Слимпер
Garrison, Так надо в один блок это делать иначе будет большие проблемы.
Т.е. Перед тем как усыпить ардуину надо, обязательно настроить как она проснется.

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

Спящие режимы

Добавлено: 03.10.2016{, 23:28}
Garrison
Зачем? Ну вот например я сделал доп. систему безопасности в авто и 99.9% времени Андуина там сидит и ждёт когда на один из входов аларм придёт. Чего ей аккумулятор то кушать зря? Соответственно я ввёл её в режим когда цп не работает а просыпается она по приходу ноля на вход. Да и мало ли какие ещё потребности могут быть? Полезная функция!

Спящие режимы

Добавлено: 04.10.2016{, 04:08}
Слимпер
Garrison, А приведите тот код, что бы вручную вставляете?

Спящие режимы

Добавлено: 04.10.2016{, 09:31}
Garrison
Слимпер писал(а):Garrison, А приведите тот код, что бы вручную вставляете?
Так с ходу уже и не ответишь, поделка давно уже в недра машины закопана, а скетч кончился  вместе с безвременной кончиной SSD.
Вообще если кратко я пользовался командами и примерами отсюда:  тута
Использовал для этого библиотеку VEduino (интересная штука умеет не только сон но и периферию отключать)

DEV_SLEEP.setMode(SleepControl::PWR_DOWN);         // Выбор режима сна
DEV_SLEEP.enableSleep(); // Разрешить переход в спящий режим
sleep();             // Переход в режим сна (тут естественно сложнее было, переход по условию постановки на охрану автомобиля происходил)

В этом  режиме работают прерывания INTO  и ардуинка просыпалась по изменению на пине №2.   Более конкретно уже не вспомню.

Спящие режимы

Добавлено: 05.10.2016{, 09:12}
Слимпер
Garrison писал(а):Вообще если кратко я пользовался командами и примерами отсюда:  тута
Интересный сайтик, 
Правда и обсуждаемой там библиотеки нет нормального описания, а так потыкался по файлам, возможности просто огромны.
Да и сделана она в основном не для ардуины, потому как многое уже есть во встроенных в Arduino  библиотеках.

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

Сделать отдельный блок для пробуждения по внешним прерываниям INT0 и INT1 тоже не проблема.
В режиме сна IDLE он будет просыпаться и по сигналу с портов USART SPI I2C.
А вот всякие там пробуждения по таймеру или аналоговым входам, это уже универсальное что то сделать очень сложно.

Спящие режимы

Добавлено: 12.10.2016{, 16:39}
Слимпер
Попробовал сделать блок для перевода контроллера в режим сна.

Получилось два блока один для перевода в режим сна.
Другой для пробуждения по входам с прерываниями.

Для проверки, сделал тестовый проект. Вроде работает. Но в режиме IDLE не хочет засыпать, похоже дело в том что на UNO к UART подключен второй контроллер.

Прилагаю блоки и тестовый проект, если кто будет пробовать  отпишитесь, это только проба. 

На сообщение о том что не найдена библиотека внимание не обращать, FLProg не понимает:
#include <avr/sleep.h>, а так это внутренняя библиотека Arduino IDE

Спящие режимы

Добавлено: 20.10.2016{, 23:28}
da
Спасибо, обязательно попробую. Это, очень нужная функция во многих случаях.

Спящие режимы

Добавлено: 30.10.2016{, 20:09}
zikkgaz24
Привет слимпер попробовал блоки сна и чет не работают перебрал все варианты и еще обычный генератор тупит с этими блоками вопрос что не так сделал

Спящие режимы

Добавлено: 31.10.2016{, 16:27}
Слимпер
zikkgaz24 писал(а):Привет слимпер попробовал блоки сна и чет не работают перебрал все варианты и еще обычный генератор тупит с этими блоками вопрос что не так сделал
У меня работало, а что так или не так, сказать не могу. Как пишуть на другом форумах  телепатов здесь нет А если без шуток, проложи проект.

Спящие режимы

Добавлено: 31.10.2016{, 19:49}
zikkgaz24
вот проект
13 нога с диодом использована как индикация и в итоге даже диод моргает 3 раза и потом горит постоянно а в сон не идет вот проблема что не так погляди

Спящие режимы

Добавлено: 01.11.2016{, 16:20}
Слимпер
zikkgaz24 писал(а):13 нога с диодом использована как индикация и в итоге даже диод моргает 3 раза и потом горит постоянно а в сон не идет вот проблема что не так погляди
Ну у самого сначала не заработало, но после небольшой доработки стало работать. 
СпойлерПоказать
Похоже какие то эффекты в процессе пробуждения, я эти тонкости не знаю  почти.

Спящие режимы

Добавлено: 02.11.2016{, 16:58}
zikkgaz24
понял дома проверю

Спящие режимы

Добавлено: 02.11.2016{, 23:43}
vist1973
Проверил в FBD работает нормально.А для LAD использовать не смог так как не знаю чем заменить RTrig,а режим сна очень нужен .

Спящие режимы

Добавлено: 02.12.2016{, 15:27}
Oleg
Проверил оно как бы работает,но ток потребления который я мог добиться выбором всех имеющихся  режимов сна составляет 9,8мА.Это много. По даташиту должно быть в мкА. Выпаял даже светодиод "On"на Arduino/

Спящие режимы

Добавлено: 02.12.2016{, 17:48}
Слимпер
Oleg писал(а):Проверил оно как бы работает,но ток потребления который я мог добиться выбором всех имеющихся  режимов сна составляет 9,8мА.Это много. По даташиту должно быть в мкА. Выпаял даже светодиод "On"на Arduino/
А что у вас за плата?
Я сам пробовал и тоже убедился, что реально снижается потребление только на голом камне.
Например тестил Attiny85, без внешнего кварца, в рабочем состояние 15мА, в режиме сна 0,4мА.

А на платах ардуино, много всего лишнего, второй мк (конвертер TTL US , светодиоды, стабилизаторы питания (5В 3.3В).