89C51中断系统介绍(外部中断)

发布者:mancozc最新更新时间:2022-04-21 来源: eefocus关键字:89C51  中断系统  外部中断 手机看文章 扫描二维码
随时随地手机看文章

0、89C51中断系统分类:

分为三种:


1)、外部中断


2)、定时器中断


3)、串口中断


1、中断的概念

 

中断触发后,CPU会从主函数调到中断函数中。

外部中断1: 


电平触发:P3.2 是0


下降沿触发:p3.2电平:1变为0则触发。


外部中断2同1。


2、中断允许控制

EA是总开关;EX0、ET0、EX1、ET1、ES为分开关。


3、中断请求标志

4、中断优先级 

2个优先级,故可实现2级嵌套。 INT0和INT1两个外部中断,T0、T1两个定时器中断,RX和TX为一个串口中断。


硬件中断优先级最高,串口优先级最低。


5、中断响应条件

6、中断优先级的三条原则:

1)CPU同时接受到多个中断时,首先响应优先级别最高的中断请求。


2)正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。


3)正在进行的低优先级中断服务,能被高优先级中断请求所中断。

7、 使用中断,程序员需要做的:


1)想使用的中断是哪个?------>选择相应的中断号;


2)希望的触发条件是什么?------>下降沿触发还是低电平触发?


3)希望中断之后干什么?


以外部中断0为例分析:


主程序中需要以下代码:


EA =1;//打开总中断开关


EX0 = 1;//开外部中断0;


IT0 = 0/1;//设置外部中断的触发方式0是低电平触发,1是下降沿触发


中断服务函数:


void int0() interrupt 0 using 1


{undefined


    //do sth.


}


中断函数没有返回值,故void


int0为中断函数名,可以自定义


interrupt 表示为中断服务函数


0 表示中断号


using 1     //(0-3),4组不同的寄存器,保存到哪个寄存器,一般可以不用加。  


注意:中断函数中的内容尽量的短,少占用CPU。


8、总结:

最小系统 一文中,如上图,P3.2引脚接的是外部中断0,当我们设置 IT0 = 0;即外部中断为低电平时触发中断;


实际中,我们可以把设备的某以一端接在P3.2引脚上,当设备故障是,P3.2为低电平,此时触发中断,蜂鸣器报警或发光二极管亮。


中断类似信号,不用我们去操作,也不用我们调用,只要触发中断条件,会自动从主函数中调到中断函数中。


9、外部中断示例 

#include 

sbit led0 = P0^0;

