第四章-串口通信ppt课件_第1页
第四章-串口通信ppt课件_第2页
第四章-串口通信ppt课件_第3页
第四章-串口通信ppt课件_第4页
第四章-串口通信ppt课件_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,1,4、计算机串口通信,课程:计算机控制系统,.,2,课程:计算机控制系统,计算机串口通信,一、串行通信和并行通信,二、同步串行通信和异步串口通信,三、有关串口通信的几个问题,第一节概述,.,3,课程:计算机控制系统,计算机串口通信,二、同步串行通信和异步串口通信,三、有关串口通信的几个问题,一、串行通信和并行通信,第一节概述,.,4,串行通信和并行通信,计算机系统中,计算机之间或计算机与外部设备交换信息称之为通信。,两种通信方式:数据各位同时传送并行通信方式数据各位依次传送串行通信方式,.,5,串行通信和并行通信,串行通信相对于并行通信的优点:线路结构简单抗干扰能力强传送距离远缺点:传送速度慢因此,计算机内部一般并行通信,计算机与外设之间一般串行通信。,.,6,课程:计算机控制系统,监控组态软件及其应用,三、有关串口通信的几个问题,一、串行通信和并行通信,二、同步串行通信和异步串口通信,第一节概述,.,7,同步串行通信和异步串行通信,串行通信分两大类:异步串行通信同步串行通信,.,8,同步串行通信和异步串行通信,1、异步串行通信采用异步通信信息帧传送数据。过程:发送方在数据位传送前,先发送一位低电平的启始位,然后再把数据位依次发送,每位持续T时间,然后发送奇偶校验位,然后发送12位高电平的终止位。在没有数据传送的空闲期间,线路上是高电平,当接收方检测到持续05T以上的低电平则知道检测到启始位,开始采样数据。,.,9,同步串行通信和异步串行通信,2、同步串行通信采用同步通信信息帧传送数据。过程:发送方传送时,首先对被传送的原始数据进行编码,形成编码数据后再往外传送,每位编码元含有数据状态和时钟信息;在接收方经过解码,便可以得到解码数据(称接收数据)和解码时钟(称接收时钟)。所以,接收方无需设置独立的接收时钟源,而由发送端发出的编码自带时钟,实现了收、发双方的自同步功能。,.,10,课程:计算机控制系统,计算机串口通信,二、同步串行通信和异步串口通信,三、有关串口通信的几个问题,一、串行通信和并行通信,第一节概述,.,11,有关串口通信的几个问题,1调制和解调计算机串行输入/输出的信号是一种用“0”“1”表示的数字信号(阶跃信号)进行傅立叶分解含有很多高频成分要求传送线具有宽频带。电话线传送话音信号,频带在3003400Hz。所以,信号失真。,.,12,有关串口通信的几个问题,1调制和解调必须把串行通信波形信号(数字信号“0”“1”)转换成不同频率(或不同振幅、不同相位)的正弦波信号(模拟信号)调制能够完成调制任务的装置调制器,.,13,有关串口通信的几个问题,1调制和解调把正弦波信号(模拟信号)转换成串行通信波形信号(数字信号“0”“1”)解调能够完成调制任务的装置解调器调制器和解调器合在一起形成调制解调器(MODEM),.,14,有关串口通信的几个问题,2单工和双工信息只能沿一个方向传输,而不能反向传输单工。信息可以在两个方向上进行传输,但同一时间内只能作单向传输半双工。信息可以沿两个方向传输全双工。,.,15,有关串口通信的几个问题,3波特率单位时间内所传送的数据位数波特率波特率=位数/单位时间显然:每位传送时间=1/波特率例:假如数据传送的速率是120字符/S每一个字符包含10位则波特率=120*10=1200位/s每位传送时间Td=1/1200s=0.833ms,.,16,有关串口通信的几个问题,4硬件握手和软件握手通信设备之间的联络(也称之为“握手”)(1)硬件握手硬件握手是利用RTS、CTS、DTR、DSR这4个信号线进行的。,.,17,有关串口通信的几个问题,RTS请求发送信号CTS允许发送信号DTR数据终端准备好(接收设备)DSR数据装置准备好(发送设备),.,18,有关串口通信的几个问题,PC机modem远方数据端,发送准备好,RTS,CTS,发送ready,发送,RTS-CTS这对握手信号沟通后,可以进行串口数据发送。,.,19,有关串口通信的几个问题,PC机modem远方数据端,接收准备好,DTR,DSR,接收远方数据,DTR-DSR这对握手信号沟通后,可以进行串口数据接收。,接收ready,.,20,有关串口通信的几个问题,(2)软件握手软件握手是接收方如果来不及进行数据处理,就发出XON信号(即ASCII码13H),要求暂停数据传送;处理完毕后,再发出XOFF信号(即ASCII码11H)要求恢复数据传送。,.,21,课程:计算机控制系统,计算机串口通信,一、串行通信和并行通信,二、同步串行通信和异步串口通信,三、有关串口通信的几个问题,第一节概述,.,22,课程:计算机控制系统,计算机串口通信,二、8251的工作方式,三、8251的控制字,一、8251的引脚,第二节常见的串行接口芯片,四、8251的编程应用,.,23,1、8251的引脚,.,24,1、8251的引脚,DOD7:输入输出,双向数据总线,传送给8251的控制字和从8250读取的状态信息,也通过这些线进行传送。RESET:输入,复位线。RD、WD:输入、读写控制信号线。CS:输入,片选信号线,低电平时,CPU才能对8251进行访问。CD:输入,地址线,“1”CPU向8251中写入控制字或从8251中读取状态信息“0”CPU与8251之间进行数据传送。,.,25,1、8251的引脚,TXDRDY:输出,发送器准备好信号线,通知CPU向8251传送新的一个字符数据。RXDRDY:输出,接受器准备好信号线,通知CPU从8251中读取该字符数据。TXE:输出,发送器空信号线,用以表示现在发送器为空。SYNDET:输入输出,同步检测信号。,.,26,1、8251的引脚,DTR:输出,数据终端准备好信号,通知调制解调器之类的设备,8251已作好了接受准备。DSR:输入,数据装置准备好信号,调制解调器之类的设备对DTR的回应信号,表示自己作好了准备,将要把串行数据传送给8251。RTS:输出,请求发送信号,通知调制解调器之类的设备,8251以作好了发送准备。CTS:输入,允许发送信号,调制解调器之类的设备对RTS的回应信号,表示自己作好了准备,允许8251开始发送串行数据。,.,27,1、8251的引脚,RXD:输入,串行数据输入端。TXD输出,串行数据输出端。CLK:输入,系统时钟输入端。RXC:输入,接收时钟输入端。TXC:输入,发送时钟输入端。,.,28,课程:计算机控制系统,计算机串口通信,二、8251的工作方式,三、8251的控制字,一、8251的引脚,第二节常见的串行接口芯片,四、8251的编程应用,.,29,2、8251的工作方式,(1)同步发送方式。在同步方式下,若要发送一帧数据,首先要发送12个字节的同步字符(该同步字符是对8251进行初始化时,由CPU写入8251中的),然后CPU再依次向8251中写入多个数据字符。如果传送过程中CPU来不及给8251传送新的字符数据,则会自动插入同步字符。,.,30,2、8251的工作方式,(2)同步接收方式。若在同步接受方式下,首先反复不断地搜索同步字符,如果接收到同步字符后就使SYNDET置为高电平,开始一帧数据的接受过程,以后每受到一个字符就使RXRDY置位(CPU读取数据后,RXRDY被清0)。,.,31,2、8251的工作方式,(3)异步发送方式。在异步方式下,如果允许发送,并且CTS位有效的话,则会CPU送来的一个字符数据,按照设定的格式和波特率,加上启始位、终止位、奇偶校验位后,转换成串行信号后发送出去。,.,32,2、8251的工作方式,(4)异步接收方式。在异步方式下,如果允许接收,将不断检测RXD引脚,在没有数据传送的时候,RXD引脚一直是高电平。当发现RXD变成低电平,就可能是收到了启始位,如果该低电平持续时间大于半个数据位宽度,就可以认为确实是收到了启始位,否则认为是收到的噪声信号。收到启始位后,将开始一次异步串行数据的接收过程,接收完毕后,使RXRDY置位。,.,33,课程:计算机控制系统,计算机串口通信,二、8251的工作方式,三、8251的控制字,一、8251的引脚,第二节常见的串行接口芯片,四、8251的编程应用,.,34,3、8251的控制字,必须进行初始化编程,也就是向8251写入工作方式控制字和命令字。,.,35,(1)工作方式控制字,.,36,(1)工作方式控制字,例如:要求8251工作在异步方式下,波特率因子是16,数据位8位,奇校验,1位终止位,则工作方式控制字应该是,11011110B,例如:8251的工作方式控制字是00001000B,则表示8251工作在,内同步方式下,两个同步字符,数据位是7位,无奇偶校验位,.,37,(2)命令字,.,38,(2)命令字,DO:发送允许(TXEN)D0=1允许发送、D0-0不许发送;D1:数据终端准备好(DTR),D11则DTR引脚发出低电平信号:D2:发送允许(RXE),D2=l允许接收、D2=0不许接收;D3:发送终止字符(SBRK),正常为0,要发出终止信号(长时间的低电平信号)该位设为1,.,39,(2)命令字,D4:错误标志复位(ER),D5:请求发送(RTS),D5=l则8251的RTS引脚低电平;D6:内部复位(IR),D6=1使8251返回到方式控制字格式;D7:外部搜索方式(EH),该位设为1,则启动搜索同步字符。,.,40,(3)状态字,.,41,(3)状态字,DO是TxRDY发送准备好,D1是RxRDY接收准备好,D2是TxE发送器空,D3、D4、D5分别是PE奇偶错、OE溢出错、FE帧错,D6是SYSNDET同步检测,D7是DSR数据设备准备好。,.,42,(3)状态字,注意:TxRDY位与TxRDY引脚的含义有区别:只要发送缓冲器空,TxRDY位就置位:而TxRDY引脚置位需要发送缓冲器空、TxE=1、CTS=0三个条件。其他的标志位与同名引脚的意义相同,.,43,课程:计算机控制系统,计算机串口通信,二、8251的工作方式,三、8251的控制字,一、8251的引脚,第二节常见的串行接口芯片,四、8251的编程应用,.,44,8251的编程应用,例如:8031单片机接一个8251芯片,8251占用的端口地址是2000H和2001H。要求把内部RAM的40H4FH单元的内容,用8251进行串行数据发送,并且8251进行自发自收,把接收的数据放入内部RAM的50H5FH单元中(8251RxRDY和TxRDY接到一个或非门的输入端,或非门的输出端已接到8031的INT0引脚上),异步串行通信的格式是8位数据位、一位终止位、一位奇校验位、波特率因子为16.,.,45,8251的编程应用,ORG0000HSJMPMAINORG0003HAJMPINT0ORG0030HMAIN:MOVSP,#5FH;重新设置SPMOVIE,#81H;允许INT0中断MOVR0,#40H;设置发送数据的指针MOVR1,#50H;设置接收数据的指针SETBIT0;设置INT0为负跳变触发MOVA,#01011110BMOVDPTR,#2001H,.,46,8251的编程应用,MOVXDPTR,A;设置串行通信的基本格式MOVA,#00110111BMOVXDPTR,A;写8251的命令字,允许发送、接收;发出DTR、RTS信号,错误标志复位MOVA,R0MOVDPTR,#2000HMOVXDPTR,A;首先发送内部RAM的40H单元的内容INCR0SJMP$;等待中断INT0:MOVDPTR,#2001HMOVXA,DPTR;首先检查8251的状态字RRCA;右移一位,TxRDY移入Cy中MOVB,AJNCK1;如果不是发送中断则跳转,.,47,8251的编程应用,CJNER0,#50H,K1;?;判断是否发完了。MOVDPTR,#2000HMOVA,R0MOVXDPTR,A;发送数据INCR0,MOVA,R0CLRCSUBBA,#50HJZK1,.,48,8251的编程应用,CJNER0,#50H,K1;?;判断是否发完了。MOVA,R0CLRCSUBBA,#50HJZK1MOVDPTR,#2000HMOVA,R0MOVXDPTR,A;发送数据INCR0,.,49,8251的编程应用,K1:MOVA,BRRCA;再次右移一位RxRDY移入Cy中;JNCK2MOVDPTR,#2000HMOVXA,DPTRMOVR1,A;接收数据并放入内部RAM中INCR1K2:RETI;中断返回,.,50,课程:计算机控制系统,计算机串口通信,二、常用的RS232C电平转换电路,一、RS232C的引脚功能,第三节RS232串行通信接口,.,51,RS-232,是连接数据通信设备(DCE)与数据终端设备(DTE)之间的串行通信标准总线。,.,52,RS-232,.,53,1、RS-232的引脚功能,标准的接口有25条线,常用的只有9个,一般计算机用9芯的型插座。,(1)数据线引脚2脚(TXD):主信道数据发送端。引脚3脚(RXD):主信道数据接收端。引脚7脚(SGND):数据地。引脚14脚:辅信道数据发送端。引脚15脚:辅信道数据接收端。,.,54,1、RS-232的引脚功能,(2)状态和控制线引脚4脚(RTS):请求发送。引脚5脚(CTS):允许发送。引脚20脚(DTR):数据终端准备好。引脚6脚(DSR):DCE收到DTR,回应。引脚22脚(R1):DCE收到电话线路的振铃信号,则向DTE发出该信号。引脚8脚(CD):DCE收到电话线路的载波信号,则向DTE发出该信号。引脚21脚(SD):DCE收到的信号误码率很高,则向DTE发出该信号。,.,55,1、RS-232的引脚功能,(3)定时信号线定时信号线都是方波信号,用来支持同步串行通信。引脚15脚:发送信号元定时(DCE发出的)。引脚24脚:发送信号元定时(DTE发出的)。引脚17脚:接收信号元定时(DCE发出,DTE接收)。,.,56,1、RS-232的引脚功能,(4)其他信号线引脚1脚(PGND):保护地,通常该引脚与机壳相连。引脚23脚:数据速率选择,用来在双速同步设备中,选择其中的一个速率。,.,57,课程:计算机控制系统,计算机串口通信,二、常用的RS232C电平转换电路,一、RS232C的引脚功能,第三节RS232串行通信接口,.,58,2、常用的RS-232电平转换电路,在RS-232C接口电路中规定:-3V-15V为“1”、+3V一15V为“0”,与TTL的电平信号的规定是不同的,需要使用电平转换电路,进行两种电平信号的转换。,常用的电平转换电路是MCl488和MCl489,MCl488用于把TTL电平转换成RS-232C电平,MCl489用于把RS-232C电平转换成TTL电平。,.,59,课程:计算机控制系统,计算机串口通信,二、RS422A接口,三、RS485接口,一、RS-423A接口,第四节其他常用串行通信接口,.,60,1、RS-423A接口,为了克服RS-232C接口抗干扰能力差的不足,RS-423A接口采用了:单端发送、双端接收的传送方式.RS-423A接口规定:信号“1”是+4V+6V,信号“0”是-4V-6V。一条线

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论