USART

Usart的中断标志:

  • USART_INT_PERR:奇偶校验错误中断
  • USART_INT_TBE:发送缓冲区空中断
  • USART_INT_TC:传输完成中断
  • USART_INT_RBNE:接收数据缓冲区非空中断和溢出错误中断
  • USART_INT_IDLE:检测到IDLE线中断
  • USART_INT_LBD:LIN中断检测到中断
  • USART_INT_ERR:错误中断
  • USART_INT_CTS:CTS中断
  • USART_INT_RT:接收超时事件中断使能位
  • USART_INT_EB:块结束事件中断使能

USART_INT_PERR(Parity Error Interrupt):奇偶校验错误中断。当接收到的数据在奇偶校验中发生错误时触发该中断,可以用来处理校验错误的情况。

USART_INT_TBE(Transmit Buffer Empty Interrupt):发送缓冲区空中断。当发送缓冲区为空,可以继续发送数据时触发该中断。它可以用于实现数据连续发送或防止发送缓冲区溢出。

USART_INT_TC(Transmission Complete Interrupt):传输完成中断。当数据的完整传输(包括最后一个字节的发送)完成时触发该中断,可用于通知处理器/控制器数据发送操作已经完成。

USART_INT_RBNE(Receive Buffer Not Empty Interrupt):接收数据缓冲区非空中断和溢出错误中断。当接收数据缓冲区中至少有一个字节的数据可读取时触发该中断。此外,如果接收数据缓冲区发生溢出错误(即新数据覆盖了尚未读取的数据),也会触发该中断。

USART_INT_IDLE(IDLE line detected interrupt)是检测到串口的IDLE线状态时触发的中断。在串口通信中,IDLE线是指在一段时间内没有数据传输的状态。当接收到连续的空闲位(即接收数据中没有传输的位)时,串口会触发IDLE线状态。USART_INT_IDLE中断的作用是通知处理器/控制器,在串口中检测到数据帧的结束,即检测到整个数据传输的完成。通过启用USART_INT_IDLE中断,您可以在每次接收到完整数据帧后及时对其进行处理。

USART_INT_IDLE(IDLE Line Detected)中断用于检测串行通信中的空闲线状态。

当数据传输完成后,串口会进入空闲状态,也就是不再发送或接收数据。在空闲状态下,串口线路的电平保持不变,通常为高电平(逻辑1)。当检测到串口线路上出现连续的空闲状态时,即称为"IDLE Line"。

USART_INT_IDLE中断被触发时,表示检测到了IDLE Line。这个中断可以用于通知微控制器或处理器,表示串口数据传输已经完成,并且串口处于空闲状态。在中断处理函数中,可以执行相关的操作,比如处理接收到的数据、清除缓冲区或执行其他需要的任务。

例如,当注意到IDLE线中断时,您可以读取已接收的数据并进行相应的处理,如解析或存储。这样,您可以实现及时处理接收到的数据,以满足特定应用的需求。

USART_INT_LBD(LIN Break Detection Interrupt):LIN中断检测到中断。当从机与主机之间的LIN总线上检测到一个BREAK信号并且特殊的LIN BREAK检测机制被激活时触发该中断。它可用于处理与LIN总线通信相关的特殊情况。

USART_INT_ERR(Error Interrupt):错误中断。当接收到损坏或无效的数据时,如帧错误、噪声错误或停止位错误等,会触发该中断。通过处理此中断,您可以检测和处理串口通信中的错误情况。

USART_INT_CTS(Clear to Send Interrupt):CTS中断。在硬件流控制模式下,当接收端设备送出的CTS信号处于"Clear to Send"状态时,会触发该中断。它可用于协调发送方与接收方之间的数据传输。

USART_INT_RT(Receive Timeout Event Interrupt):接收超时事件中断使能位。在一段时间内没有接收到数据时,超过设定的时间阈值将触发该中断,可用于检测长时间无数据接收的情况。

USART_INT_EB(End of Block Event Interrupt):块结束事件中断使能位。在特定的通信协议或传输方式中,当接收器检测到块的结束时触发该中断,用于处理块数据传输的完成及相应的操作。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值