打印
[技术问答]

请问UART只开了RC中断 为啥也会有TXE中断?

[复制链接]
1011|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
土司Apple|  楼主 | 2022-4-4 16:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
UART, rc, stc, tc, ip
请问UART只开了RC中断 为啥也会有TXE中断标志呢?
    stc_uart_cfg_t    stcCfg;

    DDL_ZERO_STRUCT(stcCfg);

    ///< 开启外设时钟
    Sysctrl_SetPeripheralGate(SysctrlPeripheralUart0,TRUE);///<使能uart1模块时钟

    ///<UART Init
    stcCfg.enRunMode        = UartMskMode1;          ///<模式1
    stcCfg.enStopBit        = UartMsk1bit;           ///<1bit停止位
    stcCfg.enMmdorCk        = UartMskDataOrAddr;     ///<
    stcCfg.stcBaud.u32Baud  = 9600;                  ///<波特率9600
    stcCfg.stcBaud.enClkDiv = UartMsk8Or16Div;       ///<通道采样分频配置
    stcCfg.stcBaud.u32Pclk  = Sysctrl_GetPClkFreq(); ///<获得外设时钟(PCLK)频率值
    Uart_Init(M0P_UART0, &stcCfg);                   ///<串口初始化

    ///<UART中断使能
    Uart_ClrStatus(M0P_UART0,UartRC);                ///<清接收请求
    Uart_ClrStatus(M0P_UART0,UartTC);                ///<清发送完成请求
    Uart_ClrStatus(M0P_UART0,UartTxe);               ///<清TX空请求
    Uart_EnableIrq(M0P_UART0,UartRxIrq);             ///<使能串口接收中断
    Uart_DisableIrq(M0P_UART0,UartTxIrq);             ///<使能串口发送完成中断
    Uart_DisableIrq(M0P_UART0,UartTxEIrq);            ///<使能串口发送缓冲区空中断
    EnableNvic(UART0_IRQn, IrqLevel3, TRUE);         ///<系统中断使能

使用特权

评论回复
沙发
土司Apple|  楼主 | 2022-4-4 16:25 | 只看该作者
是我哪里操作的不对么?比较困惑!

使用特权

评论回复
板凳
tpgf| | 2022-5-3 13:18 | 只看该作者
什么是串口的rc中断啊

使用特权

评论回复
地板
renzheshengui| | 2022-5-3 13:24 | 只看该作者
是不是没有关掉这个中断啊

使用特权

评论回复
5
wakayi| | 2022-5-3 13:33 | 只看该作者
中断标志位没有问题吗

使用特权

评论回复
6
wowu| | 2022-5-3 13:44 | 只看该作者
看一下主函数代码

使用特权

评论回复
7
xiaoqizi| | 2022-5-3 14:24 | 只看该作者
那可以进入rc中断吗

使用特权

评论回复
8
木木guainv| | 2022-5-3 14:35 | 只看该作者
在什么时候开始使能的呢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

57

主题

254

帖子

2

粉丝