网站大量收购独家精品文档,联系QQ:2885784924

第十章 MCS-51单片机串行接口改.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十章 MCS-51单片机串行数据通信 第十章 MCS-51单片机串行接口 一、异步通信与同步通信 1、异步通信 异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发送和接收过程。为使双方的收发协调,要求发送和接收设备的时钟尽可能一致。 异步通信是以字符(构成的帧)为单位进行传输,字符与字符之间的间隙(时间间隔)是任意的,但每个字符中的各位是以固定的时间传送的,即字符之间是异步的,但同一字符内的各位是同步的。 2、同步通信 同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全同步。此时,传输数据的位之间的距离均为“位间隔”的整数倍,同时传送的字符间不留间隙,即保持位同步关系,也保持字符同步关系。 二、串行通信的传输方向 1、单工 单工是指数据传输仅能沿一个方向,不能实现反向传输。 2、半双工 半双工是指数据传输可以沿两个方向,但需要分时进行。 3、全双工 全双工是指数据可以同时进行双向传输。 三、串行通信的错误校验 1、奇偶校验 在发送数据时,数据位尾随的1位为奇偶校验位(1或0)。奇校验时,数据中“1”的个数与校验位“1”的个数之和应为奇数;偶校验时,数据中“1”的个数与校验位“1”的个数之和应为偶数。接收字符时,对“1”的个数进行校验,若发现不一致,则说明传输数据过程中出现了差错。 四、传输速率与传输距离 1、传输速率 波特率是每秒钟传输二进制代码的位数。 单位是:位/秒(bps)。 如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位、1个停止位、8个数据位),这时的波特率为: 10位×240个/秒 = 2400 bps 4、波特率的计算 在串行通信中,收发双方对发送或接收数据的速率要有约定。通过软件可对单片机串行口编程为四种工作方式,其中方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1的溢出率来决定。 串行口的四种工作方式对应三种波特率。由于输入的移位时钟的来源不同,所以,各种方式的波特率计算公式也不相同。 方式0的波特率 = fosc/12 方式2的波特率 =(2SMOD/64)· fosc 方式1的波特率 =(2SMOD/32)·(T1溢出率) 方式3的波特率 =(2SMOD/32)·(T1溢出率) 串行口工作之前,应对其进行初始化,主要是设置产生波特率的定时器1、串行口控制和中断控制。具体步骤如下: 1、确定T1的工作方式(编程TMOD寄存器); 2、计算T1的初值,装载TH1、TL1; 启动T1(编程TCON中的TR1位); 3、确定串行口控制(编程SCON寄存器); 串行口在中断方式工作时,要进行中断设置(编程IE、IP寄存器)。 单片机与单片机的通信 1号机接到00H后结束发送。 若收到的答复非零,则重新发送数据一次。双方约定 采用串行口方式1进行通信,一帧信息为10位,其中有1 个起始位、8个数据位和一个停止位;波特率为2400波特。 T1工作在定时器方式2,振荡频率选用11.0592MHZ,查表 可得TH1=TL1=0F4H,PCON寄存器的SMOD位为0。 初始化编程: MOV TMOD,#20H MOV PCON,#80H MOV TH1,#0F3H MOV TL1,#0F3H SETB TR1 MOV SCON,#50H ; §10.2 串行口的结构和工作方式 §10.2 串行口的结构和工作方式 一、点对点的通信 1、硬件连接 §10.3 串行口的应用 二、应用程序 设1号机是发送方,2号机是接收方。 当1号机发送时,先发送一个“E1”联络信号,2号机收到后回答一个“E2”应答信号,表示同意接收。 当1号机收到应答信号“E2”后,开始发送数据,每发送一个数据字节都要计算“校验和”,假定数据块长度为16个字节,起始地址为40H,一个数据块发送完毕后立即发送“校验和”。 2号机接收数据并转存到数据缓冲区,起始地址也为40H,每接收到一个数据字节便计算一次“校验和”,当收到一个数据块后,再接收1号

文档评论(0)

好文精选 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档