unsigned char code smg_du[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

//12MHz下,延时50us

void delay_50us(unsigned int t)

{

    unsigned char j;

    for(;t>0;t--);

        for(j =19;j>0;j--);

}

void main()

{

    unsigned char i;

    EA = 1; //打开总中断开关

    EX0 = 1; //打开外部中断0

    IT0 = 1;//触发方式设置

    while(1)

    {

        for(i =0;i<10;i++)

        {

            P1 = smg_du[i];

            delay_50ms(10);

        }

    }

}

 

void int0() interrupt 0

{

    led0 = 0;

    delay_50ms(20);

    led0 = 1;

}


P3^2引脚出现低电平,就会触发中断,从main函数中立马调到 中断函数int0中,函数执行完,又跳回到main函数跳出时的位置,接着执行。

关键字:89C51  中断系统  外部中断 引用地址:89C51中断系统介绍(外部中断)

上一篇:80C51串口通信
下一篇:80C51定时器中断

推荐阅读最新更新时间:2024-11-24 07:45

STM8S单片机外部中断唤醒
一、 STM8S 外部中断进行唤醒 先了解一下STM8S的中断资源 再看看STM8S的中断管理。STM8S采用软件优先级和硬件优先级来控制一个中断的响应,先比较软件优先级只有当软件优先级一致时才会比较硬件优先级,由于硬件优先级具有唯一性,这样便保证了某一时刻定会只有一个中断被处理。 要使用外部中断,只需简单的配置一下EXTI_CR1寄存器,并将主程序main的软件优先级置为0即可。默认情况下自复位开始,主程序的软件优先级被设置为3,处于最高软件优先级,仅有TRAP,TLI,RESET中断能够打断,其余的中断都是不会被响应的。 为了防止中断过程中被别的优先级高的中断所打断,可以将当前优先级置为最高3级。 代码如下:
[单片机]
STM8S单片机<font color='red'>外部中断</font>唤醒
C51/C52单片机的中断(EXTI)介绍及实现(二)
一、什么是中断 重复说明,CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生);CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断 。 简单来说就是:打断当前正在做的事,去执行另外的事,执行完后再回来接着做前面被打断的事,如图所示: 程序中的表现方式: 引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统。 二、51单片机
[单片机]
C51/C52单片机的中断(<font color='red'>EXTI</font>)介绍及实现(二)
stm32外部中断实验
// 上一篇是关于串口通信的,用到GPIO的复用,将GPIO复用为usart串口; // 此处是利用按键进行中断处理,这里配置GPIO模式为输入,因为要接收按键的状态; //GPIO端口有很多,ABCD....但是中断只有22个,其中0~15个中断中断线与IO端口一一对应,需要配置GPIO与中断线的映射关系,(类似于端口复用)这里利用了函数:SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA,EXTI_PinSource0); // 这里需要注意,使用的外部中断,先打开SYSCFG时钟,不然没法实现GPIO与中断线的映射。 #include stm32f4xx.h void init_led
[单片机]
STM32外部中断总结
该文章是学习了STM32后所写,是对STM32的小小的理解。在文中若有错误指出请指正,不胜感激。 STM32有最多68个可屏蔽的中断通道,有16个可编程的优先级。对于STM32F103ZE芯片,其内部包含了19个边沿检测器用来产生中断或者事件请求。对于外部中断只用了16个外部触发输入线。每一个外部输入线都能够被独立的屏蔽,pending register的寄存器能够保存输入线的状态,这个寄存器不能通过硬件自动清零,必须使用软件来清零; 外部中断的内部连接图如下: 触发信号通过输入线进入检测器,检测器的功能是可以设置的,就是通过上边两个边沿检测器即上升沿出发选择寄存器和下降沿出发选择寄存器。从图中就可以看出外部中断/事件触发
[单片机]
基于89C51单片机的开关电源优化设计
引言          开关电源是利用现代电力电子技术控制功率开关管(MOSFET,IGBT)开通和关断的时间比率来稳定输出电压的一种新型稳压电源。从上世纪90年代以来开关电源相继进入各种电子、电器设备领域,计算机、程控交换机、通讯、电子检测设备电源、控制设备电源等都已广泛地使用了开关电源。利用单片机控制的开关电源,可使开关电源具备更加完善的功能,智能化进一步提高,便于实时监控。其功能主要包括对运行中的开关电源进行检测、自动显示电源状态;可以通过按键进行编程控制;可以进行故障自诊断,对电源功率部分实现自动监测;可以对电源进行过压、过流保护;可以对电池充放电进行实时控制。           开关电源的系统结构     
[电源管理]
基于<font color='red'>89C51</font>单片机的开关电源优化设计
89C51单片机为核心器件的自动控制系统编码译码显示实验电路设计
引 言 在日常数字逻辑电路实验中编码译码显示实验电路是编码、译码、显示三个电路的综合运用, 在数字逻辑实验电路中具有重要的地位, 在实验的过程中, 时常会出现显示结果的抖动, 经研究出现这种现象主要原因是:编码电路的编码信号输入采用手工拨盘方式, 产生的编码输入信号往往不稳定; 另外, 电路控制性能较差,不能达到自动复位, 为此有必要对现有电路进行改进,在电路的设计上采用89C51 单片机为控制电路制作而成, 自动提供稳定编码输入信号, 显示结果稳定性和电路控制性能大大提升, 提高了教学实验质量。 1 编码译码显示实验电路的基本结构 编码译码显示电路的基本结构如图1 所示, 主要由控制电路、编码信号发生器、编码译码显示电路等组
[单片机]
以<font color='red'>89C51</font>单片机为核心器件的自动控制系统编码译码显示实验电路设计
STM32 EXTI外部中断小结
本文为野火教程学习笔记。 EXTI原理解释 EXTI 简介   EXTI (External interrupt/event controller) ——外部中断/事件控制器,其用于管理外设中GPIO和一些其他外设的中断。可以实现单独对某一线配置中断触发方式等操作。 EXTI原理框图解释   边沿检测器检测外部的信号,上升沿和下降沿触发选择寄存器具体的配置会决定边沿检测电路检测何种边沿。   检测到对应边沿后,检测电路输出1,软件中断事件寄存器的配置决定是否产生中断或事件,相当于小开关。   若配置响应这个边沿,则小开关输出1。下面由请求挂起寄存器和事件屏蔽寄存器确定产生中断还是事件。这两个相当于选择开关。  
[单片机]
STM32 <font color='red'>EXTI</font><font color='red'>外部中断</font>小结
51单片机基础之外部中断(一)
代码: #include reg51.h typedef unsigned char u8; typedef unsigned int u16; sbit LED=P2^0; sbit KEY=P3^2; void delay(u16 i) { while(i--); } void EXIT0_Init(void) //外部中断初始化 { IT0=1;//跳变沿触发方式(下降沿),低电平触发 EX0=1;//打开INT0的中断允许,打开外部中断0允许 EA=1;//打开总中断 } void main(void) { EXIT0_Init(); while
[单片机]

