中国电子技术网

设为首页 网站地图 加入收藏

 
 

51单片机中断优先级的设置方法解析

关键词:51单片机 计数器 寄存器

时间:2019-10-16 09:48:47      来源:网络

51单片机中断优先级的设置方法解析

  包含五个中断源,两级中断优先级,优先级可编程设置,通过IP进行设置:


  51单片机中断优先级的设置方法解析

  PX0(IP.0),外部中断0优先级设定位;

  PT0(IP.1),定时/计数器T0优先级设定位;

  PX1(IP.2),外部中断0优先级设定位;

  PT1(IP.3),定时/计数器T1优先级设定位;

  PS (IP.4),串行口优先级设定位;

  PT2 (IP.5) ,定时/计数器T2优先级设定位。
 

  从这张图里我们可以看出:

  EA是中断控制位,EA=1开放中断,EA=0屏蔽所用中断(编程时人为设定)

  那EA是在哪里进行设置的呢?它就是在IE(中断允许寄存器)里进行设定的

  第七位就是EA,剩下的还有第四位的ES,第三位的ET1,第二位的EX1,第一位的ET0和第零位的EX0,是不是在上图中都能看到他们的影子?没错,要不IE能称为中断允许寄存器嘛?是不是他先是设定总允许中断,然后再设定其它的中断是不是允许的,接下来我们再来看其它中断允许位

  ES:串行口中断开放控制位,ES=1,响应串行口中断,ES=0,禁止串行口中断

  ET1:T1溢出中断开放控制位,ET1=1,响应T1溢出产生的中断;ET1=0,禁止T1溢出产生的中断

  EX1:外部中断1开放控制位,EX1=1,响应外部中断,EX1=0,禁止外部中断

  ET0:功能同ET1,对应T0

  EX0:功能同EX1,对应外部中断0

  这样,中断是否开启就由你说了算了,你要用什么直接就可以控制对应的中断和总中断EA就可以了。

  现在我们开启了中断,CPU就会检测对应的中断是否到来,那如何检测的呢?接下来我们就要用到另外几个有用的位了。  

  TCON的第七位TF1,第五位TF0,第三位IE1,第一位IE0

  SCON的第一位TI,第零位RI。

  RI(SCON.0),串行口接收中断标志位。当允许串行口接收数据时,每接收完一个串行帧,由硬件置位RI。注意,RI必须由软件清除。

  TI(SCON.1),串行口发送中断标志位。当CPU将一个发送数据写入串行口发送缓冲器时,就启动了发送过程。每发送完一个串行帧,由硬件置位TI。CPU响应中断时,不能自动清除TI,TI必须由软件清除。

  TF1:T1当定时时间到或是当计数个数到的时候,会触发TF1位,然后CPU检测TF1位,执行对应的中断,响应中断后,硬件清零。

  TF0:对应于TF1

  IE1:外部中断请求标志,外部中断执行,请求中断,对应IE1=1,CPU响应中断,硬件对IE1清零。

  IE0:对应IE1

  但是对于外部中断,却有两种中断触发方式,一种是低电平触发,一种是下降沿触发。我们对于不同情况要进行不同的控制,那什么对这两种方式进行先择呢?我们看TCON的第二位和第零位是没有用的,就是他们两个,第二位IT1对应外部中断1,第零位IT0对应外部中断0,给他们高电平就为下降沿触发,给他们低电平就为低电平触发。

  这样对于中断的了解就比较清楚了吧!接下来的内容里我们会通过学习其它内容,对这里有更深入的了解。

  附:中断优先权图

  • 分享到:

 

猜你喜欢

  • 主 题:英飞凌XMC4000支持EtherCAT®通讯的伺服/IO控制方案介绍
  • 时 间:2024.04.25
  • 公 司:英飞凌&骏龙科技

  • 主 题:安森美数字助听芯片的创新
  • 时 间:2024.05.09
  • 公 司:安森美

  • 主 题:IO-Link 技术介绍及相关设计解决方案
  • 时 间:2024.05.22
  • 公 司:ADI & Arrow