关于单片机工作方式等

上传人:woxinch****an2018 文档编号:44677864 上传时间:2018-06-14 格式:PPT 页数:116 大小:1.09MB
返回 下载 相关 举报
关于单片机工作方式等_第1页
第1页 / 共116页
关于单片机工作方式等_第2页
第2页 / 共116页
关于单片机工作方式等_第3页
第3页 / 共116页
关于单片机工作方式等_第4页
第4页 / 共116页
关于单片机工作方式等_第5页
第5页 / 共116页
点击查看更多>>
资源描述

《关于单片机工作方式等》由会员分享,可在线阅读,更多相关《关于单片机工作方式等(116页珍藏版)》请在金锄头文库上搜索。

1、MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计Powerpoint 制作:五邑大学信息学院课程主讲:王洪涛MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用第十一讲内容提示 5.8串行口及串行通信(续) 5.9 RS-232C接口标准 5.11 多个中断源同时开放时应注意的问题 MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计(2)方式1、2、3当设置SCON

2、中的SM0、SM1为01、10、11时 ,串行口工作在方式1、2、3。串口均为异步串行通 信口,其中TXD是发送端,RXD是接收端。发送或接 收帧信息包括1位起始位(固定为0)、8(方式1) 或9位(方式2、3)串行数据(低位在前,高位在后 )和一位停止位(固定为1)共10或11位,这是他们 的共性。MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计方式1、3的波特率是可变的。波特率与定时器T1 或T2的溢出率、SMOD位有关。注意:51机的T0不 能作为波特率发生器用。方式2的波特率固定为:(5-4)方式1、方式3波特率与定时器T1溢出率

3、、SMOD 位关系如下:(5-5)MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计5-5式分子中的SMOD是PCON的SMOD位。当 SMOD位为1时,波特率是SMOD为0时的两倍。因 此,PCON寄存器中的SMOD位被称为波特率倍增位 。对方式1、2、3都成立。如前所述,波特率(这里等同于比特率)是每秒钟 传输数据的倍数。在异步串行数据传输时,表面上看 来双方的同步是靠波特率实现(移位)的。 MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计但为了降低误码率,提高通信的靠性,接收方若

4、在 每个数据位时间间隔中点(信号畸变最小处),将数 据移位并锁存,可以克服因信号的畸变导致的通信错 误。实现的上述目的一种方法是进行时间细分,如图 5-34所示,在每传输1位的时间段内,插入16个等 宽时钟脉冲。当接收方收检测到发送方的起始信号后 ,以延迟8个时钟脉冲后的时刻为同步参考点。之后 每16个时钟脉冲移位并锁存数据,如图所示,这些作 用点正好是每位信号的中点。我们将每传输一位数据 的时钟脉冲个数称为波特率因子,图5-34的波特率因 子 = 16。MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计MCS-51系列单片机内部定时/计数

5、器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计 方式1的发送在TI为0情况下(表示串行口发送控制电路处于空 闲状态),任何写缓冲器SBUF指令(如MOV SBUF,A)均会触发串行发送过程:51 串行口自动在8个数 据位的前、后分别插入一个起始位和一个停止位,构 成10位信息帧,按设定的波特率依次输出起始位、8 个数据位(顺序为b0b7)和停止位。当8位数据发 送结束后(即开始发送停止位)时,串行口自动将发 送中断标志TI置1。TI标志可用来查询发送过程是否 完成。在中断处于开放状态下,TI有效时,将导致串 行中断。 MCS-51系列单片机内部定时/计数器、中断系统及串行

6、口I/O口的应用 工程背景下的单片机原理及系统设计 方式1的接收过程在接收中断标志RI为0(串行接收缓冲寄存器SBUF 处于空闲)情况下,当REN位为1时,串行口处于接 收状态。此时,串行口不断检测RXD引脚的电平状态 (检测频率是移位脉冲的波特率因子倍),当发现 RXD引脚由高电平变为低电平后,表明发送端开始发 送起始位,便自动启动接收过程。按设定波特率顺序 读出数据位和停止位。 MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计当接收完一帧信息(即接收到停止位)后,如果RI 位为0,便将接收到的内容装入串行数据输入缓冲寄 存器SBUF中

7、,并将串行接收中断标志RI置1。因此 RI可作为接收过程是否已完成查询标志用。在串口中 断及总中断处于开放状态下,RI有效时将触发串行中 断。值得注意是CPU响应串行中断后,不会自动清除RI 或TI标志位,需要用指令如“CLR”等清除RI或TI标 志。以便继续进行串口的收/发工作。 MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计 方式2和方式3的帧数据格式与方式1的区别串行口方式2与方式3都是9位异步串行通信口,唯 一区别是方式2的波特率固定为时钟频率的32或64分 频,不可变。由于他的波特率与通用串行通信设备对 不上,因此只用于51机

8、之间的通信,方式2的波特率 是所有方式中最高的,这是他的优点。方式3与方式1在波特率方面没有区别。区别在于帧 格式上:方式2、方式3是9位数据格式。一帧信息为 11位,由一位起始位、9位串行数据、一位停止位。MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计发送方在方式2、方式3时,9位数据的构成与写入 顺序为:必须先将第9位(用b8)表示,写入SCON 的TB8位,他通常用于表示同帧中的字节数据( b0b7)的性质如:数据或命令等辨识信息。在双机 通信(多机通信不适用)中,第9位数据也可作为帧 数据的奇偶校验信息;第2步,将8位数据写入S

