现在的位置: 首页 > 综合 > 正文

51单片机(AT89C52)外部中断程序

2012年10月06日 ⁄ 综合 ⁄ 共 356字 ⁄ 字号 评论关闭
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
#define DELAY 1000
void delay(uint z)	//1ms
{
	uint x,y;
	for(x=z;x>0;x--)
		for(y=111;y>0;y--);
}
void main()
{
	uchar i,dt;
	EA=1;	//开总中断
	EX1=1;	//开外部中断1
//	IT1=0;	//设置外部中断1为低电平触发
	IT1=1;	//设置外部中断1为下降沿触发
	while(1)
	{
		dt=0x01;
		for(i=0;i<8;i++)
		{
			P2=dt;
			delay(DELAY);
			dt<<=1;
		}
	}	
}
void exter1() interrupt 2
{
	P2=0xff;
}
	

无中断发生,则单灯循环点亮,产生中断,则全部点亮。

 

抱歉!评论已关闭.