-
- Ясен%, что в меге есть прерывания по уровню и фронту/срезу. Вот я и
соображаю, накуй засыпать в условии прерывания по уровню? Там-же
ещо прикол в том, что когда троешник выполняет своё усыпление,
через каждую команду происходит обработка прерывания. - mse homjak(25.11.2020 20:37)
- не происходит я так понимаю, флаг сбросили и досвидос прерывание!
поэтому и засыпает! - Aleksey_75(25.11.2020 21:21)
- ну тогда единственный выход, заснуть в прерывании тем самым
выстрелить себе в ногу!))) - Aleksey_75(25.11.2020 21:41)MBedder
- Сложнее. Самое простое, если прерывание генерится каким внешним Р-С
триггером. Или Д триггером. Мы проснулись, сбросили триггер сделали
дела и уснули. Если так низя, значит программируем прерывание на
переход в "1" или пин своп и идём в повердовн соотвецтвующего
уровня. Как тока прохавали, что нас попустило, перепрограммируемся
взад и честно впадаем в кому. - mse homjak(25.11.2020 22:42)
- ну эт самое правильное решение, имхо! Но если, уйти в кому из
прерывания на avr, это значит навсегда! - Aleksey_75(25.11.2020 22:51)
- Ну да. Там ещо со стеком начнутся проблемы. - mse homjak(25.11.2020 23:17)
- ну эт самое правильное решение, имхо! Но если, уйти в кому из
прерывания на avr, это значит навсегда! - Aleksey_75(25.11.2020 22:51)
- Сложнее. Самое простое, если прерывание генерится каким внешним Р-С
триггером. Или Д триггером. Мы проснулись, сбросили триггер сделали
дела и уснули. Если так низя, значит программируем прерывание на
переход в "1" или пин своп и идём в повердовн соотвецтвующего
уровня. Как тока прохавали, что нас попустило, перепрограммируемся
взад и честно впадаем в кому. - mse homjak(25.11.2020 22:42)
- ну тогда единственный выход, заснуть в прерывании тем самым
выстрелить себе в ногу!))) - Aleksey_75(25.11.2020 21:41)MBedder
- Хз. Не просыпается. Но я пока вам описывал свое хождение по граблям
вычитал что есть у этого проца еще и Pin Change Interrupt. Куда я
раньше смотрел не знаю, но это по идее решит мои проблемы. Напишу
если получится. Спасибо! - Tpoeшник(25.11.2020 20:43)
- из powerdown только "For INT1 and INT0, only level interrupt." , a
в EICRA только "The low level of INT1 generates an interrupt
request." , все верно! Если
заснули в 0, это навсегда! Хотя напрашиваемся вопрос как вообще в нуле можно заснуть! - Aleksey_75(25.11.2020 20:51)- Есть еще возможность проснутся: переходом уровня на пине. Я не
дочитал. Что касается как можно уснуть: не знаю, но спит если
верить показаниям микроамперметра. - Tpoeшник(25.11.2020 20:53)
- из powerdown только по уровню! Смотри DS! Aleksey_75(1 знак., 25.11.2020 20:57, картинка)
- Ну да. Пишут что для выхода из этого состояния прерывами по ИНТ0 и
ИНТ1 только уровнем. Но при этом типа не запрещают PCINT Tpoeшник(222 знак., 25.11.2020 21:00)
- дык "External level interrupt on INT" только уровнем! - Aleksey_75(25.11.2020 21:07)
- Да, но на этих пинах есть еще и PCINT18, PCIN19 - Tpoeшник(25.11.2020 21:12)
- могу ошибаться, но по моему не сработает! клоки PCINTx нужны, а
powerdown их нету Aleksey_75(1 знак., 25.11.2020 21:18, картинка)
- За исключающим ИЛИ может формироваться переход с 0 на 1 при любом
переходе на входе в спящем режиме. Что там дальше не ясно, но
возможно просыпается проц и есть тактовая для синхр.Д триггеров по
картинке - Tpoeшник(25.11.2020 21:54 - 26.11.2020 01:39)
- на картинке клоки уже есть до изменения уровня на входе! ну если
есть девайс на руках почему не применить "научный тык" ? ))) все
встанет на свои места ! - Aleksey_75(25.11.2020 21:58)
- Да, сейчас доберусь домой и попробую. Девайс со мной в спич.
коробке) Но клоки по идее не нужны до точки за лог И. Видимо там
идея в том чтоб в спячку войти этим куском схемы так чтоб при любой
смене на входе получить за этим самым лог" И" Импульс 0-1 - Tpoeшник(25.11.2020 22:05)
- Да. Работает. Pin change interrupts on PCINT are detected
asynchronously. То есть: можно использовать технологию с переходом
уровня на пине для пробуждение из режима сна. Спасибо! - Tpoeшник(25.11.2020 23:01)
- из power-down или другого ? это как бы имеет большое значение! - Aleksey_75(25.11.2020 23:04)
- Из power-down. Нет, ну вроде все честно. - Tpoeшник(25.11.2020 23:12)
- из power-down или другого ? это как бы имеет большое значение! - Aleksey_75(25.11.2020 23:04)
- Да. Работает. Pin change interrupts on PCINT are detected
asynchronously. То есть: можно использовать технологию с переходом
уровня на пине для пробуждение из режима сна. Спасибо! - Tpoeшник(25.11.2020 23:01)
- Да, сейчас доберусь домой и попробую. Девайс со мной в спич.
коробке) Но клоки по идее не нужны до точки за лог И. Видимо там
идея в том чтоб в спячку войти этим куском схемы так чтоб при любой
смене на входе получить за этим самым лог" И" Импульс 0-1 - Tpoeшник(25.11.2020 22:05)
- на картинке клоки уже есть до изменения уровня на входе! ну если
есть девайс на руках почему не применить "научный тык" ? ))) все
встанет на свои места ! - Aleksey_75(25.11.2020 21:58)
- За исключающим ИЛИ может формироваться переход с 0 на 1 при любом
переходе на входе в спящем режиме. Что там дальше не ясно, но
возможно просыпается проц и есть тактовая для синхр.Д триггеров по
картинке - Tpoeшник(25.11.2020 21:54 - 26.11.2020 01:39)
- могу ошибаться, но по моему не сработает! клоки PCINTx нужны, а
powerdown их нету Aleksey_75(1 знак., 25.11.2020 21:18, картинка)
- Да, но на этих пинах есть еще и PCINT18, PCIN19 - Tpoeшник(25.11.2020 21:12)
- дык "External level interrupt on INT" только уровнем! - Aleksey_75(25.11.2020 21:07)
- Ну да. Пишут что для выхода из этого состояния прерывами по ИНТ0 и
ИНТ1 только уровнем. Но при этом типа не запрещают PCINT Tpoeшник(222 знак., 25.11.2020 21:00)
- из powerdown только по уровню! Смотри DS! Aleksey_75(1 знак., 25.11.2020 20:57, картинка)
- Есть еще возможность проснутся: переходом уровня на пине. Я не
дочитал. Что касается как можно уснуть: не знаю, но спит если
верить показаниям микроамперметра. - Tpoeшник(25.11.2020 20:53)
- из powerdown только "For INT1 and INT0, only level interrupt." , a
в EICRA только "The low level of INT1 generates an interrupt
request." , все верно! Если
- не происходит я так понимаю, флаг сбросили и досвидос прерывание!
поэтому и засыпает! - Aleksey_75(25.11.2020 21:21)
- Ясен%, что в меге есть прерывания по уровню и фронту/срезу. Вот я и
соображаю, накуй засыпать в условии прерывания по уровню? Там-же
ещо прикол в том, что когда троешник выполняет своё усыпление,
через каждую команду происходит обработка прерывания. - mse homjak(25.11.2020 20:37)