现在我正在使用AM3359的ICE做UART中断。
中断的设置方法我是参考了TI给的SDK中的参考代码。
========
我的中断处理触发的方法是:
UARTIntEnable(SOC_UART_4_REGS, (UART_INT_LINE_STAT | UART_INT_RHR_CTI));
但是,只有开机启动后,会自动次走到中断函数(UARTIsr)里。
以后不管怎么在终端上输入字符,中断函数(UARTIsr)都不会被触发。
而且,自动走到中断函数(UARTIsr)里时,返回的信息是:UART_INTID_RX_LINE_STAT_ERROR
========
经过上面的情况,我把中断处理触发的方法修改成下面的这样:
UARTIntEnable(SOC_UART_4_REGS, ( UART_INT_RHR_CTI));
但是,这回程序会无限的自动次走到中断函数(UARTIsr)里。
返回的信息是:UART_INTID_RX_THRES_REACH
可是,我根本没在终端里输入任何信息。
========
请问,我的URAT中断处理,哪里有问题?
附件是我参考TI的SDK,写的C语言的代码。