大家好,又见面了,我是你们的朋友全栈君。
- USART支持同步模式,因此USART 需要同步始终信号USART_CK(如STM32单片机),通常情况同步信号很少使用,因此一般的单片机UART和USART使用方式是一样的,都使用异步模式。
- UART 作为串口的一种,其工作原理也是将数据一位一位的进行传输,发送和接收各用一条线,因此通过 UART接口与外界相连最少只需要三条线:TXD(发送)、RXD(接收)和 GND(地线)
- **空闲位:**数据线在空闲状态的时候为逻辑“1”状态,也就是高电平,表示没有数据线空闲,没有数据传输。
- **起始位:**当要传输数据的时候先传输一个逻辑“0”,也就是将数据线拉低,表示开始数据传输。
- **数据位:**数据位就是实际要传输的数据,数据位数可选择 5~8 位,我们一般都是按照字节传输数据的,一个字节 8 位,因此数据位通常是 8位的。低位在前,先传输,高位最后传输。
- **奇偶校验位:**这是对数据中“1”的位数进行奇偶校验用的,可以不使用奇偶校验功能。
- **停止位:**数据传输完成标志位,停止位的位数可以选择 1 位、1.5 位或 2 位高电平,一般都选择 1 位停止位。
- **波特率:**波特率就是 UART 数据传输的速率,也就是每秒传输的数据位数,一般选择 9600、19200、115200 等。(bps)
- 串口三种方式工作,轮询、中断和DMA;
接收中断:串口一来数据,立刻中断响应,进入中断服务函数接收;
查询发送:发送完一个字节,等待发送完,继续发送下个字节,直到整个字符串发送完,在这期间一直占用CPU;
中断发送:发送完一个字节CPU响应中断将下个字节放到外设寄存器,直到整个字符串发完,发完后再相应中断,补货…,这样的话发送中断就只有在中断时占用CPU资源;
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/144690.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...