工具/软件:Code Composer Studio
尊敬的各位:
我正在使用2.1 4.178。 我使用UART echo示例程序, 并检查了UART0中断,工作正常。
但是,当我修改了其他UART的代码时,我可以发送,但中断不起作用。
程序正在设置到 IntDefaultHandler函数中。
已进行以下更改:
/****************** 初始化******************************************************************* /
G_ui32SysClock = MAP_SysClockFreqSet (((sysctl_XTal_25MHz |sysctl_OSC主|sysctl_use_PLL |sysctl_CFG_VCO_480),1.2亿);
//
//启用用于板载LED的GPIO端口。
//
ROM_SysCtlPeripheralEnable(sysctl_Periph_gpion);
//
//为LED (PN0)启用GPIO引脚。
//
ROM_GPIOPinTypeGPIOOutput (GPIO_PORTN_BASE,GPIO PIN_0);
//
//启用此示例使用的外围设备。
//
ROM_SysCtlPeripheralEnable(sysctl_Periph_UART4);
ROM_SysCtlPeripheralEnable(sysctl_Periph_GPIOK);
//
//启用处理器中断。
//
ROM_IntMasterEnable();
//
//将GPIO K0和K1设置为UART引脚。
//
GPIOPinConfigure(GPIO_PK0_U4RX);
GPIOPinConfigure(GPIO_PK1_U4TX);
ROM_GPIOPinTypeUART (GPIO _PORTK_BASE,GPIO PIN_0 | GPIO PIN_1);
//
//为11.52万 ,8-N-1操作配置UART。
//
ROM_UARTConfigSetExpClk (UART 4_base,g_ui32SysClock,11.52万,
(UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE |
UART_CONFIG_PAR_NONE));
//
//启用UART中断。
//
ROM_IntEnable (INT_UART4);
ROM_UARTIntEnable (UART4_BASE,UART_INT_RX | UART_INT_RT);
/********************************************************************************************************* /
/**************** 在中断中******************************************************************************************************** /
void UARTIntHandler (void)(空)
{
ui32Status5 = ROM_UARTIntStatus (UART4_BASE,TRUE);
//
//清除断言的中断。
//
ROM_UARTIntClear (UART4_BASE,ui32Status5);
//
//当接收FIFO中有字符时循环。
//
while (ROM_UARTCharsAvail (UART4_BASE))
{
G_UARTBuffer[g_UART[Count]= ROM_UARTCharGetNonBlocking (UART4_BASE);
*
*
*
//将接收到的数据保存在缓冲区中的程序
*
*
*
}
}