UART,通用异步收发传输器(Universal Asynchronous Receiver/Transmitter).一般指TTL/CMOS电平的串口(广义也包括RS232-C电平的,甚至RS422, RS485)。

引脚定义:Tx(发送)、Rx(接收)。

android ttyS4串口 波特率 uart串口的常用波特率_数据


传输速率:由设置的波特率决定,常用300、600、1200、2400、4800、9600、19200、38400、43000、56000、57600、115200。波特率与比特率的关系也可换算成:比特率=波特率单个调制状态对应的二进制位数。如数据传送速率为240b/s,而每个字符格式包含10位(1个起始位,1个停止位,8个有效数据位),这时的波特率为240 baud (波特),比特率(有效数据位的传送速率)为24010=2400 bps(比特每秒)。

传输类型:全双工

接口类型:TTL或CMOS电平,广义也包括RS232.一般推挽输出,内部上拉输入。

电平范围:由TTL/CMOS电平决定,高电平常用有1V8/2.5/3.3/5V,电平0V。若是RS232则高电平-15V ~ -3V,低电平3V~15V。

电平变化与逻辑关系:TTL和CMOS都是高电平为1,低电平为0。空闲时时高电平。

数据格式;

UART作为异步串口通信协议的一种,工作原理是将数据的字节一位接一位地传输,如下:

android ttyS4串口 波特率 uart串口的常用波特率_比特率_02


空闲位:UART协议规定,当总线处于空闲状态时信号线的状态为‘1’即高电平

起始位:开始进行数据传输时发送方要先发出一个低电平’0’来表示传输字符的开始。因为空闲位一直是高电平所以开始第一次通讯时先发送一个明显区别于空闲状态的信号即为低电平。

数据位:起始位之后就是要传输的数据,数据可以是5,6,7,8,9位,构成一个字符,一般都是8位。先发送最低位最后发送最高位。

奇偶校验位:数据位传送完成后,要进行奇偶校验,校验位其实是调整个数,串口校验分几种方式:

1.无校验(no parity)

2.奇校验(odd parity):如果数据位中’1’的数目是偶数,则校验位为’1’,如果’1’的数目是奇数,校验位为’0’。

3.偶校验(even parity):如果数据为中’1’的数目是偶数,则校验位为’0’,如果为奇数,校验位为’1’。

4.mark parity:校验位始终为1

5.space parity:校验位始终为0

停止位:

数据结束标志,可以是1位,1.5位,2位的高电平。

发送数据的时候,先把数据放入FIFO寄存器(如果开启了FIFO模式),然后才会把数据放到发送移位器,串行的发送给接收方。类似的,接收数据的时候是先放到接收移位器,然后放到FIFO寄存器,CPU就是从FIFO寄存器取数据的。如果无FIFO则只有一位缓存。

波特率:Baud,symbol/s,是指数据信号对载波的调制速率,它用单位时间内载波调制状态改变的次数来表示(也就是每秒调制的符号数)。常见的波特率9600bps,115200bps等等,其他标准的波特率是1200,2400,4800,19200,38400,57600。
比特率:bps,bit/s, 表示有效数据的传输速率, 也就是每秒钟传送的二进制位数.
波特率与比特率的关系也可换算成:比特率=波特率*单个调制状态对应的二进制位数。
对于串口来说,“单个调制状态对应的二进制位数”为1,所以波特率=比特率。
传输线阻抗:无要求;
允许并联电容:暂无看到;
支持设备数量:由于不是总线结构,一般一对一通讯。如果要一对多则要额外设计选择电路和控制。
传输距离:若TTL/CMOS电平则通讯在9600下TTL传输2米•不过一般写15米,降低波特率可以更远些,这个与电磁环境有关系。主要受限于TTL器件的带负载能力和抗干扰能力的影响。若需要远距离传输,一般转换位RS232,RS485,RS422,USB等其他电平。
应用场合:CPU对CPU的通讯。
设计要点:电平转换(如用MAX232转RS232,用FT232转USB),设备间RX与TX连接。
其他:暂无。