ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
21 июля
37065
Shamray (10.08.2005 17:50, просмотров: 3239)
Зависание LPC2214 при приходе прерывания. Есть такая проблема: при приходе любого из разрешенных прерывания программаерестает выполнятся. Сразу после программирования все нормально вызывается, но если сделать reset или дернуть питание то при первом же прерывании наблюдается уход вникуда... От чего это может быть??? Вот кусок кода: int main(void) { __ARMLIB_disableIRQ(); intInit(); __ARMLIB_enableIRQ(); //Enable Interrupts for(;;) { delay(10000); printf(\\\"test\\\\n\\\"); }; void intINIT(void) { VICProtection = 0; VICIntEnClr = 0xffffffff; VPBDIV=0; EXTINT=7; VPBDIV=0; EXTMODE=7; VPBDIV=0; EXTPOLAR=0; VPBDIV=1; VICIntSelect = 0; VICVectAddr1 = (unsigned int) timer0ISR; VICVectCntl1 = 0x20| VIC_TMR0; VICIntEnable |= (1 << VIC_TMR0); VICVectAddr3 = (unsigned int) UART1ISR; VICVectCntl3 = 0x20| VIC_UART1; VICIntEnable |= (1 << VIC_UART1); } static void timer0ISR(void) { T0IR = 0xFF; /* Clear the timer 0 interrupt */ VICVectAddr = 0;/* Update VIC priorities */ printf(\\\"t0\\\\n\\\"); } void UART1ISR(void) { unsigned char temp; temp=U1IIR&0x0f; VICVectAddr = 0; ///// бла-бла-бла //// }