推荐帖子

GDDR5入门
GDDR5虽然能够在很多的显卡上看到,但是由于GDDR5提供的超高带宽一直被定义为“高端”器件。附件中有GDDR5的关键技术介绍,大家可以看到实际上一些新机制的引入使的GDDR5比DDR3还要简单一些。GDDR5入门
wstt 综合技术交流
AD采样信号 bin 文件 转换WAV文件方案
AD采样到的信号,保存了格式为bin文件,想设计转换为WAV文件software,现在有bin文件和对应的WAV文件。希望找出这两个文件的转换方案,如有解决思路或者需要BIN,与WAV文件进行分析请联系:劳小姐,电话:15918785570,QQ:179204700。谢谢。AD采样信号bin文件转换WAV文件方案
jessica33lyj 单片机
基于虹膜的人体特征识别方法研究
  人体特征识别方法,也叫生物特征识别方法,是指利用人的独特的生理及行为特征进行鉴别的身份验证的技术手段。它的产生及发展源于人们在迈进数字时代的过程中对身份验证方法的准确性与便捷性不断提高的需求。传统的身份验证方法主要包括身份标志物(如钥匙、证件等)以及身份标志信息(如账号、密码等),或者以上二者的结合(如银行卡等)。人们在使用过程中发现,他们都存在着共同的缺点:易于遗失和伪造。而且传统的身份验证系统并不能有效的识别持有这些身份标志事物的人是否是真正的拥有者。因此,一旦被冒充,真正的拥有者将遭受
dtcxn 医疗电子
困惑已久的地址问题
刚上手WINCE,做一个CAMERA方面的驱动,主要是将inputbuffer中的数据通过驱动转换为outputbuffer,而且inputbu和outputbu都需要和应用程序交互,中间就有一些地址的映射转换。现在是被这些地址搞糊涂了。向各位大侠请教:首先程序里用pPhytSrcAddr/*pVirtSrcAddr*/=(PBYTE)HalAllocateCommonBuffer(&Adapter1,0x71000,&g_PhysSrcAddr,FALSE);申
xiangbing 嵌入式系统
关于PIC下载器的求助
本人手上目前有一个ICD3,能否用来开发PIC单片机,但是MPLAB好多型号都不支持ICD3下载,求教一下,是否有第三方下载软件可供使用啊关于PIC下载器的求助怎么可能,ICD3支持所有型号。这就是官方最推荐的仿真器。最好采用新的MPLAB_X平台。mplabx是目前主流选择这么高端的东东怎么会不行呢。。。。hbm04发表于2015-1-2014:13最好采用新的MPLAB_X平台。 我来试试,可能一开始没设置好,没用起来就一直闲着,这几天再弄弄看
李俊锋 Microchip MCU
噪声系数测量两大方法详解,你get了吗?
噪声系数基础知识一览定量表示噪声系数和噪声因子有很多方法。最早的定义之一由HaroldFriis在20世纪40年代所提出。在Friis的定义中,噪声因子(噪声系数的线性等效物理量)是特定信号通过特定组件时的信号比(SNR)的降低量。噪声因子和噪声系数均是无单位物理量,噪声因子以线性方式表示,而噪声系数则以对数形式表示。等式1.噪声因子作为SNR的函数如等式1所示,如果LNA输入端的信号的SNR为100dB,噪声系数为5dB,那么输出端的SNR为10
okhxyyo RF/无线
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved