ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
19 мая
49330
_basile (25.01.2006 14:22, просмотров: 563)
Проблема с записью в регистр EXTMODE. Камень LPC2214. Нужно инициализировать прерывание по падающему фронту на P0.30. Прерывание по уровню работает нормально!!! ----------------------------- Код: void InitInterruptEINT3() { VICIntEnClear = 0xFFFFFFFF; EXTMODE = 0x08;/*EINT3 по фронту. С этой строкой - зависание, даже если дальше все закомментировать */ PINSEL1 &= 0xCFFFFFFF; // Switch P0.30 to EINT3 PINSEL1 |= 0x20000000; VICIntSelect &= 0xFFFDFFFF; VICVectAddr0 = (unsigned int)&MouseInterrupt; VICVectCntl0 = 0x20 | VIC_EINT3; VICIntEnable = 0x00020000; } -------------- Без EXTMODE = 0x08; происходят и нормально обрабатываются прерывания по уровню. Проц находится в System mode. Оставить по уровню и выкручиваться - не предлагать.