9、BUF ,注意:一但执行写SBUF命令,发送过程便被启动 ,除非TI为“1”。这就是为什么先写第9位数据的原 因。由于方式3波特率可变,因此,串行口方式3比方 式2应用范围更广。 MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计方式2、方式3中,接收的信息的第9位在SCON寄 存器的RB8位中。8位数据仍在SBUF中。方式2、方式3是多机通信方式,在应用时要留意多 机通信控制位SM2的含义。MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计5.8.5双机通信及编程举例 1.最简单的双机

10、通信例子双机通信也称为点对点通信。是通信中最基本的形 式。顾名思义,双机通信就是两台机的信息交换过程 。本节我们只讨论单片机之间的双机通信问题,至于 单片机与PC机之间的通信问题,将在本章的后续部分 讨论。MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计若两片51机相距很近,可以不需任何调制与电平转 换而直接互联,其通信电路如图5-35所示。我们可将 这种联接方式与打电话(双方耳朵与听筒的交叉)进 行对比,更容易理解。就象打电话双方必须用双方都 能懂的语言交流一样。注意:图中的地线是用于统一 双方的“0”参考电位的。方式1、2、3都能进行

11、双机通信,但要注意:在点 对点通信时,为避免复杂操作,双方都要将SM2置 “0”。MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计【例5-16】 两个8031系统进行最高速率通信。 要求使用串口方式2,8031A作为发送方,不使用串 口中断;B机接收,使用串口中断。设两机的focs相 同,发送方只将一个字节数据,如0AAH发向B机便 结束。分析:本例是最简单、最基本的一个通信程序了。 编写通信程序要全盘考虑双方的硬件设置(主要是工 作方

12、式、focs等),以实现波特率匹配;还要制定通 信协议(发送信息的识别方法、数据有含义的解释方 法、通信数据的个数、一次通信过程的结束条件、要 不要校验、用什么校验方式等)。MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计本例中硬件条件:方式2、focs相等;协议简单: 收/发一个数据,不要求校验和解释。解 根据题目要求,发送方参考程序如下:ORG0000HAJMPSTARTORG0040HMCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计START:MOVSP,#5FH MOV SC

13、ON,#90H;方式2,允许接收SM2=0 MOVPCON,#80H;波特率加倍,最高速率 SETPSW.4 CLRPSW.3;工作区用2区 MOV SBUF,#0AAH WAIT2:JBCTI,STOP SJMP WAIT2 STOP:SJMPSTOP END MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计接收方参考程序如下:ORG0000HAJMPSTARTORG0023HLJMPSINT ; 串行中断入口ORG0040HSTART:MOV SCON,#90H;方式2,允许接收SM2=0 MOV PCON,#80H ;波特率加倍MO

14、VIE,#90H;串口及总中断开放CLRF0MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计SETBPSW.4CLRPSW.3;工作区用2区WAIT1:JBCF0,TRDATA ; F0由中断服务程序置位SJMPWAIT1; 置位或清零TRDATA:CLRES;关串口中断,此为甲机的程序MOV A,SBUF SJMP $SINT:CLRRISETBF0;置成功接收标志MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计RETI;中断返回END 训练题5-28 教材中【例5-15】中若fo

15、cs= 6MHz,通 信的波特率为多少?又串口方式2对通信双方的focs 有何要求?MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计2.串行通信数据校验方法之一:奇偶校验受串行通信的距离、通信速率、信息量、通信线路 、环境条件等因素的影响,可能会出现数据传输错误 问题。 为保证通信的正确性,计算机中采用对通信数据的 校对方法,确认数据传输的正确性。称为校验。实际 上,校验是手段,纠错是目的。我们将这种利用数据的奇偶性查错的方法称为奇偶 校验法。这是本书讨论的第一种校验法。 MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的

16、应用 工程背景下的单片机原理及系统设计奇偶校验的实现方法如下:发送方将所发送的每一帧数据的奇偶状态位,作为 发送数据的第九位数据写入SCON的TB8位,将字节 数据写入发送缓冲器SBUF中后,帧数据开始发出。接收方接收的每一帧数据,第九位数据存在SCON 的RB8位中,字节数据在缓冲器SBUF中,接收方将 SBUF中数据的奇偶性与RB8进行比较,两者相等则 确定此帧数据通信正确无误,否则,这帧数据必然有 错误。对于校验的结果,通信双方根据通信协议进行相应 的处理,这里没有通用方法。MCS-51系列单片机内部定时/计数器、中断系统及串行口I/O口的应用 工程背景下的单片机原理及系统设计使用奇偶校验应注意的问题:(1)51机只有在串口方式2、3时(9位数据)且 SM2位必须为“0” 才有条件进行奇偶校验;(2)为测得数据的奇偶状态,用MOV A,SUBF 指令最方便;(3)并不是所有的通信都要使用校验,更不是都 要用奇偶校验,校验与否通信双方要在通信协议中确 定。反映在习题中,要认真审题,要求校验,才能写 校验的程序部分,避免犯画蛇添足的错误。MCS-51系列单片机

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 高中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号