串行通信最终新..doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE PAGE 2 第 4 章 串行通信 串行通信是一种能把二进制数据按位传送的通信。按照串行数据的同步方式,串行通信可以分为同步通信和异步通信。 4.1 异步通信 4.1.1 概述 在异步通信中,数据通常以字符(或字节)为单位组成字符帧传送.字符帧由发送端逐帧发送,通过传输线被接收设备逐帧接收.发送端和接收端可以由各自的时钟来控制数据的发送和接收,互不同步. 在通信中,字符帧格式和波特率是两个重要指标,都可由用户根据实际需要设定. 1、字符帧由以下四部分组成 = 1 \* GB3 ①起始位:位于字符帧开头,只占1位,始终为逻辑0低电平,用于向接收设备表示发送端开始发送一帧信息. = 2 \* GB3 ②数据位:紧跟起始位之后,由用户根据需要可取5位、6位、7位或8位,低位在前高位在后。 = 3 \* GB3 ③奇偶校验位:位于数据位后,仅占一位,用表征串行通信中采用奇校验还是偶校验。 = 4 \* GB3 ④停止位:位于字符帧末尾,为逻辑“1”高电平,通常可取1位,1.5位或者2位,用于表示一帧字符信息已接收完,为下一帧字符作准备。 字符帧之间可以无空闲位,也可以有空位。如下图 异步通信的字符帧格式: 2、波特率是每秒钟传送二进制数码的位数,即比特数,单位是b/s。 4.2 MCS-51的串行接口 4.2.1 MCS-51串行口的结构由以下三部分组成: 1、发送和接收电路 串行口的发送和接收电路如图9-11所示.由图可见,发送电路由“SBUF(发送)”、“零检测器”、和“发送控制器”等电路组成,用于串行口的发送;接收电路由“SBUF(接收)”、“移位寄存器”和“接收控制器”等组成,用于串行口的接收。“SBUF(发送)”和“SBUF(接收)”皆为8位缓冲寄存器,“SBUF(发送)”用于存放将要发送的字符数据;“SBUF(接收)”用于存放串行口接收到的字符。它们共用一个选口地址SBUF(99H),CPU通过执行不同的指令对它们进行存取。 CPU执行MOV A,SBUF指令可以产生“读SBUF”脉冲,把“SBUF(接收)”中接收到的字符通过内部总线传送到累加器A中;执行MOV SBUF,A后累加器中欲发送的字符进入SBUF(发送),发送控制器在发送时钟TXC作用下自动在发送字符前后添加起始位、停止位和其它控制位,然后在SHIFT(移位)脉冲作用下逐位从TXD线上串行发送字符帧。 2、串行口控制寄存器SCON和PCON MCS-51对串行口(字符帧、波特率)的控制是通过SCON和PCON实现的。SCON字节地址为98H。 = 1 \* GB2 ⑴串行口控制寄存器SCON的各个位定义如下: 位地址 9F 9E 9D 9C 9B 9A 99 98 SCON SM0 SM1 SM2 REN TB8 RB8 TI RI 见下表 见下表 多机通信 0:单机对单 1:多机通信 接收控制 0:禁止 1:允许 发送数据第9位 接收数据第9位 发送中断标志 接收中断标志 SM0、SM1:串行口工作方式选择位用于设定串行口工作方式,其定义如下: SM0、SM1 相应工作方式 功能描述 所用波特率 00 方式0 8位移位寄存器 Fosc/12 01 方式1 10位异步收发 由定时器控制 10 方式2 11位异步收发 Fosc/64或osc/32 11 方式3 11位异步收发 可变 其中fosc 为晶振频率 SM2:多机通讯控制位。在方式0时,SM2一定要等于0。在方式1中,当SM2=0则只有接收到有效停止位时,RI才置1,并自动发出串行口中断请求(设中断是开放的)。在方式2或方式3当SM2=0时,串行口以单机发送或接收方式工作,TI和RI以正常方式被激活,但不会引起中断请求;当SM2=1且接收到的第九位数据RB8=1时,RI才置1,并向CPU提出中断请求。 REN:接收允许控制位。由软件置位即SETB REN以允许接收;由软件清0即CLR REN来禁止接收。 TB8:发送数据第9位。在方式2或方式3中,要发送的第9位数据,根据需要由软件置1或清0。例如,可约定作为奇偶校验位,或在多机通讯中作为区别地址帧或数据帧的标志位。 RB8:接收到的数据的第9位。在方式0中不使用RB8。在方式1中,若SM2=0,RB8为接收到的停止位。在方式2或方式3中,RB8为接收到的第9位数据。 TI: 发送中断标志,用于指示一帧信息是否发送完。在方式0中,第8位发送结束时,由硬件置位。在其它方式的发送停止位前,由硬件置位。TI置位既表示一帧信息发送结束,同时也是申请中断,可根据需要,用软件查询的方法获得数据已发送完毕的信息,或用中断的方式来发送下一个数据。TI必须用软件清0。 RI: 接收中断标志位,用于指示一帧信息

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档