- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机间双工串行通讯.doc
单片机间双工串行通讯一、内容提要
设有如图1所示的甲、乙两台单片机,以工作方式2,全双工串行通讯,每桢为11位,可程控的第9位数据为奇偶效验用的补偶位,本次课程设计要研究的是如何编写出能实现如下功能的单片机应用程序:
甲机:每发送一桢信息,乙机对接收的数据进行奇偶效验。若补偶正确,则乙机向甲机发出“数据发送正确”的信息(现取00H)作为回答信号),甲机接收到乙机的此信息后再发送下一个字节。若奇偶效验错,则乙机发出“数据发送不正确”的信息(现取FFH作为回答信号)给甲机,要求甲机再次发送原数据,直至数据发送正确。甲机发送128个字节后才停止发送。
乙机:接收甲机发送的数据,并进行奇偶效验,并发出相应的回答信息(即00H或FFH)给甲机,直到接收完128个字节为止。
解:为实现上述功能,甲机及乙机串行通讯的流程如图2所示。
二、目录
1、串行传送的特点
随着多微机系统的应用和微机网络的发展,通信功能显得越来越重要。这里所说的通信是指计算机与外界的信息交换。因此,通信既包括计算机与外部设备之间,也包括计算机和计算机之间的信息交换。由于串行通信所用的传输线少,并且可以借助现存的电话网进行信息传送,因此,特别适合于远距离传送。对于那些与计算机相距不远的人机交换设备和串行存储的外部设备(磁盘等),采用串行方式交换数据也很普遍。在实时控制和管理方面,采用多台微处理机组成分级分布式控制系统,其中各CPU之间的通信一般都是串行方式。所以,串行接口是微机应用系统常用的接口。
串行传送是在一根传输线上一位一位的传送,这根线既做数据线又做联络线,也就是说要在一根传输线上既传送数据信息,又传送联络控制信息,这就是串行方式传送的第一个特点。那么,如何来识别在一根线串行传送的信息流中,哪一部分是联络信号,哪一部分是数据信号。为解决这个问题,就引出了串行通信的数据格式的约定。因此,串行传送的第二个特点是它的数据格式有固定的要求(即固定的数据格式),分异步和同步数据格式,与此相应,就有异步通信和同步通信两种方式。异步通信方式是按字符传送的,而同步通信是按数据块传送的。第三个特点是串行通信中对信号的逻辑定义与TTL不兼容,因此,需要进行逻辑关系和逻辑电平转换。第四个特点是串行传送信息的速率需要控制,要求双方约定通信传输的波特率。
2、串行数据传送方向
在串行通信中,数据通常是在两个站(如终端和微机)之间进行传送,按照数据流的方向可以分成3中基本的传送方式:全双工、半双工和单工。本次课程设计主要研究的是两个8031单片机间的全双工串行通讯。
下面我们来简单了解一下什么是全双工方式。当数据的发送和接收分流,分别由两个不同的传输线传送时,通信双方都能在同一时刻进行发送和接收操作,这样的传送方式就是全双工(Full Duplex)制,在全双工方式下,通信系统的每一端都设置了发送器和接收器,因此,能控制数据同时在两个方向上传送。全双工方式无需进行方向的切换,因此,没有切换操作所产生的时间延迟,这对那些不能有时间延误的交互式应用(例如远程监测和控制系统)十分有利。
3、MCS-51串行接口的组成和特性
MCS-51的串行口是一个全双工的异步串行通信接口,可以同时发送和接收数据。
串行口的内部有数据接收缓冲器和数据发送缓冲器。数据接受缓冲器只能读出不能写入,数据发送缓冲器只能写入不能读出,这两个数据缓冲器都用符号SBUF来表示,地址都是99H。CPU对特殊功能寄存器SBUF执行写操作,就是将数据写入发送缓冲器;对SBUF读操作,即是读出接收缓冲器的内容。
特殊功能寄存器SCON存放串行口的控制和状态信息,串行口用定时器T1或T2(8052等)作为波特率发生器(发送接受时钟),特殊功能寄存器PCON的最高位SMOD为串行口波特率的倍率控制位。
串行口定义为方式2或方式3时,它是一个9位的异步串行通信接口,TXD为数据发送端,RXD为数据接收端。
4、MCS-51串行接口的工作方式
MCS-51串行接口具有四种工作方式,它们是由SCON中的SM0,SM1这两位定义的。本文只研究方式2的情况下两单片机间的通信。
串行口定义为方式2或方式3时,它是一个9位的的异步串行通信接口。方式2的波特率固定为震荡器频率的1/64或1/32,而方式3的波特率由定时器T1或T2(8052)的溢出率所确定。
在方式2和方式3中,一桢信息为11位:1位起始位,8位数据位(先低位后高位),1位附加的第九位数据(发送时为SCON中的TB8,接收时第9位数据为SCON中的RB8),1位停止位。
方式2的输入
接收数据由RXD 输入,接收一桢数据位11位,即1个起始位、8个数据位、1个可编程位和1个停止位。当接收器采样到RXD端从“1”到“0”的跳变,并判断起始位有效后,便开始
原创力文档


文档评论(0)