Выход из спячки
- Войдите на сайт для отправки комментариев
Чт, 18/05/2017 - 17:58
Как я понимаю, выход из режима сна всегда осуществляется каким-то прерыванием. А как быть, если нужно продолжить исполнение функции loop() или она возобновится автоматически, но тогда с какого места?
если нужно исполнять, то спать нельзя.
После просыпания выполнение начнётся ровно с того места, где заснули. Буквально будет выполняться следующая команда, как будто бы никакого сна и не было. Вас это интересует?
Это, но если пробуждение инициируется прерыванием, то разьве управление не будет передано в это прерывание? Если до засыпания МК успел начать обрабатывать какое-то прерывание, то после выхода из спячки:
1) МК сначала исполнит программу прерывания, которое разбудило его и что дальше ?
2) МК завершит обработку прерывания, в котором заснул в вернется к исполнению loop?
3) иное ?
те заснув однажды, МК в loop уже не вернется?
те заснув однажды, МК в loop уже не вернется?
где я такое утверждал?
Ну, если перывание, так после его отбраотки, вернёт на сл. команду за той, которая исполнялась последней, как и после любого другого прерывания.
Питер, игнорируйте этих двух придурков. Они ничего не знают, только ругаются и тролят. Я их игнорирую - спрсил а в ответ пустота...
МК выполнит прерывание и вернется назад в программу
Питер, игнорируйте этих двух придурков. Они ничего не знают, только ругаются и тролят. Я их игнорирую - спрсил а в ответ пустота...
МК выполнит прерывание и вернется назад в программу
О, никак новая звезда на нашем небосклоне.
МК выполнит прерывание и вернется назад в программу
Программа большая . Куда вернется так и не сказано. Если вы пишете на Си , то будет делать следующую команду после команды "Спать". Так же это будет и при нормальной программе на Ассемблере. Но есть варианты. Если после выполнения программы прерывания не возвращаться в программу, а делать горячий старт. Но как это делать не сюда спрашивать, а искать специализированые форумы. Так как такой трюк давно не делают.
Куда вернется так и не сказано.
Почему, я сказал.
МК выполнит прерывание и вернется назад в программу
Программа большая . Куда вернется так и не сказано. Если вы пишете на Си , то будет делать следующую команду после команды "Спать". Так же это будет и при нормальной программе на Ассемблере. Но есть варианты. Если после выполнения программы прерывания не возвращаться в программу, а делать горячий старт. Но как это делать не сюда спрашивать, а искать специализированые форумы. Так как такой трюк давно не делают.
ну да, на ардуине так и происходит