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

汽车单片机与车载网络技术第2章_MCS-51单片机介绍教材教学课件.ppt

汽车单片机与车载网络技术第2章_MCS-51单片机介绍教材教学课件.ppt

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

  ? ?PX1:外部中断1的中断优先级设定位。PX1?=?1时,外部中断1为高级中断;PX1?=?0时,外部中断1为低级中断。   ? ?PT0:定时/计数器T0的中断优先级设定位。PT0?=?1时,T0为高级中断;PT0?=?0时,T0为低级中断。   ? ?PX0:外部中断0的中断优先级设定位。PX0?=?1时,外部中断0为高级中断;PX0?=?0时,外部中断0为低级中断。   如果有多个中断源同时向CPU提出中断申请,则按照IP的设定,CPU先响应高级中断,再响应低级中断;如有几个同优先级的中断源同时向CPU提出中断申请,则按照自然优先级的顺序进行响应。自然优先级的顺序为:外部中断0(级别最高)→定时/计数器T0→外部中断1→定时/计数器T1→串口中断(级别最低)。   3.中断响应   MCS-51单片机工作时,CPU在每个机器周期中都会去查询一下各个中断标记,看它们是否是“1”,如果是1,就说明有中断请求了,之后按照优先级的顺序进行中断处理。但是当出现下列情况之一时,中断申请将被暂时封锁。   (1) ?CPU正在处理一个同级或更高级别的中断请求。   (2) 现行的机器周期不是当前正在执行指令的最后一个周期,即要保证把当前的指令执行完才能响应中断。   (3) 若当前正在执行的指令是返回指令(RETI)或访问IP、IE寄存器的指令,则CPU执行该指令后至少再执行一条指令才响应中断。如果正在访问IP、IE,则可能会开、关中断或改变中断的优先级,而中断返回指令则说明本次中断还没有处理完,所以都要等本指令处理结束再执行一条指令才可以响应中断。   中断响应的过程如下:   (1) ?CPU响应中断时,首先设置优先级状态触发器,封锁同级中断与低级中断,同时中断标志位自动清0,如边沿触发方式下的外部中断标志IE0、IE1和定时器溢出标志TF0、TF1。但是串口的接收发送中断标志TI、RI只能由用户在中断程序中用指令清0。电平触发方式下的外部中断标志IE0、IE1是根据 、 引脚的电平变化而变化的,CPU无法直接干预,因此需在引脚外加硬件(如D触发器)使其自动撤销外部中断。   (2) 将当前程序计数器PC的内容(即断点位置指令的地址)压入堆栈,然后将相应的中断入口地址送入PC,使程序跳转到中断入口处继续执行。中断程序的入口地址如表2-13所示。   4.中断处理   中断响应后,CPU将转入中断处理程序继续工作。中断处理程序的流程图见图2-15。   编写中断服务程序时应注意以下几点:   (1) 中断服务程序必须定位在该中断源对应的入口地址上,或者可以在中断入口地址单元内放入一条无条件转移指令使CPU跳转到中断服务程序处(此时中断服务程序可灵活地安排在64 KB的程序存储器的任意位置)。   (2) 在中断服务程序中,要注意使用软件保护现场,以免中断返回后,原寄存器、累加器中的信息已经丢失。   (3) 要在执行当前中断程序时禁止更高优先级中断,可以先用软件关闭CPU中断或禁止某中断源的中断,在中断返回前再开放中断。 图2-15 中断程序的一般结构   5.中断返回   在中断服务程序的最后一行,应写上中断返回指令RETI。执行该指令时,将首先清除优先级状态触发器,开放同级与低级中断,然后从堆栈中取出断点地址送给PC,最终让CPU跳回到主程序断点位置继续运行。   6.中断举例   例3 某汽车电子控制系统中,当冷却水温过高、过低或燃油液面高度过低、润滑油油压过低以及倒车时均要报警,其具体要求如下:   ① 当水温过高时,应启动冷却风扇,点亮水温报警灯;   ② 当水温过低时,风扇停转,水温报警灯熄灭;   ③ 当燃油液面高度过低时,点亮燃油报警灯;   ④ 当润滑油油压过低时,报警喇叭鸣叫,油压过低报警灯点亮,且该报警优先级最高;   ⑤ 当倒车时,倒车指示灯点亮。 图2-16 汽车电子控制报警系统   程序如下:   ORG 0000H    LJMP MAIN   ORG 0003H    SETB P1.3 ;油压过低报警    SETB P1.4    RETI    ORG 0013H    LJMP INT    ORG 0100H ;主程序   MAIN: MOV P1,#0 ;令所有报警灯熄灭    CLR IT0 ;中断初始化    CLR IT1    MOV IE,    SETB PX0    ;省略电子控制系统的其他功能部分   INT: MOV P0,#0FFH ;输入脚锁存器置1    MOV C,P0.3 ;倒车报警    CPL C    MOV P1.2,C

文档评论(0)

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

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

1亿VIP精品文档

相关文档