51单片机外部中断

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

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


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

1.       配置中断类型 IT-X 1代表对应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>
}

 
 

 

示例代码如下

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值