NewSistems Опубликовано 17 октября, 2017 Жалоба Поделиться Опубликовано 17 октября, 2017 добрый день уровень знаний микроконтроллеров у меня низкий, и ранее не использовал внешние прерывания. пишу на ассемблере суть проблемы, есть переключающая кнопка, после нее стоит подавитель дребезга на к561ла7, пока кнопка не нажата на ногу микроконтроллера поступает 5В. нажал - 0В напомню, у атмеги64 8 внешних прерываний, 4 из них ассинхронные, 4 синхронные если я подключаю кнопку к выводам с ассинхронными прерываниями INT3..INT0 , все работает, микроконтроллер обрабатывает прерывания подключаю к синхронным выводам INT4...INT7 , не работает. менял настройки регистра EICRB, но бестолку читал даташит и прочее но так и не понял в чем проблема и как сделать и что необходимо настроить чтобы синхронные прерывания обрабатывались RESET: LDI R16, high(RAMEND) OUT SPH, R16 LDI R16, low(RAMEND) OUT SPL, R16 ;------------------------------------------------- CBI DDRE, 4 SBI PORTE, 4 LDI R16, 0B00000000 STS EICRB, R16 LDI R16, 0B00010000 OUT EIMSK, R16 SEI ;_______________________________________________ CYCL: NOP NOP JMP CYCL EXT_INT4: ......... RETI Читать дальше Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.