我现在就是想通过tm4c123gh6pm的串口的接收中断,可是我发现在接收数据的过程中,刚开始的7个字节接收不到,进不去中断,从第八个字节开始正常接收,我的代码:
/* UART0初始化 */
void uart0_init(void)
{
SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0);
SysCtlDelay(5);
while(!SysCtlPeripheralReady(SYSCTL_PERIPH_UART0))
{
}
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
SysCtlDelay(5);
while(!SysCtlPeripheralReady(SYSCTL_PERIPH_GPIOA))
{
}
GPIOPinConfigure(GPIO_PA0_U0RX);
GPIOPinConfigure(GPIO_PA1_U0TX);
UARTClockSourceSet(UART0_BASE, UART_CLOCK_PIOSC);
GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1);
UARTIntEnable(UART0_BASE,UART_INT_RX); //串口中断接收使能
UARTIntRegister(UART0_BASE,UART0_Int); //注册串口中断函数
UARTStdioConfig(0, 115200, 16000000);
}
char flag = 0,data = 0;
void UART0_Int(void)
{
if(UARTIntStatus(UART0_BASE,UART_INT_RX))
{
flag = 1;
data = UARTCharGet(UART0_BASE);
UARTIntClear(UART0_BASE,UART_INT_RX);
}
}
请问大家有碰到这个问题吗,麻烦大家帮我看一下