欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    【单片机应用课件】4.中断与定时.ppt

    • 资源ID:96492487       资源大小:684.50KB        全文页数:66页
    • 资源格式: PPT        下载积分:12.99金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要12.99金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【单片机应用课件】4.中断与定时.ppt

    1.中断的基本概念2.MCS-51的中断系统3.中断源和中断标志4.中断的允许和优先权5.中断的处理过程6.外部中断源的扩展7.中断的应用第第章章中中断断系系统统 本章内容本章内容1中断的基本概念v日常生活中断的例子v单片机中的中断概念v中断技术的优点2 日常中断的例子日常中断的例子返回 你正在专心看书,突然电话铃响,于是你记下正在看的书的页数,去接电话,接完电话后再回来接着看书。3 计算机中的中断概念计算机中的中断概念返回中断中断是指由于某种随机事件的发生,计算机暂停现行程序的运行,转去执行另一程序,以处理发生的事件,处理完毕后又自动返回原来的程序继续运行。将能引起中断的事件称为中断源中断源。CPU现行运行的程序称为主程序主程序。处理随机事件的程序称为中断服务中断服务子程序子程序。4 中断技术的优点中断技术的优点v分时操作分时操作 CPU可以同多个外设“同时”工作v实时处理实时处理 CPU及时处理随机事件v故障处理故障处理 电源掉电、存储出错、运算溢出 5MCS-51中断系统v中断源中断源v中断标志中断标志v中断允许中断允许v中断优先级中断优先级vMCS-51MCS-51中断系统结构中断系统结构v中断寄存器中断寄存器6 MCS-51MCS-51的中断系统的中断系统中断源中断源8051单片机有5个个中断请求源:单片机单片机INT0或 外部输入中断源INT0(P3.2)INT1或 外部输入中断源INT1(P3.3)T0 片内定时器T0的溢出T1 片内定时器T1的溢出串行口 片内串行口发送或接收中断源7 MCS-51MCS-51的中断系统的中断系统中断标志中断标志CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TIRI中断源中断源中断标志位中断标志位 每一个中断源都有相应的中断标志位;某一个中断源申请中断,相应中断标志位置1。8 MCS-51MCS-51的中断系统的中断系统中断允许中断允许CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TIRI中断源中断源中断标志位中断标志位 EA总中断允许位,总中断允许位,EA=1开放所有中断,开放所有中断,EA=0,禁止所有中断;禁止所有中断;某一个中断源还有相应的中断允许位,某一个中断源还有相应的中断允许位,1允许相应中断源的中断,允许相应中断源的中断,0禁禁止相应中断源的中断。止相应中断源的中断。中断允许中断允许ESET0EX0EX1ET1EA9 MCS-51MCS-51的中断系统的中断系统中断优先级中断优先级CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TISI中断源中断源中断标志位中断标志位 单片机中有两个中断优先级,即高高优先级中断和低低优先级中断,前者优先权高于后者(在程序中设置,相应位在程序中设置,相应位=1=1,为高优先级,为高优先级);同一优先级别的中断源按照自然优先级自然优先级顺序确定优先级别(硬件硬件形成,无法改变形成,无法改变)。中断允许中断允许ESET0EX0EX1ET1EA自然优先级自然优先级高低优先控制优先控制PSPT0PX0PX1PT110 IE0TCONSCONINT0 IT0=0 IT0=1INT1 IT1=0 IT1=1TF0 IE1TF1T0T1TIRITXDRXDESET0EX0EX1ET1EA自自然然优优先先级级矢量地址高高级级中中断断请请求求自自然然优优先先级级矢量地址低低级级中中断断请请求求PX0PT0PX1PT1PSIEIP MCS-51 MCS-51的中断系统结构图的中断系统结构图中断标志位中断源允许总允许中断优先级11TCON寄存器T0和T1控制寄存器 TF1 TF0 IE1 IT1 IE0 IT0TCONT1溢出中断标志溢出中断标志(TCON.7):T1启动计数后,计满溢出由硬件置位TF1=1,向CPU请求中断,此标志一直保持到CPU响应中断后,才由硬件自动清0。也可用软件查询该标志,并由软件清0。7654321012 TF1 TF0 IE1 IT1 IE0 IT0TCON 88H外部中断外部中断INT1中断标志中断标志位位(TCON.3):IE11,外部中断1向CPU申请中断 外部中断外部中断INT1触发方触发方式控制位式控制位(TCON.2):IT1=0,电平触发方式 IT1=1,下降沿触发方式76543210TCON寄存器T0和T1控制寄存器注意:该寄存器可以位寻址。13返回 TI(SCON.1)串行发送中断标志。RI(SCON.0)串行接收中断标志。TI RISCON寄存器串行口控制寄存器SCON 98H76543210注意:该寄存器可以位寻址。14IE寄存器中断允许寄存器 IE A8H EA ESET1EX1 ET0EX0例:允许定时器T0中断:SETB EA SETB ET0 或 MOV IE,#82H76543210注意:该寄存器可以位寻址。15 51单片机有两个中断优先级单片机有两个中断优先级高级和低级高级和低级 专用寄存器专用寄存器IP为中断优先级寄存器,用户可用软件设定为中断优先级寄存器,用户可用软件设定 相应位为相应位为1,对应的中断源被设置为,对应的中断源被设置为高优先级高优先级,相应位为,相应位为0,对应,对应的中断源被设置为低优先级的中断源被设置为低优先级 系统复位时,均为低优先级系统复位时,均为低优先级 该寄存器可以位寻址该寄存器可以位寻址 PSPT1PX1PT0PX0IP寄存器中断优先级寄存器 IP B8H 7654321016中断处理过程 中断处理过程分为三个阶段:中断响应、中断处理和中断返回。v 中断响应v 中断处理(又称中断服务)v 中断返回v 中断请求的撤除中断请求的撤除 中断响应中断返回17中断响应中断响应:在满足CPU的中断响应条件之后,CPU对中断源中断请求予以处理。中断响应过程:保护断点地址;中断响应 把程序转向中断服务程序的入口地址(通常称矢量地址)。特别注意:这些工作是硬件自动完成的!断点地址中断服务子程序的入口地址18中断响应中断服务子程序入口地址又称为中断矢量或中断向量。中断响应单片机中5个中断源的矢量地址是固定固定的,不能改动。断点地址中断服务子程序的入口地址19程序存储器程序存储器ROMROM0000H:复位后,程序的入口地址(PC=0000H)0023H:串行口中断入口0003H:外部中断0入口000BH:定时器0溢出中断入口0013H:外部中断1入口001BH:定时器1溢出中断入口002AH20中断处理中断处理中断服务程序从入口地址入口地址开始执行,直到返回指令RETI为止,这个过程称为中断处理(或中断服务)。中断服务子程序一般包括两部分内容,一是保护和恢复现场,二是处理中断源的请求。中断响应入口地址入口地址RETI21中断处理中断处理INTT0:PUSH ACC PUSH DPH PUSH DPL PUSH PSW 中断源服务 POP PSW POP DPL POP DPH POP ACC RETI保护现场恢复现场22中断返回 中断返回是指中断服务完后,计算机返回到原来暂停的位置(即断点),继续执行原来的程序。中断返回由专门的中断返回指令RETI来实现。中断响应中断返回2324中断返回 RETI指令功能:把断点地断点地址取出,送回到程序计数器址取出,送回到程序计数器PC中去。另外,它还通知中断系统已完成中断处理,将清除优先级状态触发器。特别注意:不能用RET指令代替RETI指令!中断响应中断返回25中断处理过程示意图中断源发中断请求中断源发中断请求中断响应条件中断响应条件 是否满足?是否满足?中断是否受阻?中断是否受阻?把把PC断点地址压入堆栈断点地址压入堆栈 相应中断源的中断入口地址相应中断源的中断入口地址送入送入PC,转向中断服务程序转向中断服务程序NYYN 由硬件自动完成26 关中断关中断保护现场保护现场中断服务中断服务 开中断开中断 关中断关中断恢复现场恢复现场 开中断开中断中断返回中断返回断点地址由堆栈弹入断点地址由堆栈弹入PC保护现场和恢复现场的过程中不允许中断,以免现场遭到破坏。保护和恢复现场之后的开中断是为了允许有更高级中断打断此中断服务程序。中断服务程序硬件自动完成27中断请求的撤除中断请求的撤除 CPU响应某中断请求后,在中断返回前,应该撤除该中断请求,否则会引起另一次中断。定时器0或1溢出:CPU在响应中断后,硬件清除了有关的中断请求标志TFO或TF1,即中断请求是自动撤除的中断请求是自动撤除的。边沿激活的外部中断:CPU在响应中断后,也是用硬件自动用硬件自动清除清除有关的中断请求标志IE0或IE1。串行口中断:CPU响应中断后,没有用硬件清除T1、R1,故这些中断不能自动撤除,而要靠软件来清除相应的标志要靠软件来清除相应的标志。28电平触发外部中断撤除方法较复杂。因为在电平触发方式中,CPU响应中断时不会自动清除IE1或IE0标志,所以在响应中断后应立即撤除INT0或INT1引脚上的低电平。在硬件上,CPU对INT0和INT1引脚的信号不能控制,所以这个问题要通过硬件,再配合软件来解决。电平激活的外部中断源中断标志的撤除电平激活的外部中断源中断标志的撤除29MCS-51定时器/计数器 MCS-51单片机内部共有两个16位可编程的定时器/计数器,即 定时器T0和定时器T1它们既有定时功能又有计数功能。1.结构 定时器/计数器的基本结构如图6.3所示。基本部件是两个8位计 数器(其中TH1和TL1是T1的计数器,TH0和TL0是T0的计数器)。图6.3 定时器/计数器结构30 在作定时器使用时,输入的时钟脉冲是由晶体振荡器的输出 经12分频后得到的。当它用作对外部事件计数时,接相应的外部输入引脚T0(P3.4)或T1(P3.5)。2.控制寄存器1.定时器控制寄存器(TCON)各位定义:位地址8FH8EH 8DH 8CH8BH8AH 89H 88H位符号TF1TR1TF0TR0IE1IT1IE0IT0 TF0/TF1:查询方式:禁止中断,软件查询TF0的值,软件清“0”中断方式:硬件查询TF0的值,硬件自动清“0”2.工作方式寄存器(TMOD)功能:确定定时器的工作方式及功能选择。31 不能位寻址,TMOD各位的定义:D7D6D5D4D3D2D1D0GATEGATE GATE:门控位 0:定时器/计数器仅受TR的控制 1:只有 为高电平,且TR=1时,定时器/计数器才工作:功能选择位 0:定时功能 1:计数功能:工作方式选择位 00 方式001 方式110 方式211 方式3323.中断允许控制寄存器(IE)AFHAEHADHACHABHAAHA9HA8HEA/ESET1EX1EF0EX0 每一位的内容在前面已作详细介绍,在此不作赘述。查询方式时:关闭中断,使用软件查询TF0/TF1 中断方式时:开放中断,使用硬件自动查询TF0/TF13.工作方式 MCS-51的定时器/计数器共有四种工作方式。工作在方式0、方式1和方式2时,定时器/计数器0和定时器/计数器1的工作原理完全一样,现以定时器/计数器0为例介绍前三种工作方式。1.方式0(M1M0=00)(1)电路逻辑结构 方式0是13位计数结构的工作方式,其计数器由TH0全部8位和TL0的低5位构成。TL0高三位弃之不用。图6.4 是定时器/计数器0工作在方式0的逻辑结构。33图6.4 定时器T0方式0逻辑图34当 时,多 路 转换开关接通 振 荡 脉冲的12分频输出,13位计数器以此作为计数 脉冲,这时实现定时功能.当 时,多路换开关接通计数引脚(T0),计 数 脉冲由外部引入,当计数 脉冲发生负跳变时,计数器加1,这时实现计数功能。不管哪种功 能,当13位计数 发生溢 出时,硬件自动把13位清零,同时硬件置 位溢出标志位TF0。在这里需要说明门控位(GATE)的用途,当GATE=0时,或输出的高电平与 无关,此时与门的输出只受运行控制位T R0控 制。如果TR0=0,则与门输出为低电平,则模 拟开关断开,定时器/计数 器不工作。如果TR01,则与门输出为高电平,则模 拟开关闭合,定时器/计数器工作。当GATE=1时,只有TR0和 同时为高电平,定时器/计数 器才工作,否则,定时器/计数器不工作。35(2)定时和计数的应用 计数范围:1213 计数计算公式:计数值213计数初值 定时范围:1机器周期213机器周期 定时计算公式:定时时间(213定时初值)机器周期 如果晶振频率为6MHz,则最大定时时间为:2131/6MHz12214()2.方式1(M1M0=01)方式1是16位计数结构的工作方式,其计数器由TH0全部8位和TL0的全部8位构成。其逻辑电路和工作情况与方式0完全相同,所不同的只是计数器的位数。MCS-51单片机之所以设置几乎完全一 样的方式0和方式1,是出于与 MCS-48单片机兼容的要求。因为,MCS48单片机的定时器/计数器是13位的计数结构。36定时器T0方式1逻辑图 37 定时和计数的应用 计数范围:1216 计数计算公式:计数值216计数初值 定时范围:1机器周期216机器周期 定时计算公式:定时时间(216定时初值)机器周期 如果晶振频率为6MHz,则最大定时时间为:2161/6MHz12217()【例6-1】设单片机晶振频率为6MHZ,使用T1以工作方式1,产生周 期为500的等宽正方波,并由输出,以中断方式编程中断方式编程。分析:题目的要求可用下图来表示。由上图可以看出只要使 的电位每隔250取一次反即可。所。以定时时间应取250。38 1)计算计数初值 设计数初值为x,由定时计算公式知:2)专用寄存器的初始化D7D6D5D4D3D2D1D0GATEGATE 所以,TMOD应设置为:10H 开放定时器/计数器1中断,所以IE应设置为:88H39 3)编写程序ORG0000HSJMPMAINORG001BHAJMPINTT1MAIN:MOVTMOD,#10HMOVIE,#88HMOVTH1,#0FFHMOVTL1,#83H;初始化LOOP:SETBTR1;启动HERE:SJMPHERE;等待中断AJMPLOOPINTT1:MOVTH1,#0FFH;中断响应程序MOVTL1,#83HCPLP1.0RETI;中断返回403.方式2(M1M0=10)(1)电路逻辑结构 电路逻辑结构如图所示,由图可以总结出方式2具有以下特点:定时器T0方式2逻辑图 41 8位计数器 TL0作计数器,TH0作预置寄存器使用,计数溢出时,TH0中的 计数初值自动装入TL0,即TL0是一个自动恢复初值的8位计数器。在使用时,要把计数初值同时装入TL0和TH0中。优点是提高定时精度,减少了程序的复杂程度。(2)定时和计数的应用 计数范围:128 计数计算公式:计数值28计数初值 定时范围:1机器周期28机器周期 定时计算公式:定时时间(28定时初值)机器周期【例6-2】用定时器1以工作方式2实现计数,每计数100,累加器进行加1操作,以查询方式查询方式编写程序。解:1)计算计数初值422)专用寄存器初始化D7D6D5D4D3D2D1D0GATEGATE0 1 1 0 0 0 0 0所以,TMOD60H使用查询方式,所以关闭中断,即IE=00H3)程序设计MOVIE,#00H;禁止中断MOVTMOD,#60H;T1工作在方式2,计数功能MOVTH1,#9CHMOVTL1,#9CH;装载计数初值SETBTR1;启动DEL:JBCTF1,LOOPAJMPDELLOOP:INCA;溢出响应程序AJMPDEL434.4.方式方式3 3(M M1 1M M0 0=11=11)前面介绍的三种工作方式对两个定时器/计数器而言,工作原理是完全一样的。但在工作方式3下,两个定时器工作原理却完全不同,因此要分开介绍。(1)工作方式3下的定时器/计数器0 在方式3下,定时器/计数器0被拆为两个独立的8位的计数器TL0和TH0。其中TL0 既可以作为计数功能使用,又可以作定时功能使用,享用定时器/计数器0的运行控制位TR0和溢出标志位TF0。对于TH0,只能作定时器使用,由于定时器/计数器0的运行控制位TR0和溢出标志位TF0已被TL0占用,因此TH0占用了定时器/计数器1的运行控制位TR1和溢出标志位TF1。即定时的启动和停止受TR1的状态控制,而计数溢出时则置位TF1。44定时器T0方式3逻辑图 45(2)工作方式3下的定时器/计数器1 当定时器/计数器0工作在方式3时,定时器/计数器1只能工作在方式0、方式1和方式2。在这种情况下定时器/计数器1只能作波特率发生器使用,以确定串行通信的速率。作波特率发生器使用时,只要设置好工作方式,便可自动运行。如果要停止工作,只需要把定时器/计数器1设置在工作方式3就可以了。因为定时器/计数器1不能工作在方式3下,如果硬把它设置在方式3,它就会停止工作。4647外部中断源的扩展v单片机仅有两个外部中断输入端.v可用下述方法扩展:1.定时器T0,T1。(工作在计数方式下)48 1用定时器作外部中断源 例例5.5 将定时器T0扩展为外部中断源。解解:将定时器T0设定为方式2(自动恢复计数初值),TH0和TF0的初值均设置为FFH,允许T0中断,CPU开放中断,源程序如下:MOVTMOD,#06H MOVTH0,#0FFHMOVTL0,#0FFHSETBTR0SETBET0SETBEA T0引脚每输入一个负跳变,TF0都会置1,向CPU请求中断 T0脚相当于边沿触发的外部中断源输入线。脚相当于边沿触发的外部中断源输入线。49例:在例:在P1.0上产生周期为上产生周期为10ms的方波,设晶振频率的方波,设晶振频率12MHz.(要求分别以查询方式和中断方式设计程序要求分别以查询方式和中断方式设计程序)查查询询方方式式:ORG 0000H MOV TH1,#ECH MOV TL1,#78H 中中断断方方式式:ORG 0000H MOV TH1,#ECH MOV TL1,#78H MOV TMOD,#10H SETB TR1WAIT:JBC TF1,NX SJMP WAIT NX:CPL P1.0 MOV TH1,#ECH MOV TL1,#78H SJMP WAIT END MOV TMOD,#10H MOV IE,#88H SETB TR1WAIT:SJMP WAIT ORG 001BH CPL P1.0 MOV TH1,#ECH MOV TL1,#78H RETI5051例1.若8051的晶振频率fosc为6MHZ,定时器/计数器T0工作在方式2(8位重装载定时器/计数器),要求产生0.1ms定时,写出方式控制字和计数初值(写出TH0与TL0值)。(1)T0:定时方式,工作在方式2。方式字TMOD=02H(2)fosc=6MHZ,8位计数器,0.1ms定时,设计数初值为x,t=12/fosc*(28-x)0.1*103=12/6*(28-x)x=206D=CEH即TH0=CEHTL0=CEH52例例2.扩大定时间隔的方法扩大定时间隔的方法:可采用多次中断的方法。可采用多次中断的方法。例:要求用一台单片机控制例:要求用一台单片机控制10台加热炉,每隔台加热炉,每隔10秒钟进行一次温秒钟进行一次温 度测量。则需要定时度测量。则需要定时10秒。设秒。设 f=6MHZ 分析:可选择定时分析:可选择定时100mS中断,当中断中断,当中断100次时,可达到次时,可达到10秒。秒。计算定时计算定时100mS的时间常数的时间常数X,选选T0方式方式1定时。定时。(2n X)(12/f)=定时间隔定时间隔 (216 X)2 10-6 =100 10-3 X=3CB0H 即即 TH0=3CH TL0=B0H 程序如下:程序如下:530000 H AJMP STAR000BH LJMP IT0P STAR:MOV SP ,#60H MOV TMOD ,#01H ;T0方式方式1定时定时 MOV TH0 ,#3CH MOV TL0 ,#0B0H ;定时定时100mS时间常数时间常数 MOV R0 ,#0 ;中断次数计数单元清零中断次数计数单元清零 SETB TR0 ;启动启动T0 SETB EA ;允许允许CPU中断中断 SETB ET0 ;允许允许T0中断中断 .;以下以下CPU可执行主程序可执行主程序 .54T0中断服务程序:中断服务程序:IT0P:MOV TH0 ,#3CH MOV TL0 ,#0B0H ;重装重装100mS时间常数时间常数 INC R0 ;中断次数计数加中断次数计数加1 CJNE R0 ,#100,RETN ;到到10秒了吗?秒了吗?MOV R0 ,#0 ;10秒已到,清中断计数秒已到,清中断计数 LCALL CYPID ;调温度控制程序调温度控制程序 RETN:RETI 553.定定时器器/计数器的初始化:数器的初始化:由于定时器/计数器的功能是由软件编程确定的,所以一般在使用定时/计数器前都要对其进行初始化,使其按设定的功能工作。初始化的步骤一般如下:1、确定工作方式(即对TMOD赋值);2、预置定时或计数的初值(可直接将初值写入TH0、TL0或TH1、TL1);3、根据需要开放定时器/计数器的中断(直接对IE位赋值);4、启动定时器/计数器(若已规定用软件启动,则可把TR0或TR1置“1”;若已规定由外中断引脚电平启动,则需给外引脚步加启动电平。当实现了启动要求后,定时器即按规定的工作方式和初值开始计数或定时)。56掌掌握握单单片片机机硬硬件件资资源源定定时时计数器的使用。计数器的使用。4.4.4.4.单片机计数并显示单片机计数并显示单片机计数并显示单片机计数并显示 描述单片机对按键次数描述单片机对按键次数(99次)进行计数,并次)进行计数,并在发光二极管上实时显示。在发光二极管上实时显示。575.硬件电路与工作原理硬件电路与工作原理.硬件电路硬件电路58.工作原理工作原理 用手按动按键用手按动按键S3,每按键一次,每按键一次S3引脚上出现一引脚上出现一个负脉冲,单片个负脉冲,单片机计数一次,并机计数一次,并实时将按键次数,实时将按键次数,在发光二极管上在发光二极管上面显示。面显示。59 定时计数器定时计数器定时计数器定时计数器T0T0初始化初始化初始化初始化 启动计数器启动计数器启动计数器启动计数器T0T0 开始开始开始开始 计数值送计数值送计数值送计数值送 P1P1口显示口显示口显示口显示 结束结束结束结束 6.控制程序控制程序.主程序流程主程序流程60.控制程序控制程序ORG 0000HLJMP MAINORG 0030HMAIN:MOV TMOD,#06H;设定;设定T0的工作方式的工作方式MOV TH0,#00H ;设定计数初值;设定计数初值MOV TL0,#00H ;SETB TR0 ;启动计数器;启动计数器MOV P1,TL0 ;送显示;送显示END617.关于定时器的小结与补充:关于定时器的小结与补充:1.关于定时计数两种功能关于定时计数两种功能:8051单片机具有单片机具有T1、T0两个定时器计数器,并分别具有定时两个定时器计数器,并分别具有定时和计数两种功能。和计数两种功能。C/T=0选择定时功能,此时令计数器加选择定时功能,此时令计数器加1的脉冲信号是由机内的脉冲信号是由机内提供的等间隔的信号,每隔一个机器周期加提供的等间隔的信号,每隔一个机器周期加1,即每隔,即每隔12/f 秒加秒加1。C/T=1选择计数功能,此时令计数器加选择计数功能,此时令计数器加1的脉冲信号由外部输的脉冲信号由外部输入,当被计数的外部事件发生一次,则产生一个脉冲信号从入,当被计数的外部事件发生一次,则产生一个脉冲信号从T0或或T1引脚输入,令计数器加引脚输入,令计数器加1,该脉冲信号的速率决定于外部事件的发,该脉冲信号的速率决定于外部事件的发生速率,不一定等间隔。生速率,不一定等间隔。定时和计数的主要区别是令计数器加定时和计数的主要区别是令计数器加1的脉冲信号来源不同。的脉冲信号来源不同。628.单片机中断程序怎样编制?单片机中断程序怎样编制?从上面的任务程序中,我们来体会以下中断服务程序的编从上面的任务程序中,我们来体会以下中断服务程序的编制方法。制方法。(1)首先必须对中断系统进行初始化,包括:)首先必须对中断系统进行初始化,包括:1)开中断,即设定)开中断,即设定IE寄存器。寄存器。如上面程序中的如上面程序中的 SETBEA ;开总中断控制位;开总中断控制位 SETBEX0 ;开外部中断;开外部中断0 SETBET0 ;开定时器中断;开定时器中断02)设定中断优先级,即设置)设定中断优先级,即设置IP寄存器。寄存器。如上面程序中的如上面程序中的 SETBPT0;设定时器;设定时器0中断为高优先级中断为高优先级3)如果是外部中断,还必须设定中断响应方式,即设定)如果是外部中断,还必须设定中断响应方式,即设定IT0、IT1位。位。63如上面程序中的如上面程序中的SETB IT0 ;设外部中断;设外部中断0为边沿为边沿触发方式触发方式4)如果是计数、定时中断必须先设定定时、计数的初)如果是计数、定时中断必须先设定定时、计数的初始值。始值。如上面程序中的如上面程序中的MOV TL0,#00H MOV TH0,#4CH5)初始化结束后,对于定时、计数器而言,还应该记)初始化结束后,对于定时、计数器而言,还应该记得启动定时或计数,即设定得启动定时或计数,即设定TR0、TR1位。串口接位。串口接收中断,要记得允许接收位收中断,要记得允许接收位REN应该设置。应该设置。如上面程序中的如上面程序中的SETB TR064(2)中断初始化结束后,就可以编制中断服务程序,编制中)中断初始化结束后,就可以编制中断服务程序,编制中断服务程序时注意:断服务程序时注意:1)中断服务程序,第一条指令必须安排在相应的中断入口)中断服务程序,第一条指令必须安排在相应的中断入口地址,并且应该是转移指令。地址,并且应该是转移指令。如任务程序中的如任务程序中的 ORG 0003H ;外部中断;外部中断0入口地址入口地址 LJMP INT_0 ORG 001BH ;定时器;定时器T0中断入口地中断入口地 ;址;址 LJMP DELAY65 2)由于中断的产生是随机的,所以对程序中的公共单元)由于中断的产生是随机的,所以对程序中的公共单元(其他程序中已经使用,中断程序中也使用了的单元),(其他程序中已经使用,中断程序中也使用了的单元),必须在中断服务程序开始处,采用堆栈进行保护,即入必须在中断服务程序开始处,采用堆栈进行保护,即入栈。子程序返回前再出栈。栈。子程序返回前再出栈。如任务程序中的如任务程序中的 PUSH ACC POP ACC 3)中断服务程序必须以)中断服务程序必须以RETI结束,因为结束,因为RETI指令具指令具 有有两个功能:第一,将断点地址弹回两个功能:第一,将断点地址弹回PC指针,以保证能继指针,以保证能继续原来的程序,第二,能将中断优先级状态触发器清零,续原来的程序,第二,能将中断优先级状态触发器清零,以保证新的中断请求能够被相应。以保证新的中断请求能够被相应。66

    注意事项

    本文(【单片机应用课件】4.中断与定时.ppt)为本站会员(鼎天****馆)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开