串口通信中 传输过程是 发送端先传高位还是低位 ?

您所在的位置:网站首页 传输数据软件是什么意思 串口通信中 传输过程是 发送端先传高位还是低位 ?

串口通信中 传输过程是 发送端先传高位还是低位 ?

2024-07-13 02:08| 来源: 网络整理| 查看: 265

传输数据时先传送字符的低位,后传送字符的高位。即低位(LSB)在前,高位(MSB)在后。

串口通讯中是一个字符一个字符地传输,每个字符一位一位地传输,并且传输一个字符时,总是以“起始位”开始,以“停止位”结束,字符之间没有固定的时间间隔要求。停止位和空闲位都规定为高电平。

数据位紧跟在起始位之后,是通信中的真正有效信息。数据位的位数可以由通信双方共同约定,一般可以是5位、7位或8位,标准的ASCII码是0~127(7位),扩展的ASCII码是0~255(8位)。传输数据时先传送字符的低位,后传送字符的高位。

网友实测:

下图实际测试为115200bps+1位停止位+8位数据+无奇偶校验

但有看到过MSB,不过我这边STM32测试确实是LSB

扩展资料

起始位必须是持续一个比特时间的逻辑0电平,标志传输一个字符的开始,接收方可用起始位使自己的接收时钟与发送方的数据同步。

每一个字符的前面都有一位起始位(低电平),字符本身由7位数据位组成,接着字符后面是一位校验位(检验位可以是奇校验、偶校验或无校验位),最后是一位或一位半或二位停止位,停止位后面是不定长的空闲位,停止位和空闲位都规定为高电平。

实际传输时每一位的信号宽度与波特率有关,波特率越高,宽度越小,在进行传输之前,双方一定要使用同一个波特率设置。

概念普及

(1)在串行通信的信号线路上,共有两种状态,分别用逻辑1(高电平)和逻辑0(低电平)来区分。在发送器空闲时,数据线应该保持在逻辑1高电平状态。

(2)起始位(Start Bit):起始位必须是持续一个比特时间的逻辑0(低电平),使数据线处于逻辑0低电平状态,提示接收器数据传输即将开始,即标志传输一个字符的开始。发送器通过发送起始位而开始一个字符传送,接收方可用起始位使自己的接收时钟与发送方的数据同步。

(3)数据位(Data Bits):数据位紧跟在起始位之后,是通信中的真正有效信息。数据位的位数由通信双方共同约定,一般可以是6位、7位或8位,比如标准的ASCII码是0~127(7位),扩展的ASCII码是0~255(8位)。传输数据时先传送字符的低位,后传送字符的高位,即低位(LSB)在前,高位(MSB)在后。

(4)校验位(Parity Bit):也可认为是一个特殊的数据位。校验位一般用来判断接收的数据位有无错误,一般采用奇偶校验。奇偶校验位仅占一位,用于进行奇校验或偶校验,奇偶检验位不是必须有的。如果是奇校验,需要保证传输的数据总共有奇数个逻辑高位;如果是偶校验,需要保证传输的数据总共有偶数个逻辑高位。举例来说,假设传输的数据位为01001100,如果是奇校验,则奇校验位为0(要确保总共有奇数个1);如果是偶校验,则偶校验位为1(要确保总共有偶数个1)。由此可见,奇偶校验位仅是对数据进行简单的置逻辑高位或逻辑低位,不会对数据进行实质的判断,好处是接收设备能够知道一个位的状态变化,从而判断是否有噪声干扰了通信以及传输的数据是否同步。

(5)停止位:停止位在最后,用以标志一个字符传送的结束,对应于逻辑1(高电平)状态。停止位可以是1位、1.5位或2位,可以由软件设定。但它一定是逻辑1高电平,标志着传输一个字符的结束。

(6)位时间:即每个位的时间宽度。起始位、数据位、校验位的位宽度是一致的,停止位有0.5位、1位、1.5位格式,一般为1位。

(7)帧:从起始位开始到停止位结束的时间间隔称之为一帧。

(8)波特率:UART的传送速率,用于说明数据传送的快慢。在串行通信中,数据是按位进行传送的,因此传送速率用每秒钟传送数据位的数目来表示,称之为波特率。如波特率9600就是9600位/秒。 [2]



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3