第7章串行口14串行口_第1页
第7章串行口14串行口_第2页
第7章串行口14串行口_第3页
第7章串行口14串行口_第4页
第7章串行口14串行口_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

1、 数据通信方式有两种:并行通信与串行通信并行通信: 所传送数据的各位同时发送或接收, 数据有多少位就需要多少根数据线。 特点: “速度快”,成本高,适合近距离传输 如计算机并口,打印机,8255 。 串行通信:所传送数据的各位按顺序一位一位 地发送或接收。 只需一根数据,一根地线,共2 根 (如双向通信发送和接收各需1根数据线。) 特点: 成本低,硬件方便,适合远距离通信, “ 传输速度低 ”。 通信的双方应该有一个约定,什么时候开始发送,什么时候发送完毕;接收方收到的信息是否正确等,这就是通信协议。 异步串行通信一帧数据格式:l 一个起始位 “0”,表示字符的开始,然后是58位数据即该字符的

2、代码,规定低位在前,高位在后,接 下来是奇偶校验位(可省略),最后以停止位“1”表示字符的结束。l优点:硬件结构简单。优点:硬件结构简单。l缺点:传输速度慢。缺点:传输速度慢。P1D0 D1D2 D3 D4 D5 D6 D7P10第第n个字符(一帧)个字符(一帧)n-1n+10D0起起始始位位数据位(数据位(58位)位)校校验验位位停停止止位位二、同步通信二、同步通信 在同步通信中,发送方在数据或字符开始在同步通信中,发送方在数据或字符开始处就用同步字符处就用同步字符(常约定常约定12个字节个字节)指示一帧指示一帧的开始的开始 ,由时钟来实现发送端和接收端同步,由时钟来实现发送端和接收端同步,

3、接收方一旦检测到与规定的同步字符符合,下接收方一旦检测到与规定的同步字符符合,下面面 就连续按顺序传送若干个数据就连续按顺序传送若干个数据 ,最后发,最后发校校验验字节。见下图:字节。见下图:SYN字符字符1SYN字符字符2数据数据1数据数据2.数据数据n连续传送连续传送n 个数据个数据校验校验按通信方向分类:单工、半双工、全双工通信方式按通信方向分类:单工、半双工、全双工通信方式 1 单工方式单工方式: 一端是发送端,另外一端是接收端:一端是发送端,另外一端是接收端: 每端口有一个发送器和一个接收器,通过开每端口有一个发送器和一个接收器,通过开关连接在线路上,数据可以双向传送,但不能同关连接

4、在线路上,数据可以双向传送,但不能同时发送和接收时发送和接收. 要通过换向器转换方向。要通过换向器转换方向。 通信双方用两个独立的收发器单独连接通信双方用两个独立的收发器单独连接,可以可以同时发送和接收数据同时发送和接收数据,因而提高了速度。因而提高了速度。 2.进行串、并转换进行串、并转换 在发送端,接口将在发送端,接口将CPU送来的并行信号转换成串行数送来的并行信号转换成串行数据进行传送;而在接收端,接口要将接据进行传送;而在接收端,接口要将接 收到串行数据收到串行数据变成并行数据送往变成并行数据送往CPU,由,由CPU进行处理。进行处理。3.控制数据的传输速率控制数据的传输速率 接口应具

5、备对数据传输率接口应具备对数据传输率波特率的控制选择能力,波特率的控制选择能力,即具有波特率发生器。即具有波特率发生器。4.进行传送错误检测进行传送错误检测 在发送时,对传送的数据自动生成校验位或校验码,在发送时,对传送的数据自动生成校验位或校验码,在接收端能检查校验位或校验在接收端能检查校验位或校验 码,以确定传送中是否码,以确定传送中是否有误码。有误码。 单位时间内传送的信息量。在计算机中,以每秒传送的二进制位数为单位。例如:100字符/秒,1个字符11位, 波特率为:10011=1100(波特) 平均每位传送占用时间 Td = 1/1100=0.909ms RXD TXD GNDRXDT

