Embedded USART中空闲和中断字符的用途是什么?

Embedded USART中空闲和中断字符的用途是什么?,embedded,Embedded,我目前正在编写一些代码来在STM32F4微控制器上实现USART,并想知道如何有效地使用空闲字符和中断字符。空闲和中断的使用主要与同步通信有关(尽管您也可以在异步模式下使用这两个概念) 因为有一个连续的比特流以同步模式在线路上流动,所以没有办法不发送任何东西——为了能够做到这一点,通常使用空闲模式(通常是所有模式)。这仅仅意味着线路上没有数据 中断模式(通常为全零)通常用于在同步协议中发出带外通知的信号-例如,作为数据包签名的开始 空闲和中断的确切使用取决于低电平线路协议。对于异步串行数据,只有

我目前正在编写一些代码来在STM32F4微控制器上实现USART,并想知道如何有效地使用空闲字符和中断字符。空闲和中断的使用主要与同步通信有关(尽管您也可以在异步模式下使用这两个概念)

因为有一个连续的比特流以同步模式在线路上流动,所以没有办法不发送任何东西——为了能够做到这一点,通常使用空闲模式(通常是所有模式)。这仅仅意味着线路上没有数据

中断模式(通常为全零)通常用于在同步协议中发出带外通知的信号-例如,作为数据包签名的开始


空闲和中断的确切使用取决于低电平线路协议。

对于异步串行数据,只有空闲电平-对于逻辑电压(不是RS232),这是逻辑1-没有空闲字符。Break也不是一个字符:它是一个逻辑0,表示至少一个完整字符的时间(1个起始位、7/8数据位、可选奇偶校验位,关键是停止位),因此字符的帧设置不正确。未定义中断的最大持续时间。用于从终端发出需要注意的信号;是的,这将是一个特殊用途,是特定于应用程序的。“停止位”-我猜这意味着可能有两个停止位,因为大多数UART允许选择1或2。因此,为了保证在接收器上检测到中断,中断的最小宽度必须为12位(波特)宽;如果你不知道波特率,那么你必须假设至少110波特,因此中断时间为12/110秒-0.11秒。一项快速的网络调查显示,支持@barny在第9页上的评论维基百科的页面也告诉了我们很多OP可以做到这一点…;-)