Добрый день! Суть моей задачи - уловить синал с датчика движения (ИК), который при срабатывании размыкает нормально замкнутное реле(оно стоит внутри датчика). Я планирую сделать следующим образом: один контакт реле сажаю на землю, второй - на вход внешнего прерывания EXTINT1 МК. Получается, что когда никто не двигается, вывод вн. прерывания сидит на земле. А как только датчик срабатывает, то сразу размыкается реле и вывод переходит в состояние лог. 1 за счет внутреннего подтягивающего резистора. Изначально я насторил внешнее прерывание на перепад, только не уточнил на какой. Оказалось, что на спад(falling-edge). У меня вывод внешнего прерывания выведен на разъем, поэтому там и замыкал, кусачками) Короче, по спаду все работало! В качестве проверки я зажигал светодиод при срабатывании прерывания. Но мне то надо наоборот. Тут я меняю значение в регистре EXTPOLAR с 0 на 2, т.е. настроил прерывание на фронт (rising-edge). Теперь после сброса у меня сразу загорается светодиод несмотря на то, что выход внешнего прерывания я замкнул на землю перед сбросом. Вопрос: в чем тут загвоздка? почему при работе по фронту прерывание срабатывает в любом случае?
|