6、XDGNDRXDTXDGND电电平平转转换换RXDTXDGNDRXDTXDGND电电平平转转换换RXDTXDGND微机微机微机其微机其他设备他设备较远距离传送电路较远距离传送电路近距离传送电路近距离传送电路微机接口调制解调器调制解调器接口微机电话分机电话分机远距离传送电路远距离传送电路 数字信号通过调制器变成模拟信号通过电话线传数字信号通过调制器变成模拟信号通过电话线传送到对方,接收方通过解调器将模拟信号转换成数字送到对方,接收方通过解调器将模拟信号转换成数字信号接收。信号接收。 测控系统中,计算机通信主要采用异步串行通信方测控系统中,计算机通信主要采用异步串行通信方式,常用的异步总线标准有三

7、种:式,常用的异步总线标准有三种:RS-232(RS-232A RS-232B RS-232C)RS422 RS485 这里重点介绍这里重点介绍RS-232 RS-232C:速率:速率:20Kbit/S, 最大通信距离最大通信距离 : 15m RS422 / RS485 : 10Mbit/s, : 300m 90Kbit/s, :1200m1 2. 抗干扰能力抗干扰能力 采用标准的通信接口,本身具有一定的抗干扰采用标准的通信接口,本身具有一定的抗干扰能力,但是工业现场的情况往往很恶劣,因能力,但是工业现场的情况往往很恶劣,因而要根据具体情况进行选择。而要根据具体情况进行选择。 RS232C:一

8、般场合:一般场合 RS485, RS422: 共模信号比较强共模信号比较强 光纤:光纤: 电磁干扰较强电磁干扰较强 美国电子工业协会(EIA)公布的一种异步通信标准。 RS232C标准是:设备之间通信的距离不大于15米最大传输速率20KB/S采用负逻辑:“1” 5V 15V “0” +5V + 15V不带负载时输出电平:25V +25V输出短路电流: 0.5A最大负载电容: 2500pF 当计算机采用RS232标准时必须通过电平,MAX232 是EIA和TTL电平转换芯片。内部具有电压提升电路,并有两路接收器和发送器。 RXD TXD GNDTXDGND8xx518xx51RXD 51单片机有

9、一个可编程的全双工异串单片机有一个可编程的全双工异串行通信接口,它可作行通信接口,它可作UART用,也可作同用,也可作同步移位寄存器,其帧格式可有步移位寄存器,其帧格式可有8位、位、10位位或或l l位,并能设置各种波特率,给使用者位,并能设置各种波特率,给使用者带来很大的灵活性。带来很大的灵活性。 发送发送SBUF(99H)门门88 图图8.7 串行口结构框图串行口结构框图 RXD(P3.0)TXD(P3.1)中断中断接收接收SBUF(99H)定定时时器器T1fosc2分频器分频器发送控制器发送控制器接收控制器接收控制器串寄串寄行存行存控器控器制制 SCON (98H)输入移位寄存器输入移位

10、寄存器TIRI内内 部部 总总 线线硬件:硬件:引脚引脚RXD(P3.0)串行数据接收端串行数据接收端引脚引脚TXD(P3.l )串行数据发送端串行数据发送端两个物理上独立的接收、发送缓冲器两个物理上独立的接收、发送缓冲器SBUF,它们,它们占用同一地址占用同一地址99H(支持同时发送、接收数据)(支持同时发送、接收数据) 发送缓冲器只能写入,不能读出,发送缓冲器只能写入,不能读出,CPU写写SBUF,一方面修改发送寄存器,同时启动数据,一方面修改发送寄存器,同时启动数据串行发送;串行发送; 接收缓冲器只能读出、不能写入。读接收缓冲器只能读出、不能写入。读SBUF,就,就是读接收寄存器。是读接

