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

📄 cs15-1.c

📁 《手把手教你学单片机的C程序设计》及实验程序
💻 C
字号:
#include<REG51.H>			
#define uint unsigned int		
#define uchar unsigned char	
//***********************************
uchar code SEG7[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar code ACT[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
uint hour;					
uchar min,sec,cnt;			
void delay(uint k);				
//**********************************
struct deda					
{							
uint dhour;					
uchar dmin;					
uchar dsec;					
};							
struct deda dis_buff;			
//***********************************
void initial(void)				
{							
TMOD=0x01;					
TH0=-(50000/256);			
TL0=-(50000%256);			
	ET0=1;					
	TR0=1;					
	EA=1;					
}							
//***********************************
void time0(void) interrupt 1		
{							
TH0=-(50000/256);			
TL0=-(50000%256);			
cnt++;						
if(cnt>=20){sec++;cnt=0;}		
if(sec>=60){min++;sec=0;}
if(min>=60){hour++;min=0;}	
if(hour>9999){hour=0;}		
dis_buff.dhour=hour;			
dis_buff.dmin=min;			
dis_buff.dsec=sec;			
}							
//***********************************
void main(void)				
{							
	initial();					
	for(;;)					
	{						
		P0=SEG7[dis_buff.dhour%10];
		P2=ACT[4];	
		delay(1);		
		P0=SEG7[(dis_buff.dhour%100)/10];
		P2=ACT[5];	
		delay(1);		
		P0=SEG7[(dis_buff.dhour%1000)/100];
		P2=ACT[6];	
		delay(1);		
		P0=SEG7[dis_buff.dhour/1000];
		P2=ACT[7];	
		delay(1);
		P0=SEG7[dis_buff.dsec%10];
		P2=ACT[0];	
		delay(1);		
		P0=SEG7[dis_buff.dsec/10];
		P2=ACT[1];	
		delay(1);		
		P0=SEG7[dis_buff.dmin%10];
		P2=ACT[2];	
		delay(1);		
		P0=SEG7[dis_buff.dmin/10];
		P2=ACT[3];	
		delay(1);
	}						
}							
//***********************************
void delay(uint k)				
{							
uint data i,j;					
for(i=0;i<k;i++){				
for(j=0;j<121;j++)				
{;}}							
}				

⌨️ 快捷键说明

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