51单片机基础与实例进阶-06.doc

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
51单片机基础与实例进阶-06

单片机串行通信系统设计 单片机的数据传送有并行数据传送和串行数据传送两种方式。并行数据传送的特点是各数据位同时传送,速度快、效率高、成本高。单片机内部的数据传送都是并行的。串行数据传送的特点是数据传送按位顺序进行,传输线条数极少、成本低、速度慢。单片机与外界的数据传送大多数是串行的,其传送的距离可以从几米到几千千米。本章将介绍串行通信的基本概念、串行通信接口电路、STC89C51单片机的串行口结构、原理和应用。 串行通信基本原理 通常把单片机与外界的数据传送称为通信,因此提到的通信就是指串行通信,串行通信又分为异步和同步两种方式。在单片机中使用的串行通信都是异步方式,因此本章重点介绍异步通信。 异步串行通信的字符格式 异步串行通信(Asynchronous Data Communication)以为单位传输,遵循起止式异步通信协议(Protocol)。 图6-1 异步串行通信的字符格式 异步串行通信的字符格式为: 1)起始位。发送器是通过发送起始位而开始一个字符的传送,当发送设备要发送一个字符数据时,首先发出一个逻辑“0”信号,这个逻辑低电平就是起始位当接收设备收到起始位后,紧接着就会收到数据位。数据位的个数可以是5,6,7或8位的数据。在字符数据传送过程中,数据位从最低位开始传输。数据发送完之后,可以发送奇偶校验位。奇偶校验位用于有限差 错检测,在奇偶位或数据位之后发送的是停止位,可以是1位、位或2位。停止位是一个字符数据的结束标志。数据通信的传输方式常用于数据通信的传输方式有单工、半双工、全双工和多工方式。单工方式:数据仅按一个固定方向传送。因而这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。半双工方式:数据可实现双向传送,但不能同时进行,实际的应用采用某种协议实现收/发开关转换。全双工方式:允许双方同时进行数据双向传送,但一般方式的线路和设备较复杂。多工方式:以上三种传输方式都是用同一线路传输一种频率信号,为了充分地利用线路资源,可通过使用多路复用器或多路集线器,采用频分、时分或码分复用技术,即可实现在同一线路上资源共享功能,之为多工传输方式。通用异步接收/发送装置SBUF是串行口缓冲寄存器,发送SBUF和接收SBUF地址同为99H,但由于发送SBUF不能接收数据, SBUF也不具有发送功能,故二者工作互不干扰。当CPU向SBUF写入时,数据进入发送SBUF,同时启动串行发送;CPU读SBUF时,实际上是读接收SBUF数据。 图6-2 STC89C51串行口寄存器结构 串行通信控制寄存器SCON 与串行通信有关的控制寄存器主要是SCON。SCON是STC89C51的一个可位寻址的专用寄存器,用于串行数据通信的控制。SCON的单元地址98H,位地址(由低位到高位)分别为98H—9FH。寄存器内容及位地址如下: SCON D7 D6 D5 D4 D3 D2 D1 D0 位地址 9FH 9EH 9DH 9CH 9BH 9AH 99H 98H 位符号 SM0 SM1 SM2 REN TB8 RB8 TI RI 各位功能如表6-1所示。 表6-1 SCON寄存器各位功能 位符号 功 能 说 明 SM0,SM1 SM0,SM1 SM0 SM1 工作方式 功 能 0 0 0 8位数据传送,fosc/12。(fosc为主机频率) 0 1 1 10位数据传送, 1 0 2 11位数据传送,波特率固定,为fosc/64或fosc/32。 1 1 3 11位数据传送,SM2──多机通信控制位: 串行口以方式2或方式3接收时,如SM2=1,则只有当接收到的第9位数据(RB8)1,才将接收到的前8位数据送入接收SBUF,RI位置1,产生中断请求信号;否则将接收到的前8位数据丢弃。而当SM2=0时,则不论第九位数据为0还是为1,都将前8位数据装入接收SBUF中,并产生中断请求信号。对方式0,SM2必须为0, 1,SM2=1,RI位置1。 REN REN──允许接收位, REN=0, REN=1, TB8 TB8──发送数据位2和方式3时,TB8是要发送的第9位数据。 RB8 RB8——接收数据第9位2和方式3中,RB8TI TI──发送中断标志: 当方式0时,发送完第8位数据后,该位由硬件置位。在其它方式下,于发送停止位之前由硬件置位。因此TI=1,表示帧发送结束。其状态既可供软件查询使用,也可请求中断。 TI位由软件清0。 RI RI──接收中断标志: 当方式0时,接收完第8位数据后,该位由硬件置1。在其它方式下,当接收到停止位时,该位由硬件置1。因此RI=1,表示帧接收结

文档评论(0)

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

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

1亿VIP精品文档

相关文档