⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 中断系统的应用(二).c

📁 基于Proteus的51系列单片机设计与仿真
💻 C
字号:
/***************************************************************************
                            中断系统的应用(二)
*****************************************************************************/
#include"reg51.h"
#define uint unsigned int
#define uchar unsigned char
sbit P1_0=P1^0;
const tab1[]={0xf0,0x0f0,0xf0,0x0f0,0xf0,0x0f0,      //同时点亮4个灯
              0xaa,0x55,0xaa,0x55,0xaa,0x55,0xff, };        
const tab2[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,     //正向流水灯
             0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,     //反向流水灯
             0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,     //正向流水灯
             0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,};   //反向流水灯

uchar a;
void delay()
{   uint i,j;
	for(i=0;i<256;i++)
		for(j=0;j<256;j++)
				{;}
}
/**************************中断程序1***********************************/
void  int1() interrupt 0 
{  a=a+1;
     if (a==1)
     { uchar i;
        for(i=0;i<14;i++)
           {	P0=tab1[i];
				delay();}
	  }
	  if (a==2)
     { uchar i;
        for(i=0;i<33;i++)
           {	P0=tab2[i];
				delay();}
		a=0;
	  }
}
/**********************************************************************/
/**************************中断程序2***********************************/
void  int2() interrupt 2
{  P1_0=0;
   delay();
   P1_0=1;
}
/**********************************************************************/
void main(void)
{   IE=0x85;
    IP=0x04;
	TCON=0x00;
	a=0;
     while(1)            
         { uchar x;    
	               for(x=0;x<23;x++)
		              {   P0=~P0;
				  delay();}
         }  
 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -