您的位置 首页 电源

51单片机学习笔记(四)_中止体系

相关概念中断源:引起中断的事件中断请求:中断源向CPU提出处理的请求断点:发生中断时被打断程序的暂停点中断响应:CPU暂停现行程序而转为…

相关概念

  • 中止源:引起中止的事情
  • 中止恳求:中止源向CPU提出处理的恳求
  • 断点:发生中止时被打断程序的暂停点
  • 中止呼应:CPU暂停现行程序而转为呼应中止恳求的进程
  • 中止处理程序:处理中止源的程序
  • 中止处理:CPU碑文有关的中止处理程序
  • 中止回来:回来断点的进程

中止与子程序的差异

调用有点类似、但两者是不同的概念。

  • 源不同。中止是由外部中止源发生的、具有不行猜测和随机性、比方抛反常。子程序是由主程序组织调用的。
  • 呼应不同。中止体系需求维护断点和现场、子程序只需保存断点。
  • 功用不同。中止程序首要处理CPU外部异步事情、子程序调用是为主程序服务。

中止类型

  • 外部中止源:外部硬件资源发生。上下沿触发和凹凸电平触发。
  • 守时中止源:守时器/计数器溢出触发。
  • 串口中止源:串行通讯时发送或接纳结束信息触发。

TCON中止标志

  • IE1:外部中止1恳求标志位。
  • IT1:外部中止1触发方法挑选位。当IT1=0,为低电平触发方法;当IT1=1,为下降沿触发方法。
  • IE0:外部中止0恳求标志位。
  • IT0:外部中止0触发方法挑选位。 当IT0=0,为低电平触发方法;当IT0=1,为下降沿触发方法。

SCON中止标志

  • RI:串行接口时接纳信息结束后、硬件主动置RI=1、CPU呼应中止。留意不会主动清零置RI=0、需软件置RI=0
  • TI:串行接口发送信息结束后、硬件主动置TI=1、CPU呼应中止。留意不会主动清零置TI=0、需软件置TI=0

中止初始化的一般过程

1、确认工作方法(即对TMOD赋值);
2、预置守时或计数的初值(可直接将初值写入TH0、TL0或TH1、TL1);
3、根据需求敞开守时器/计数器的中止(直接对IE位赋值);
4、发动守时器/计数器(若已规则用软件发动,则可把TR0或TR1置“1”;若已规则由外中止引脚电平发动,则需给外引脚加发动电平。当完成了发动要求后,守时器即按规则的工作方法和初值开端计数或守时)。

中止答应标志位

  • EX1:外部中止1答应位;
  • EX0:外部中止0答应位;
  • ET1:守时/计数器T1中止答应位;
  • ET0:守时/计数器T0中止答应位;
  • ES:串行口中止答应位;
  • EA: CPU中止答应(总答应)位。

中止优先级标志

0为低优先级、1为高优先级
  • PS:串行接口中止优先级设置位
  • PT1:守时器/计数器中止1中止优先级设置位
  • PT0:守时器/计数器中止0中止优先级设置位
  • PX1:外部中止1中止优先级设置位
  • PX0:外部中止0中止优先级设置位

51单片机中止号


  • 外部中止0(INT0),对应中止号是0, 中止进口地址0003H
  • 守时/计数器0(T1),对应中止号1 ,中止进口地址000BH
  • 外部中止1(INT1),中止号2 进口地址0013H
  • 守时/计数器1(T1)中止号3 进口地址001BH
  • 串行口(RI/TI)中止号4 进口地址0023H
  • 这五个是AT89S51的,52还多了下面这个
  • 守时/计数器2(T2)中止号5,进口地址002BH

  1. 函数名()interrupt 0 {} //对应外部中止0;
  2. 函数名()interrupt 1 {} //对应守时器/计数器0中止;
  3. 函数名()interrupt 2 {} //对应外部中止1;
  4. 函数名()interrupt 3 {} //对应守时器/计数器1中止;
  5. 函数名()interrupt 4 {} //对应串口中止;

总共5种中止,优先级自上向下;[摘自百度知道link]

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/263722.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部