Разное и полезное > Микроконтроллеры и их программирование
Прерывание в прерывании
Злой:
Вопрос появился такой, если повесить например энкодер одной ногой на прерывание. МК спит, приходит прерывание он начинает выполнять действие, а энкодер крутится дальше и вроде как опять приходит прерывание :d_know: :d_know: Или я зря навожу панику и в процессе выполнения действия прерывания игнорятся?
kkol:
Думаю что МК "крутится" гораздо быстрее чем энкодер. :yes:
Прерывания не игнорятся.
Главное что бы само действие не выполнялось в прерывании, а только им вызывалось.
Злой:
Хорошо, но дребезг контактов сопоставим по быстродействию со скоростью МК, по первому фронту запускается процесс, а тут с дребезгом МК видит или не видит следующее прерывание :d_know:.
hippo64:
Марат, правила хорошего тона предписывают первой же командой при вваливании в обработку прерывания запретить прерывания, при вываливании разрешить и только тут проверятся флаги и опять улетим , если флаг прерывания есть. По крайней мере нам это вдалбливали в голову.
Злой:
--- Цитата: hippo64 от 08 Февраля 2018, 16:05:07 ---По крайней мере нам это вдалбливали в голову.
--- Конец цитаты ---
Хорошо если вдалбливали, у меня и близко ничего подобного не было. На Бейсике все можно сказать и закончилось :(
Навигация
Перейти к полной версии