11、收寄存器。串行控制寄存器串行控制寄存器SCON 用以存用以存 放串行口的控制和状态信息。放串行口的控制和状态信息。8XX51串行口正是通过对上述专用寄存器的设置、串行口正是通过对上述专用寄存器的设置、检测与读取检测与读取 来管理串行通信的。来管理串行通信的。电源控制寄存器电源控制寄存器PCON最高位最高位SMOD为串行口波特率的倍增控制位。为串行口波特率的倍增控制位。波特率发生器波特率发生器 可以有两种选择:可以有两种选择:1. 定时器定时器T1作波特率发生器,改变计数初值就可作波特率发生器,改变计数初值就可以改变串行通信的速率,称为可变波特率。以改变串行通信的速率,称为可变波特率。2. 以内

12、部时钟的分频器作波特率发生器,因内部以内部时钟的分频器作波特率发生器,因内部时钟频率一定,称为固定波特率时钟频率一定,称为固定波特率shiftMOV A , SBUF串行数据串行数据CPUCPU SBUF SBUFshiftMOV SBUF , A并行数据并行数据甲方(发送)甲方(发送)乙方乙方 (接收)(接收) 发送发送指令指令 MOV SBUF , A 数据并行送入数据并行送入SBUF ,在发送时钟,在发送时钟 shift的控制下由低位的控制下由低位到高位一位一位发送,乙方在接收时钟到高位一位一位发送,乙方在接收时钟 shift 的控制下由的控制下由低位到高位低位到高位 顺序进入移位寄存器

13、顺序进入移位寄存器SBUF ,甲方一帧数据,甲方一帧数据发送完毕,置位发送中断标志发送完毕,置位发送中断标志7.2.2 串行通信的工作原理串行通信的工作原理TI,该位可作为查询标志(或引起中断),该位可作为查询标志(或引起中断),CPU可再发送下一帧数据可再发送下一帧数据 。接收:缓冲器满,置位接收中断标志接收:缓冲器满,置位接收中断标志RI,该位,该位可作为查询标志(或引起接收中断),通过可作为查询标志(或引起接收中断),通过指令:指令:MOV A ,SBUF ;CPU读入数据读入数据由上述可知:由上述可知: 甲、乙方的移位时钟频率应相同,即应具有相甲、乙方的移位时钟频率应相同,即应具有相同

14、的波特率,否则会造成数据丢失。同的波特率,否则会造成数据丢失。1. 发送方是先发数据再查标志,接收方是先查标发送方是先发数据再查标志,接收方是先查标志再收数据。志再收数据。 51单片机串行口是一个可编程接口,对单片机串行口是一个可编程接口,对它的编程只用两个控制字分别写入特殊功能它的编程只用两个控制字分别写入特殊功能寄存器:寄存器: 串行口控制寄存器串行口控制寄存器SCON(98H) 电源控制寄存器电源控制寄存器PCON(97H) 3.CPU通过指令和通过指令和SBUF并行交换数据,并不并行交换数据,并不能控制数据的串行移位,它只能查询标志能控制数据的串行移位,它只能查询标志位来确定数据的移位

15、是否完成。位来确定数据的移位是否完成。7.3 串行口的控制寄存器串行口的控制寄存器 8.3.1 串行口的空制寄存器串行口的空制寄存器SCON 8XX51串行通信的方式选择串行通信的方式选择 ,接受和发送控制及串接受和发送控制及串行口的标志均由专用寄存器行口的标志均由专用寄存器SCON控制和指示控制和指示,其格式其格式如下如下:SM0SM1 SM2RENTB8RB8TIRI方式选择方式选择多机多机控制控制串行接收串行接收允许允许/ 禁止禁止欲发的欲发的第九位第九位收到的收到的第九位第九位发送中发送中断有断有/无无接收中接收中断有断有/无无SM0.SM1:串行口工作方式控制位。串行口工作方式控制位

16、。 0 0-方式方式0, 0 1-方式方式1 1 0-方式方式2, 1 1-方式方式3REN:串行接收允许位。:串行接收允许位。 0-禁止接收禁止接收, 1-允许接收允许接收TB8: 在方式在方式2,3中中,TB8是发送机要发送的第是发送机要发送的第9位数据。位数据。RB8:在方式在方式2,3中中,RB8是接受机收到的第是接受机收到的第9位数据位数据, 该数据来自发送机的该数据来自发送机的TB8。TI: 发送中断标志位。发送前必须用软件清零,发发送中断标志位。发送前必须用软件清零,发 送过程中送过程中TI保持零电平保持零电平,发送完一帧数据后,由发送完一帧数据后,由 硬件置硬件置 “1”,如果

