牛卧堂MCU技术交流
标题:
请问怎么设置NUC123串口超时中断?
[打印本页]
作者:
bsp0321
时间:
2018-7-25 08:00
标题:
请问怎么设置NUC123串口超时中断?
我设置串口如下
void UART0_Init()
{
/*---------------------------------------------------------------------------------------------------------*/
/* Init UART */
/*---------------------------------------------------------------------------------------------------------*/
/* Reset UART0 module */
SYS_ResetModule(UART0_RST);
/* Configure UART0 and set UART0 Baudrate */
UART_Open(UART0,9600);
UART0->TOR = (UART0->TOR & ~UART_TOR_DLY_Msk) | (200<<UART_TOR_DLY_Pos);
UART_EnableInt(UART0,UART_IER_RDA_IEN_Msk|UART_IER_RTO_IEN_Msk);
NVIC_EnableIRQ(UART0_IRQn);
}
我发现接收数据能进中断,不发数据了应该能进一次超时中断,然后进不了超时中断,
寄存器数据如下
1.PNG
(20.52 KB, 下载次数: 364)
下载附件
2018-7-25 08:00 上传
请大侠帮个忙指点一下,不胜感激
作者:
bsp0321
时间:
2018-7-25 08:11
我把Timeout中断也打开也不起作用
UART_EnableInt(UART0,UART_IER_RDA_IEN_Msk|UART_IER_RTO_IEN_Msk|UART_IER_TIME_OUT_EN_Msk);
请大侠帮个忙指点一下,不胜感激
作者:
jamesliu
时间:
2018-7-25 12:52
FSR接收FIFO的bit14显示接收FIFO是空的,根本没有数据怎么会有Timeout发生呢。Timeout是在FIFO中有数据并且没有达到FCR(7:4)的阈值才会产生
作者:
bsp0321
时间:
2018-7-27 15:17
不好意思,回复的晚了,我看看,也就是说必须使能FIFO才接收超时才会起作用对吧
欢迎光临 牛卧堂MCU技术交流 (http://nuvoton-mcu.com/)
Powered by Discuz! X3.2