51单片机外部中断

来源:互联网 发布:陈华编程社区 编辑:程序博客网 时间:2024/05/16 07:38

51单片机共有两个外部中断,单片机的中段系统如下

其中外部中断分别是INT0INT1,关联IO口为P3.2 P3.3


使用这两个中断的步骤如下

1.       配置中断类型 IT-X1代表对应IO口下降沿中断0代表对应IO口低电平中断

注意低电平中断进入之后如果IO口不取消低电平,单片机会不停地进中断

2.打开对应的中断开关 EX-X,1打开中断0关闭中断

3.打开总中断开关EA,1打开 0关闭

4.设定中断优先级(也可以不设定,按照系统默认优先级处理)

5.软件中编写中断处理函数

 

#include "exti.h"static void Exti0Init(u8 mode)//P3.2Ò{if(mode)mode = 1;EA = 1;//EX0 = 1;//IT0 = mode; //1:}static void Exti1Init(u8 mode)//P3.3Ò{if(mode)mode = 1;EA = 1;//EX1 = 1;//IT1 = mode; }void ExtiInit(u8 ch,u8 mode){switch(ch){case 0:Exti0Init(mode);break;case 1:Exti1Init(mode);break;}}void Exti0Handle(void) interrupt 0{//doso<span style="color:windowtext;">mething here</span>}void Exti1Handle(void) interrupt 2{<pre name="code" class="cpp">    //doso<span style="color:windowtext;">mething here</span>}


 

示例代码如下

 



0 0
原创粉丝点击