ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
25 ноября
411614 Топик полностью
1111111 (22.05.2013 14:29, просмотров: 79) ответил koyodza на попробуйте сбрасывать флаг даже если соответствующий бит DIER не установлен. Проверили флаг - если есть, то сразу сбросили, потом проверили бит в DIER, если установлен, то выполняете нужные действия
Поменял вот так, ничего не изменилось  //определяем канал по которому пришло прерывание if( SW_UART_TIMER -> SR & TIM_SR_CC2IF ) { SW_UART_TIMER -> SR = ~TIM_SR_CC2IF; if( SW_UART_TIMER -> DIER & TIM_DIER_CC2IE ) { Ch = 1; goto WORK; } } if( SW_UART_TIMER -> SR & TIM_SR_CC3IF ) { SW_UART_TIMER -> SR = ~TIM_SR_CC3IF; if( SW_UART_TIMER -> DIER & TIM_DIER_CC3IE ) { Ch = 0; goto WORK; } } SW_UART_TIMER -> SR = TIM_SR_CC3IF | TIM_SR_CC2IF; return; WORK: