同时使用UART0和UART1,采用中断收发数据,UART1不能正常工作。

chrishu |浏览189次
收藏|2022/09/07 13:23

只开UART1工作正常。同时开UART0和UART1后,PC往UART1发送数据后,需要再给UART0发送数据,UART1才能进中断。

满意回答

2022/09/07 16:20

这个问题因为3个原因:

1)UART0中断号小于UART1,当同时产生中断时,会先处理UART0中断。

2)又因为UART0开了发送阈值中断,不填数据到UART0发送FIFO的话,该中断会一直发生,导致没时间进UART1中断。

3)为何给UART0发送数据之后,UART1中断就能发生了?因为UART0中断处理函数中关闭了发送阈值中断。

nuvoton2022

其他回答(0)
0人关注该问题
+1
 加载中...