Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: внешнее с прерывание LPC2138
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
shandrei
система должна отчитываться по фронту и срезу импульса внешнего прерывания (т.е. по изменению, что будет первым неизвестно).
как ни пробую сконфигурировать микроконтроллер, то получается либо только по фронту либо только по срезу.
ну должно же быть красивое решение. в чем затык? создается такое впечатление, что это в принципе невозможно.
подскажите господа грамотные. делаю так.

IO0DIR_bit.P0_20 = 0; // вход
PINSEL1_bit.P0_20 = 3; // прерывание EINT3

EXTMODE = 0x0f; // EINT3 по перепаду
EXTINT_bit.EINT3 = 1; // = 0x08;
zltigo
Цитата(shandrei @ Dec 3 2008, 21:49) *
как ни пробую сконфигурировать микроконтроллер, то получается либо только по фронту либо только по срезу.

1.Препрограммировать в обработчике.
2.Поставить внешний "одновибратор".
shandrei
1 вариант болеее приятен.
- после каждого события перепрограмировать на противоположное, но это гемор!
- должна быть конфигурация для фронта и среза одновременно!
Altemir
Цитата(shandrei @ Dec 3 2008, 22:15) *
- должна быть конфигурация для фронта и среза одновременно!

А если просто использовать две ноги контроллера и объединить их: одну настроить на фронт, другую на спад, а обработчик прерывания один и тот же.
shandrei
мысля и весьма нестандартная!
наверное так и придется делать. просто надеялся что есть программное (конфигурационное) решение
SanvaldYV
zltigo
Цитата
Перепрограммировать в обработчике.

shandrei
Цитата
после каждого события перепрограмировать на противоположное, но это гемор!


В чем тут гемор? Инвертировать один бит в одном регистре? Единственный минус - есть вероятность пропустить самый первый фронт.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.