esaulenka 7 7 ноября, 2016 Опубликовано 7 ноября, 2016 · Жалоба Как правило есть два бита: периферийный и NVIC-овский. Когда периферийный срабатывает, он устанавливает NVIC-овский. Когда дело доходит до обработчика, NVIC-овский аппаратно сбрасывается (при выходе?), а в обработчике нужно сбросить периферийный. Если делать это в самом конце, то будет повторное вхождение в обработчик, но уже со сброшенным периферийным битом. Поэтому всегда нужно проверять установку периферийного бита. И сбрасывать его как можно раньше, а если сбрасываешь в конце обработчика, то перед выходом добавить NOP, а еще правильнее барьер (DSB?). Повторный вход в обработчик подтверждаю, есть такое. Правда, я лечил просто переносом сброса наверх - дополнительная проверка не нужна. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться