第7章7.4中断应用.ppt

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

第7章 MCS-51微型计算机系统原理及应用 1)中断响应的条件 (1)无同级或高级中断正在服务; (2)现行指令执行到最后1个机器周期且已结束; (3)若现行指令为RETI或需访问特殊功能寄存器IE或IP的指令时,执行完该指令且紧随其后的另1条指令也已执行完。 3)中断的响应时间 不同的情况对中断响应的时间不同: 4、中断请求的撤消 3)串行口中断请求的撤消 响应串行口的中断后,CPU无法知道是接收中断还是发送中断,还需测试这两个中断标志位的状态,以判定是接收操作还是发送操作,然后才能清除。所以串行口中断请求的撤消只能用软件清除。 例:用中断法编出8051单片机串行口方式1下的发送程序:fosc=6MHz,定时器T1做波特率发生器,波特率为2400bps,选SMOD=1;发送字符块在内存RAM中的TBLOCK单元,字符块长度为20。采用奇校验,校验位在数据第8位。 主程序: MOV TMOD, #20H ;定时器T1设为方式2 MOV TL1, #0F4H ;装入定时器初值 MOV TH1, #0F4H ;8位重装值 SETB TR1 ;启动定时器T1 MOV SCON, #40H ;串行口设为方式1 MOV PCON, #80H ;SMOD=1 MOV R0, #TBLOCK ;发送缓冲区首址 MOV R2 , #20 ;数据长度 MOV A , R2 MOV SBUF, A ;先输出字符长度 SETB EA ;开中断 SETB ET1 ;允许T1中断中断 SETB ES ;允许串行口中断 SJMP $ ;等待中断 2)方式1 在方式1,串行口被设置为波特率可变的8位异步通信接口。 方式1传送的波特率,取决于定时器1的溢出率和特殊功能寄存器PCON中SMOD的值,计算方法如下: 方式1波特率= (2SMOD/32) ×定时器T1的溢出率 当串行口置为方式1,且REN=1,RI=0时,串行口处于接收(输入状态)。 解:SM0、SM1=01时为方式1,在SM2=0,允许发送数据,其余各位均取0。则 SCON=0100000B=40H 对于PCON:由于SMOD=1,所以PCON=80H (同系统复位以后的状态,可不赋值)。 对于TMOD:由于只用T1,且为定时方式2,所以 TMOD=20H 通过查表确定X=F4H TF0、TF1分别是定时器/计数器T0、T1的溢出标志位,加法计数器计满溢出时置1,申请中断,在中断响应后自动复0。TF产生的中断申请是否被接受, 还需要由中断是否开放来决定。 2)定时器/计数器控制寄存器TCON TR1、TR0分别是定时器/计数器T1、T0的运行控制位,通过软件置1后,定时器/计数器才开始工作, 在系统复位时被清0。 3)定时/ 计数器的工作方式 (1)方式0 定时:内部机器周期 计数:外部脉冲信号 方式0:高8位和低5位的13位计数器的运行方式。当TL1/TL0的低5位溢出时,向TH1(TH0)进位,而TH1(TH0)溢出时向TF1(TF0)标志进位。 方式1(16位计数器) (2)方式1: 是一个16位定时器/计数器,TH1(TH0)和TL1(TL0)均是8位的,构成16位计数器。 (3)方式2:8位计数值自动重装 图 方式2(初始常数自动重装载) 计数 初值 计数 初值 (4)方式3 增加一个附加的8位定时器/计数器,从而具有3个定时器/计数器。 工作方式3下的T0: T0分为两个独立的8位计数器:TL0和TH0。TL0使用T0的状态控制位C/T、GATE、TR0。而TH0被固定为一个8位定时器(不能作外部计数模式),并使用定时器T1的状态控制位T

文档评论(0)

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

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

1亿VIP精品文档

相关文档