Прерывание происходят при любом изменении уровня.
Добавлено: Вс май 29, 2016 05:23:05
интересное дело..
открываю даташит на атмегу64а, страница 88, про регистр EICRB который определяет условия по которым происходит генерация прерываний для INT7...INT4
и вижу таблицу вконце страницы для битов ISCn1 и ISCn0 при их значениях 01 в таблице значится Reserved, тоесть вроде как по смыслу зарезервировано, не используется, хотя в тексте выше есть некий намек что есть условие для генерации прерывния по любому изменению уровня, это я так предполагаю что там написано, потому как использовал корявый перевод гугла. но если не знаешь толком английского или не заострять внимание, а просто взглянуть на таблицу то такого режима там нет, написано- зарезервировано. остальные по спаду, фронту, и низкому уровню.
но на самом деле если биты регистра EICRB ISCn1 ISCn0 выставить в 01 то прерывания будут генеририроваться и по спаду и по фронту. непонятно, почему они явно не указали это в таблице?
кстати в официальном даташите на атмегу 128 тоже ни фига не указано что если выставить значения битов 01 то прерывания будут генерироваться при любом изменении уровня
однако в сети гуляет русский перевод на атмегу 128, вот в нем в таблице и написано что при значении битов 01 прерывание генерируется при любом изменении уровня на INT7-INT4
после того как я наткнулся на это, решил проверить в авр студии на атмеге 64а, и действительно прерывание в симуляторе происходят при любом изменении уровня на INT7-INT4
собственно, незнаю, возможно один я только об этом незнал, но меня удивляют эти составители даташитов. зачем нужно было писать что это положение зарезервировано, хотя на самом деле оно работает
открываю даташит на атмегу64а, страница 88, про регистр EICRB который определяет условия по которым происходит генерация прерываний для INT7...INT4
и вижу таблицу вконце страницы для битов ISCn1 и ISCn0 при их значениях 01 в таблице значится Reserved, тоесть вроде как по смыслу зарезервировано, не используется, хотя в тексте выше есть некий намек что есть условие для генерации прерывния по любому изменению уровня, это я так предполагаю что там написано, потому как использовал корявый перевод гугла. но если не знаешь толком английского или не заострять внимание, а просто взглянуть на таблицу то такого режима там нет, написано- зарезервировано. остальные по спаду, фронту, и низкому уровню.
но на самом деле если биты регистра EICRB ISCn1 ISCn0 выставить в 01 то прерывания будут генеририроваться и по спаду и по фронту. непонятно, почему они явно не указали это в таблице?
кстати в официальном даташите на атмегу 128 тоже ни фига не указано что если выставить значения битов 01 то прерывания будут генерироваться при любом изменении уровня
однако в сети гуляет русский перевод на атмегу 128, вот в нем в таблице и написано что при значении битов 01 прерывание генерируется при любом изменении уровня на INT7-INT4
после того как я наткнулся на это, решил проверить в авр студии на атмеге 64а, и действительно прерывание в симуляторе происходят при любом изменении уровня на INT7-INT4
собственно, незнаю, возможно один я только об этом незнал, но меня удивляют эти составители даташитов. зачем нужно было писать что это положение зарезервировано, хотя на самом деле оно работает