串行通信的基本概念
- 格式:doc
- 大小:26.50 KB
- 文档页数:2
串行通信基础知识本节简要概括了串行通信中的相关概念,为学习PC 机与MCU 的串行通信做准备。
1. 基本概念我们知道,“位”(bit )是二进制数字的简称,是可以拥有两种状态的最小二进制值,分别用“0”和“1”表示。
在计算机中,通常一个信息单位用8位二进制表示,称为一个“字节”(byte )。
串行通信的特点是:数据以字节为单位,按位的顺序从一条传输线上发送出去。
这里至少涉及到以下几个问题:第一,每个字节之间是如何区分的?第二,发送一位的持续时间是多少?第三,怎样知道传输是正确的?第四,可以传输多远?等等。
这些问题属于串行通信的基本概念。
串行通信分为异步通信与同步通信两种方式,本节主要给出异步串行通信的一些常用概念。
正确理解这些概念,对串行通信编程是有益的。
① 异步串行通信的格式在MCU 的英文芯片手册上,通常说SCI 采用的是NRZ 数据格式,英文全称是:“standard non-return-zero mark/space data format ”,可以译为:“标准不归零传号/空号数据格式”。
这是一个通信术语,“不归零”的最初含义是:用负电平表示一种二进制值,正电平表示另一种二进制值,不使用零电平。
“mark/space ”即“传号/空号”分别是表示两种状态的物理名称,逻辑名称记为“1/0”。
对学习嵌入式应用的读者而言,只要理解这种格式只有“1”、“0”两种逻辑值就可以了。
图3.3.1给出了8位数据、无校验情况的传送格式。
这种格式的空闲状态为“1”,发送器通过发送一个“0”表示一个字节传输的开始,随后是数据位(在MCU 中一般是8位或9位,可以包含校验位)。
最后,发送器发送1到2位的停止位,表示一个字节传送结束。
若继续发送下一字节,则重新发送开始位,开始一个新的字节传送。
若不发送新的字节,则维持“1”的状态,使发送数据线处于空闲。
从开始位到停止位结束的时间间隔称为一帧(frame )。
所以,也称这种格式为帧格式。
串行通信的基本概念1.串行通信与并行通信在微型计算机中,通信(数据交换)有两种方式:串行通信和并行通信。
串行通信——是指计算机与I/O设备之间仅通过一条传输线交换数据,数据的各位是按顺序依次一位接一位进行传送。
并行通信——是指计算机与I/O设备之间通过多条传输线交换数据,数据的各位同时进行传送。
应该理解所谓的并行和串行,仅是指I/O接口与I/O设备之间数据交换(通信)是并行或串行。
无论怎样CPU与I/O接口之间数据交换总是并行。
二者比较:串行通信的速度慢,但使用的传输设备成本低,可利用现有的通信手段和通信设备,适合于计算机的远程通信;并行通信的速度快,但使用的传输设备成本高,适合于近距离的数据传送。
2.异步串行方式的特点和字符格式(1)异步串行方式的特点所谓异步通信,是指数据传送以字符为单位,字符与字符间的传送是完全异步的,位与位之间的传送基本上是同步的。
异步串行通信的特点可以概括为:①以字符为单位传送信息。
②相邻两字符间的间隔是任意长。
③接收时钟和发送时钟只要相近就可以。
异步方式特点简单的说就是:字符间异步,字符内部各位同步。
(2)异步串行方式的数据格式(字符格式)异步串行通信的数据格式如图1所示,每个字符(每帧信息)由4个部分组成:①1位起始位,规定为低电0;②5~8位数据位,即要传送的有效信息;③1位奇偶校验位;④1~2位停止位,规定为高电平1。
图1 异步串行数据格式3.同步串行方式的特点和数据格式(1)同步串行方式的特点所谓同步通信,是指数据传送是以数据块(一组字符)为单位,字符与字符之间、字符内部的位与位之间都同步。
同步串行通信的特点可以概括为:①以数据块为单位传送信息。
②在一个数据块(信息帧)内,字符与字符间无间隔。
③接收时钟与发送进钟严格同步。
(2)同步、串行方式的数据格式同步串行通信的数据格式如图2所示,每个数据块(信息帧)由3个部分组成:①2个同步字符作为一个数据块(信息帧)的起始标志;②n个连续传送的数据③2个字节循环冗余校验码(CRC)图2 同步串行数据格式4.波特率、波特率因子与位周期波特率——是指单位时间传输二进制数据的位数,其单位为位/秒(B/S)或波特。
简述单片机串行通信的波特率摘要:一、单片机串行通信的基本概念二、波特率的定义及意义三、波特率的计算方法四、波特率与通信距离、数据速率的关系五、如何选择合适的波特率六、结论正文:一、单片机串行通信的基本概念单片机串行通信是指单片机通过串行接口与其他设备进行数据传输的过程。
在这个过程中,数据是一位一位地按照一定的时间间隔依次传输,从而实现数据的远程传输和控制。
串行通信在电子设备、计算机网络等领域有着广泛的应用。
二、波特率的定义及意义波特率(Baud Rate)是衡量串行通信数据传输速率的重要指标,它表示每秒钟传输的比特数。
波特率越高,数据传输速率越快。
在实际应用中,波特率决定了通信的稳定性和可靠性,因此选择合适的波特率至关重要。
三、波特率的计算方法波特率的计算公式为:波特率= 数据速率/ 传输位数。
其中,数据速率指的是单位时间内传输的比特数,传输位数指的是每个数据帧中数据的位数。
四、波特率与通信距离、数据速率的关系波特率与通信距离和数据速率之间存在一定的关系。
通信距离较远时,信号衰减较大,可能导致数据传输错误,此时应降低波特率以提高通信的可靠性。
而数据速率较高时,传输时间较短,可以适当提高波特率以提高传输效率。
五、如何选择合适的波特率选择波特率时,应综合考虑通信距离、数据速率、传输可靠性等因素。
在保证通信可靠性的前提下,尽量选择较高的波特率以提高传输效率。
此外,还需注意波特率与通信协议的兼容性,确保不同设备之间的顺畅通信。
六、结论单片机串行通信的波特率是衡量数据传输速率的重要指标,选择合适的波特率对保证通信的稳定性和可靠性具有重要意义。
串行通讯的基本概念:与外界的信息交换称为通讯。
基本的通讯方式有并行通讯和串行通讯两种。
一条信息的各位数据被同时传送的通讯方式称为并行通讯。
并行通讯的特点是:各数据位同时传送,传送速度快、效率高,但有多少数据位就需多少根数据线,因此传送成本高,且只适用于近距离(相距数米)的通讯。
一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。
串行通讯的特点是:数据位传送,传按位顺序进行,最少只需一根传输线即可完成,成本低但送速度慢。
串行通讯的距离可以从几米到几千米。
根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种。
信息只能单向传送为单工;信息能双向传送但不能同时双向传送称为半双工;信息能够同时双向传送则称为全双工。
串行通讯又分为异步通讯和同步通讯两种方式。
在单片机中,主要使用异步通讯方式。
MCS_51单片机有一个全双工串行口。
全双工的串行通讯只需要一根输出线和一根输入线。
数据的输出又称发送数据(TXD),数据的输入又称接收数据(RXD)。
串行通讯中主要有两个技术问题,一个是数据传送、另一个是数据转换。
数据传送主要解决传送中的标准、格式及工作方式等问题。
数据转换是指数据的串并行转换。
具体说,在发送端,要把并行数据转换为串行数据;而在接收端,却要把接收到的串行数据转换为并行数据。
单工、半双工和全双工的定义如果在通信过程的任意时刻,信息只能由一方A传到另一方B,则称为单工。
如果在任意时刻,信息既可由A传到B,又能由B传A,但只能由一个方向上的传输存在,称为半双工传输。
如果在任意时刻,线路上存在A到B和B到A的双向信号传输,则称为全双工。
电话线就是二线全双工信道。
由于采用了回波抵消技术,双向的传输信号不致混淆不清。
双工信道有时也将收、发信道分开,采用分离的线路或频带传输相反方向的信号,如回线传输。
--------> <--------> -------->A---------B A----------B A---------B<--------单工半双工全双工串口通讯—全双工和半双工方式在串行通信中,数据通常是在两个站(如终端和微机)之间进行传送,按照数据流的方向可分成三种基本的传送方式:全双工、半双工、和单工。
串行通信的基本概念
串行通信是指两个功能模块只通过一条或两条数据线进行数据交换。
发送方需要将数据分解成二进制位,一位、一位地分时经过单条数据线传送。
接受方需要一位一位地从单条数据线上接收数据,并且将它们重新组装成一个数据。
串行通信数据线路少,在远距离传送时比并行通信的造价低。
但是一个数据只有经过若干次以后才可以传送完,速度较慢。
串行通信时,需要解决以下问题:
●双方约定的发送与接受速率(波特率)。
●约定采用的数据格式(贞格式)。
●接受方怎样知道一批数据的开始、结束(贞同步)。
●接受方怎样从数据流中采样每位数据(位同步)。
●接受方怎样判断接收数据的正确性(数据校验),如何处理收发错误。
解决这些问题的方法大体有同步通信与异步通信两种。
(1)异步通信
异步通信以字符为单位传送,为了解决贞同步,每个字符都附加了一些控制信息,由4部分组成一位起始位(低电平)、5——8位数据位、一位奇偶校验位、1——2位停止位(高电平)。
两个字符之间的间隔是任意的,中间可以填充空闲位(高电平)。
只要接受方检测到数据线上出现了由高电平向低电平的跳变,并且低电平能持续一段时间,就表明已经就收到一桢数据的开始。
这时可以按照接受时钟从数据线上采样数据,直到接收到了停止位表明接受完一桢数据。
接收方还可以通过奇偶校验位判断数据传送过程中是否出现错误。
异步传送控制比较简单,对发送与接收时钟要求不很严格,不会造成错误累积,但是由于每个数据在传送时都要附加控制信息,约有20%的冗余,传送效率并不高,为50——9600波特之间。
(2)同步通信
同步通信以数据块为单位进行传颂,为了解决贞同步,在每一批数据流之前,附加同步信息(1——2个同步字符),最后以校验字符结束。
如果在数据传送过程中,发生数据断流(即发送方没有数据可发送)应以同步字符填充。
接收方检测到协议要求的1——2个同步字符后,就可以认为双方已经取得一致,之后就可以在严格的时钟控制下采样数据线接收数据。
当然同步通信可以根据校验字符判断所接收的一批字符是否在传送过程中出现错误。
同步通信的传送速率较高,在1——2个同步字符的带领下,就可以源源不断的发送接收。
但是同步通信对双方的时钟要求很严格,并且容易造成错误累积。
串行通信中的常用术语
(1)传送机制
穿行传送有单工、半双工、全双工三种传送方向。
单工是指发送方与接收方只有一条数据线路,而且这条数据线路永远只能进行余个方向的传输。
半双工是指发送方与接收方也只有一条数据线路,但这条数据线路可以在不同时刻进行两个方向的传输。
全双工是指发送方与接收方有两条数据线路,同一时刻可以利用这两条数据线路进行不同方向的数据传输。
(2)调制与解调
计算机内使用的是数字信号,要求的频带很宽,而一般的通信线路如电话线路的频带只有
300HZ——3400HZ。
为了能通过电话线传送数据,必须要把数字信号变成符合线
路要求的模拟信号,这就是调制。
常用的调制方法有调频、调相、调幅。
而将电话线路上的模拟信号变为计算机可以接受的数字信号就是解调。
(3)传输率
传输率是指每秒传送的二进制位的个数,通常与波特率相同。
但是严格地讲波特率是指每秒传送的离散信号的个数。
二者的概念不尽相同。
当采用调幅方式使二者在数值上相等。
计算机中常用的一些标准波特率系列为:110,150,300,600。
1200。
2400,4800,9600,19200。
通信是根据传送的波特率来确定发送和接收时钟的。
时钟频率和波特率之间的关系为:
时钟频率=N*波特率
这里的N为波特率系数,常为1,16,32,64。
一定的波特率系数可以避免假启动和噪声干扰。
串行通信过程中常见的错误
串行通信中常见的错误有奇偶校验错、溢出错、桢格式错。
奇偶校验错是指:接收方接受到的数据中1的个数与奇偶校验位不符,通常是由噪声干扰引起的,发生这种错误时接收方应该要求发送方重新发送。
溢出错是指接收方与发送方的速率不匹配,接受方没有来得及处理接受来的数据,发送方已经发送来下一个数据,造成数据丢失。
可以通过降低发送方的发送速率或者在接受方设置多机缓冲结构等方法来减少这种错误。
桢格式错是指接收方接阿收的字符格式与协议不符,这种错误多半是由双方协议不明确或噪声干扰引起的。