cs18-1.c

来自「《手把手教你学单片机的C程序设计》及实验程序」· C语言 代码 · 共 54 行

C
54
字号
#include <REG51.H>		
#define uchar unsigned char
#define uint unsigned int
uchar code SEG7[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar ACT[4]={0xfe,0xfd,0xfb,0xf7}; 
/***************************************************************/
uint data cnt;			
bit bdata bitflag;			
/**********************************************/
void init(void)					
{							
	bitflag=0;					
	EX0=1;					
	IT0=1;					
	EA=1;					
}							
/**************************************************/
void delay(uint k)				
{							
uint data i,j;					
	for(i=0;i<k;i++)			
	{						
	for(j=0;j<121;j++){;}		
	}						
}							
/**************************************************/
void main(void)				
{	uchar i;					
	init();					
	while(1)					
	{						
	if(bitflag)cnt++;			
	if(cnt>999)cnt=0;			
		for(i=0;i<100;i++)		
		{					
		P0=SEG7[cnt/100];	
		P2=ACT[2];			
		delay(1);				
		P0=SEG7[(cnt%100)/10];
		P2=ACT[1];			
		delay(1);				
		P0=SEG7[cnt%10];	
		P2=ACT[0];			
		delay(1);				
		}					
	}						
}							
/************************************************/
void extern_int0(void) interrupt 0 using 0	
{							
bitflag=!bitflag;				
}							
							

⌨️ 快捷键说明

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