电力系统远动第5讲_串口通信技术.pdf
《电力系统远动第5讲_串口通信技术.pdf》由会员分享,可在线阅读,更多相关《电力系统远动第5讲_串口通信技术.pdf(64页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.了解串行通信的基本原理了解串行通信的基本原理2.了解典型串行通信接口原理了解典型串行通信接口原理3.掌握掌握PC机异步串行接口通信方法机异步串行接口通信方法串行通信技术学习要点串行通信技术学习要点2008-3-26一、一、串行通信基础串行通信基础二、二、串行通信接口简介串行通信接口简介三、三、PC机的标准异步串行接口机的标准异步串行接口四、四、利用标准串口进行数据通信利用标准串口进行数据通信串行通信技术主要内容串行通信技术主要内容一、串行通信基础一、串行通信基础1.串行通信的概念串行通信的概念2.信息传输的检错和纠错信息传输的检错和纠错3.串行数据传送方式串行数据传送方式4.波特率波特率5
2、.通信协议通信协议6.异步串行通信和同步串行通信异步串行通信和同步串行通信7.接收接收/发送时钟和波特率因子发送时钟和波特率因子1.串行通信的概念串行通信的概念指数据一位接着一位在一根线路上传输,在传输过程中,每一位数据都占据一个固定的时间长度。指数据一位接着一位在一根线路上传输,在传输过程中,每一位数据都占据一个固定的时间长度。RxDTxD目的源目的源D0 D1D2D3D4D5D6D7Td注意注意:“串行串行”是外设与接口电路之间的数据传送方式,在是外设与接口电路之间的数据传送方式,在CPU与接口之间仍是并行工作方式。与接口之间仍是并行工作方式。串行状态寄存器串行状态寄存器串行控制寄存器串行
3、控制寄存器收收/发时钟发时钟波特率发生器波特率发生器数据数据缓冲器缓冲器控制逻辑控制逻辑地址译码地址译码数据线数据线DB数据发送寄存器数据发送寄存器并行输入并行输入/串行输出串行输出发送移位寄存器发送移位寄存器串行输出串行输出0 1 1 0 0 1 0 165H数据接收寄存器数据接收寄存器接收移位寄存器接收移位寄存器串行输入串行输入/并行输出并行输出串行输入串行输入1 0 1 0 0 1 1 065H控制线控制线CB地址线地址线AB串行通信接口串行通信接口D0 D1D2 D3D4D5D6D7D7 D6D5 D4D3D2D1D02.信息传输的检错和纠错信息传输的检错和纠错?串行数据在传输过程中,
4、由于干扰可能引起信息的出错如何发现传输中的错误,叫串行数据在传输过程中,由于干扰可能引起信息的出错如何发现传输中的错误,叫检错检错发现错误后,如何消除错误,叫发现错误后,如何消除错误,叫纠错?纠错?最简单的检错方法是奇偶校验,即在传送字符的各位之外,再传送最简单的检错方法是奇偶校验,即在传送字符的各位之外,再传送1位奇位奇/偶校验位。可采用奇校验或偶校验。偶校验位。可采用奇校验或偶校验。奇校验奇校验:使所有传送的数位:使所有传送的数位(含校验位含校验位)中中1的个数为奇数的个数为奇数偶校验偶校验:使所有传送的数位:使所有传送的数位(含校验位含校验位)中中1的个数为偶数的个数为偶数?奇偶校验能够
5、检测出奇偶校验能够检测出1位误码,但是不能纠错。位误码,但是不能纠错。按照数据流的方向,分成三中基本的传送方式:按照数据流的方向,分成三中基本的传送方式:单工方式全双工方式半双工方式单工方式全双工方式半双工方式3.串行数据传送方式串行数据传送方式单工方式单工方式只允许数据按照一个固定的方向传送只允许数据按照一个固定的方向传送.发送器发送器接收器接收器ABA方只能发送,称方只能发送,称发送器发送器B方只能接收,称方只能接收,称接收器接收器全双工方式全双工方式允许通讯双方同时进行发送和接收操作允许通讯双方同时进行发送和接收操作发送器发送器发送器发送器AB接收器接收器接收器接收器相当于把两个方向相反
6、的单工方式组合在一起,需要两条传输线。全双工方式主要应用于实时性较强的交互式应用中,如计算机之间的通信等。相当于把两个方向相反的单工方式组合在一起,需要两条传输线。全双工方式主要应用于实时性较强的交互式应用中,如计算机之间的通信等。半双工方式半双工方式数据能从数据能从A方传送到方传送到B方,也能从方,也能从B方传送到方传送到A方方,但是不能同时在两个方向上传送,每次只能由一方发送,另一方接收。但是不能同时在两个方向上传送,每次只能由一方发送,另一方接收。发送器发送器接收器接收器AB接收器接收器发送器发送器通信双方通过软件控制的电子开关,进行方向的切换,轮流地进行发送和接收。一些简单的外部设备如
7、键盘与主机的通信采用半双工方式通信双方通过软件控制的电子开关,进行方向的切换,轮流地进行发送和接收。一些简单的外部设备如键盘与主机的通信采用半双工方式.4.波特率波特率(Baudrate)并行通信中并行通信中,传输速率是以每秒多少字节传输速率是以每秒多少字节(B/s)表示。表示。串行通信中,衡量数据传输速率的单位是波特率串行通信中,衡量数据传输速率的单位是波特率,即每秒传送的二进制数据的位数,以位即每秒传送的二进制数据的位数,以位/秒秒(bps)表示。有时也用表示。有时也用“位周期位周期”Td表示传输速率,波特率是位周期的倒数。标准的波特率系列有:表示传输速率,波特率是位周期的倒数。标准的波特
8、率系列有:110、300、600、1200、1800、2400、4800、9600和和19200等等.D0 D1D2D3D4D5D6D7Td波特率波特率=1/Td5.通信协议通信协议要想保证通信成功,通信双方必须有一系列的约定,如:作为发送方,必须知道什么时候可以发送信息,对方是否收到,收到的内容有没有错,要不要重发、怎么通知对方结束等作为接收方,必须知道对方是否发送信息、发的是什么、收到的信息是否有错、如果有错怎么通知对方、怎么判断结束等。要想保证通信成功,通信双方必须有一系列的约定,如:作为发送方,必须知道什么时候可以发送信息,对方是否收到,收到的内容有没有错,要不要重发、怎么通知对方结束
9、等作为接收方,必须知道对方是否发送信息、发的是什么、收到的信息是否有错、如果有错怎么通知对方、怎么判断结束等。通信协议就是通信双方为了保证通信正确,事先对数据传送控制规定的必须共同遵守的一种约定,包括对数据格式、同步方式、传送速率、传送步骤、检纠错方式以及控制字符定义等问题做出的统一规定。通信协议就是通信双方为了保证通信正确,事先对数据传送控制规定的必须共同遵守的一种约定,包括对数据格式、同步方式、传送速率、传送步骤、检纠错方式以及控制字符定义等问题做出的统一规定。6.串行通信基本方式串行通信基本方式根据对数据流的分界、定时和同步方式的不同,串行通信的基本方式可以分为两种类型:根据对数据流的分
10、界、定时和同步方式的不同,串行通信的基本方式可以分为两种类型:异步串行通信同步串行通信异步串行通信同步串行通信异步串行通信异步串行通信数据是一帧数据是一帧(Frame)一帧传送,每一帧包含起始位、数据位、校验位、停止位,帧与帧之间可有任意个一帧传送,每一帧包含起始位、数据位、校验位、停止位,帧与帧之间可有任意个空闲位空闲位。起始位起始位B逻辑逻辑01位数据位位数据位D 逻辑逻辑0或或15位位8位校验位位校验位P逻辑逻辑0或或11位或无停止位位或无停止位S逻辑逻辑11位或位或2位空闲位逻辑位空闲位逻辑1任意数量任意数量异步串行数据格式为:异步串行数据格式为:一帧数据位一帧数据位LSBMSB空闲位
11、空闲位空闲位空闲位BDPS起始位数据位校验位停止位起始位数据位校验位停止位例例传送传送8位数据位数据65H(01100101B),奇校验,奇校验,1个停止位,信号线上的波形为:个停止位,信号线上的波形为:PS空闲位空闲位D0 D1 D2 D3 D4 D5 D6 D7空闲位空闲位B一帧一帧BDPS起始位数据位校验位停止位起始位数据位校验位停止位RxDTxDGNDGND异步串行通信特点异步串行通信特点?异步串行通信以帧为信息单位传送,异步串行通信以帧为信息单位传送,1帧包含帧包含1个字符个字符?在数据格式中设置起始位和停止位来协调在数据格式中设置起始位和停止位来协调“同步同步”?异步串行通信的异步
12、串行通信的“异步异步”,指字符与字符之间通信没有严格的定时要求,每个字符作为一个独立的单位,可以随机出现在数据流中,即每个字符在数据流中出现的时间是任意的,指字符与字符之间通信没有严格的定时要求,每个字符作为一个独立的单位,可以随机出现在数据流中,即每个字符在数据流中出现的时间是任意的?位与位之间有严格的定时一旦传送开始,收位与位之间有严格的定时一旦传送开始,收/发双方则按预先约定的传输速率,在时钟的作用下,传送字符中的 每发双方则按预先约定的传输速率,在时钟的作用下,传送字符中的 每1位位?异步串行通信适合于发送数据不连续、传送数据量较少,或对传输率要求不高的场合。异步串行通信适合于发送数据
13、不连续、传送数据量较少,或对传输率要求不高的场合。字符字符1字符字符2字符字符3字符字符n数据块的传输数据块的传输同步串行通信同步串行通信同步串行通信是帧为单位传送,每帧包含同步串行通信是帧为单位传送,每帧包含1个数据块,每个数据块内可包含成百上千个字符,每个字符取相同的位数,字符之间可以是连续的,没有起始位和停止位。在数据块的前面一般设置有个数据块,每个数据块内可包含成百上千个字符,每个字符取相同的位数,字符之间可以是连续的,没有起始位和停止位。在数据块的前面一般设置有1个或个或2个同步字符,作为帧的边界和通知对方接收的标志,尾部是校验字符,用于校验数据传输的差错。个同步字符,作为帧的边界和
14、通知对方接收的标志,尾部是校验字符,用于校验数据传输的差错。同步字符 字符同步字符 字符1 字符字符2 字符字符n 校验字符校验字符数据块数据块(可以是任意长度)可以是任意长度)同步串行通信数据格式同步串行通信数据格式1帧帧同步串行通信特点同步串行通信特点?字符与字符之间和字符内部位与位之间都是同步传送,对时钟要求非常严格字符与字符之间和字符内部位与位之间都是同步传送,对时钟要求非常严格.?收收/发两端必须使用同一时钟来控制数据块的传输,即使用同一时钟来触发双方移位寄存器的移位操作。发两端必须使用同一时钟来控制数据块的传输,即使用同一时钟来触发双方移位寄存器的移位操作。?在近距离通信时可以在传
15、输线上增加一根时钟信号线,在远距离通信时可以通过调制在近距离通信时可以在传输线上增加一根时钟信号线,在远距离通信时可以通过调制/解调器,在数据流中发送解调器,在数据流中发送/提取同步信号,使发送和接收方得到完全相同的时钟信号。提取同步信号,使发送和接收方得到完全相同的时钟信号。RxDTxDCLKCLKTxDRxD时钟信号时钟信号?同步串行通信适用于要求快速、大量数据传送的场合同步串行通信适用于要求快速、大量数据传送的场合。7.接收接收/发送时钟和波特率因子发送时钟和波特率因子接收接收/发送时钟发送时钟在串行通信中,无论发送或接收,都必须有时钟脉冲信号对传送的数据进行在串行通信中,无论发送或接收
16、,都必须有时钟脉冲信号对传送的数据进行同步同步和和定位定位控制,这就需要有接收控制,这就需要有接收/发送时钟。发送时钟。同步同步,就是,就是确认通信什么时候开始定位确认通信什么时候开始定位,就是,就是确认每确认每1个的数据位个的数据位为了提高串行通信的抗干扰能力,往往用多个时钟调制为了提高串行通信的抗干扰能力,往往用多个时钟调制1个二进制数据,个二进制数据,调制调制1个二进制数据所用的收个二进制数据所用的收/发时钟个数称为波特率因子发时钟个数称为波特率因子,用,用n表示波特率因子,则:收表示波特率因子,则:收/发时钟频率发时钟频率=波特率 波特率因子波特率 波特率因子n例如例如波特率因子为波特
17、率因子为16,则,则16个时钟脉冲移位个时钟脉冲移位1次次波特率因子波特率因子通过这种方法,不仅能够通过这种方法,不仅能够排除接收线上的噪声干扰排除接收线上的噪声干扰,识别假起始位,而且能够相当精确地,识别假起始位,而且能够相当精确地确定起始位的中间点确定起始位的中间点,从而,从而提供一个准确的时间基准提供一个准确的时间基准,从这个基准算起,每个,从这个基准算起,每个16个个Tc采样一次数据线,作为输入数据。当采样一次数据线,作为输入数据。当n=16时,接收器以时,接收器以数据波特率数据波特率16倍的时钟倍的时钟对所接收的数据对所接收的数据进行检测进行检测:首先正确地检测到起始位首先正确地检测
18、到起始位,然后逐位确定各个数据位然后逐位确定各个数据位。具体过程如下:接收器在每个接收时钟的上升沿采样接收数据线,当发现接收数据线出现低电平时,就认为是起始位的开始,若在连续的具体过程如下:接收器在每个接收时钟的上升沿采样接收数据线,当发现接收数据线出现低电平时,就认为是起始位的开始,若在连续的8个时钟周期内检测到接收数据线仍保持低电平,则确认它为起始位,而不是干扰信号。个时钟周期内检测到接收数据线仍保持低电平,则确认它为起始位,而不是干扰信号。Td=16Tc接收数据位接收数据位10 0 0 0 0 0 0 0接收时钟接收时钟Tc起始位的确定起始位的确定接收数据接收数据接收时钟接收时钟1 0
19、1 0 0 1 1 数据位的采样数据位的采样一、一、串行通信基础串行通信基础二、二、串行通信接口简介串行通信接口简介三、三、PC机的标准异步串行接口机的标准异步串行接口四、四、利用标准串口进行数据通信利用标准串口进行数据通信串行通信技术主要内容串行通信技术主要内容二、串行通信接口简介二、串行通信接口简介1.串行通信接口典型结构图串行通信接口典型结构图2.串行通信有关寄存器串行通信有关寄存器3.串行发送数据过程串行发送数据过程4.串行接收数据过程串行接收数据过程1.串行通信接口典型结构图串行通信接口典型结构图串行状态寄存器串行状态寄存器串行控制寄存器串行控制寄存器收收/发时钟发时钟波特率发生器波
20、特率发生器数据数据缓冲器缓冲器控制逻辑控制逻辑地址译码地址译码数据线数据线DB数据发送寄存器数据发送寄存器并行输入并行输入/串行输出串行输出发送移位寄存器发送移位寄存器串行输出串行输出0 1 1 0 0 1 0 165H数据接收寄存器数据接收寄存器接收移位寄存器接收移位寄存器串行输入串行输入/并行输出并行输出串行输入串行输入1 0 1 0 0 1 1 065H控制线控制线CB地址线地址线ABD0 D1D2 D3D4D5D6D7D7 D6D5 D4D3D2D1D0例 异步通信接口例 异步通信接口INS8250结构图结构图发送移位发送移位R数据发送数据发送R数据缓冲数据缓冲寻址及逻辑控制寻址及逻辑
21、控制CS0CS1CS2A2A1A0ADSDISTRSOSTRDDISMRD7D0接收移位接收移位R数据接收数据接收R线路控制线路控制R线路状态线路状态R中断允许中断允许R中断识别中断识别RMODEM控制控制RMODEM状态状态R除数高位除数高位R除数低位除数低位R波特率发生器波特率发生器BCLKXTAL1XTAL2控制逻辑控制逻辑控制逻辑控制逻辑INTRPTRTSCTSDRTDSRRLSDRIOUT1OUT2内部数据总线内部数据总线SoutSin2.串行通信有关寄存器串行通信有关寄存器?发送数据寄存器发送数据寄存器?发送移位寄存器发送移位寄存器?接收移位寄存器接收移位寄存器?接收数据寄存器接收
22、数据寄存器?串行控制寄存器串行控制寄存器?串行状态寄存器串行状态寄存器发送数据寄存器发送数据寄存器用于存放要发送的并行数据用于存放要发送的并行数据,如检测到发送移位寄存器为空如检测到发送移位寄存器为空,自动将保存的数据传送到发送移位寄存器自动将保存的数据传送到发送移位寄存器.发送移位寄存器发送移位寄存器(并行输入并行输入/串行输出串行输出)用于将并行数据转换成串行数据,并通过串行输出管脚发送数据用于将并行数据转换成串行数据,并通过串行输出管脚发送数据.CPU不能直接对发送移位寄存器存取操作不能直接对发送移位寄存器存取操作.数据发送寄存器数据发送寄存器并行输入并行输入/串行输出串行输出发送移位寄
23、存器发送移位寄存器D7 D6D5 D4 D3D2D1 D0串行输出串行输出1 0 1 0 0 1 1 0A6HA6H接收移位寄存器接收移位寄存器(串行输入串行输入/并行输出并行输出)用于接收从串行输入管脚传入的数据,并转换成并行数据用于接收从串行输入管脚传入的数据,并转换成并行数据.当接收到当接收到1字符的串行数据,就自动传送给接收数据寄存器字符的串行数据,就自动传送给接收数据寄存器.CPU不能直接对接收移位寄存器存取操作不能直接对接收移位寄存器存取操作.接收数据寄存器接收数据寄存器用于存放由接收移位寄存器传送来的数据用于存放由接收移位寄存器传送来的数据,CPU通过对接收数据寄存器进行读操作,
24、获取传入的数据通过对接收数据寄存器进行读操作,获取传入的数据.接收数据寄存器接收数据寄存器接收移位寄存器接收移位寄存器串行输入串行输入/并行输出并行输出D0 D1D2 D3 D4D5D6 D7串行输入串行输入0 1 1 0 0 1 0 1A6HA6H串行控制寄存器串行控制寄存器设置串行通信的数据格式,包括波特率、停止位长度、数据位长度、奇偶校验方式的设置设置串行通信的数据格式,包括波特率、停止位长度、数据位长度、奇偶校验方式的设置异步串行数据格式为:异步串行数据格式为:一帧数据位一帧数据位LSBMSB空闲位空闲位空闲位空闲位BDPS起始位数据位校验位停止位起始位数据位校验位停止位?D7D5:波
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电力系统 远动第 串口 通信 技术
限制150内