【51單片機】中斷程序

#include<reg52.h>

sbit dula=P2^6;
sbit  wela=P2^7;

//sbit D1=P1^0;

unsigned char num;

unsigned char 	code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00}	 ;

void delay(unsigned int z)	;

void main()
{
	EA=1;//開總中斷
	EX0=1;// 開外部中斷0
	//IT0=1;
	TCON=0x01;
	wela=1;
	P0=0xc0;
	wela=0;

	while(1)
	{
		for(num=0;num<16;num++)
		{
			D1=1;
			dula=1;
			P0=table[num];
			dula=0;
			delay(200);
		}
	}

}

void delay(unsigned int z)
{
	unsigned int x,y;
	for( x=0;x<50;x++)
		for(y=0;y<z;y++);
}

void exter0() interrupt 0	//無返回值,中斷名,中斷序號,無需聲明
{
	D1=0;	
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章