17、再发送,如果再发送,必须用软件再清零。必须用软件再清零。RI: 接收中断标志位。接收前接收中断标志位。接收前,必须用软件清零必须用软件清零,接接 收过程中收过程中RI保持零电平,接收完一帧数据后由保持零电平,接收完一帧数据后由 片内硬件自动置片内硬件自动置“1”。如果再接收必须用软件清。如果再接收必须用软件清 零。零。SM2:多机通信控制位,仅用于方式多机通信控制位,仅用于方式2和方式和方式3。 当选择方式当选择方式2或方式或方式3时时,发送机设置发送机设置SM2=1, 以发送第九位以发送第九位TB8为为1作为地址帧寻找从机作为地址帧寻找从机,以以 TB8为为0作为数据帧进行通信,从机初始化时

18、设作为数据帧进行通信,从机初始化时设 置置SM2=1,若接收到的第九位数据若接收到的第九位数据RB8=0,不置位不置位 RI,即不引起接收中断即不引起接收中断,亦既不接收数据帧亦既不接收数据帧,继续继续 监听监听,如接收到的如接收到的RB8=1,置位置位RI,引起接收中断引起接收中断, 中断程序中判断所接收的地址帧和本机的地址中断程序中判断所接收的地址帧和本机的地址是否符合是否符合,若不符合若不符合,维持维持SM2=1,继续监听继续监听,若符合若符合,则则 清清SM2,接收对放发来的后续信息接收对放发来的后续信息. 综上所述综上所述,SM2的作用为的作用为:在方式在方式2,3中,发送机中,发送

19、机SM2=1(程序设置程序设置). 接收机接收机SM2=1,若若RB8=1,激活激活RI,引起接收中断引起接收中断. RB8=0,不激活不激活RI,不引起接断不引起接断. SM2=0,无论无论RB8=1还是还是RB8=0均激活均激活RI引起引起 接收中断。接收中断。在方式在方式1中中, 当接收时当接收时SM2=1, 则只有收到有效停止位才则只有收到有效停止位才 激活激活RI,在方式,在方式 0 中中, SM2应置为应置为0。 PCON的字节地址为的字节地址为87H,无位地址无位地址, 只能字节只能字节寻址寻址.,初始化时初始化时SMOD=0.SMODXXXXXXXPCON87H7 .3. 2

20、电源控制寄存器电源控制寄存器PCON PCON的格式如下图所示的格式如下图所示,串行通信只用其中串行通信只用其中的最高位的最高位SMODSMOD : 波特率加倍位。在计算串行方式波特率加倍位。在计算串行方式 1、 2、 3 的波特率时,的波特率时, SMOD 0不加倍不加倍; SMOD 1 加倍加倍 根据串行通信数据格式和波特率的不同根据串行通信数据格式和波特率的不同, 51系列单片机的串行通信有四种工作方式系列单片机的串行通信有四种工作方式,通通过编程进行选择过编程进行选择,各工作方式的特点如下各工作方式的特点如下:1.方式方式0 RXD为串行数据的发送端或接收端为串行数据的发送端或接收端, TXD输出频率为输出频率为fosc/12的时钟脉冲。的时钟脉冲。波特率固定为波特率固定为fosc/12 (fosc为单片机晶振频率为单片机晶振频率)方式方式0的数据格式为的数据格式为8位位,低位在前低位在前,高位在后高位在后 移位寄位器方式多用于接口的扩展移位寄位器方式多用于接口的扩展,当用单片当用单片机构成系统时机构成系统时,往往感到并行口不够用往往感到并行口不够用,此时可通过此时可通过外接串入并出移位寄存器扩展输出接口;通过外外接串入并出移位寄存器扩展输出接口;通过外接并入串出移位寄存器扩展输入接口,方式接并入串出移位寄存

温馨提示

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

评论

0/150

提交评论