首页 > 代码库 > 51单片机第五弹---外部中断
51单片机第五弹---外部中断
写了半天掉线了。。。
不写了上定义。。。
什么叫中断
中断是指CPU在执行当前程序的过程中,由于某种随机出现的外设请求或CPU内部的异常事件,使CPU暂停正在执行的程序而转去 执行相应的服务处理程序;当服务处理程序运行完毕后,CPU再返回到暂停处继续执行原来的程序。
51单片机的中断
80c51提供有5个中断源,分别为:2个外部中断,2个定时/计数器中断,1个串口发送/接收中断。并且具有2个中断优先级,可以实现2级中断服务程序嵌套。
首先要弄中断设置 ,中断原理图如下:
以 设置INT0为例:IT0=1;EX0=1;
最后打开总中断 EA=1;
如图 :
2个外部中断分别接 p3.2 p3.3 即开关K3 K4 ,也就是说按开关K3转到外部中断0程序,按开关K4转到外部中断1程序
/******************************************************************************* * 实 验 名 : 外部中断实验 * 使用的IO : 外部中断0使用P3.2 外部中断1使用P3.3 LED使用P2 * 实验效果 : 按K3 LED左移 按K4 LED右移 * 注 意 : *******************************************************************************/ #include <reg52.h> #include <intrins.h> #define GPIO_LED P2 #define GPIO_DIG P0 #define GPIO_KEY P1 #define uint unsigned int #define uchar unsigned char void Delay10ms(); void IntConfiguration(); sbit K3=P3^2; sbit K4=P3^3; sbit LSA=P2^2; sbit LSB=P2^3; sbit LSC=P2^4; uchar code DIG_CODE[17]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; uchar Value=http://www.mamicode.com/0;>51单片机第五弹---外部中断
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。