This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LM4C123GH6PM捕获模式无法进入中断,怎么解决



这个是我测试的一个很简单的程序,一开始红灯亮,进入中断蓝灯亮,对PB6输入PWM波,发现进不去中断程序。编译什么都没问题,问题不知道怎么解决。

int main(void) {  

SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN);//系统时钟工作在40MHz

 SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);  

SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);  

SysCtlPeripheralEnable(SYSCTL_PERIPH_TIMER0);

 GPIOPinTypeTimer(GPIO_PORTB_BASE, GPIO_PIN_6);  

GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_2|GPIO_PIN_1);  

GPIOPinConfigure(GPIO_PB6_T0CCP0);

 GPIODirModeSet(GPIO_PORTB_BASE,GPIO_PIN_6,GPIO_DIR_MODE_IN);

 TimerConfigure(TIMER0_BASE, TIMER_CFG_A_CAP_COUNT);  

TimerControlEvent(TIMER0_BASE, TIMER_A,TIMER_EVENT_POS_EDGE);  

TimerLoadSet(TIMER0_BASE, TIMER_A, 200);  

TimerMatchSet(TIMER0_BASE, TIMER_A, 0);

 IntEnable(INT_TIMER0A);  

TimerIntEnable(TIMER0_BASE, TIMER_CAPA_MATCH);

 IntMasterEnable();  

TimerEnable(TIMER0_BASE, TIMER_A);

 while(1)  {   

GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_1, 2);//红灯亮

 }

 }

void Timer0IntHandler(void) {

  TimerIntClear(TIMER0_BASE, TIMER_CAPA_MATCH); // Clear the timer interrupt

   

GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, 4);//蓝灯亮   

GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_1, 0);//红灯灭  

 

}