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

📄 shizhong1-1.c

📁 设计中主要是数态显示
💻 C
字号:
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
unsigned char code table0[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//段码表共阳极
unsigned char code table2[]={0xFB,0xF7,0xEF,0xDF,0xBF,0x67F};//位码表
void chushihua();
void display(uchar aa,uchar bb,uchar cc,uchar dd,uchar shi,uchar ge);
void delay(uchar z);
uchar aa,bb,cc,dd,shi,ge,ss,num,shu,temp;
void main()
{
  chushihua();
  while(1)
    {
	 display(aa,bb,cc,dd,shi,ge);
	}
}
void delay(uchar z)
{
  uchar x,y;
  for(x=z;x>0;x--)
   for(y=110;y>0;y--);
}
void chushihua()
{
   num=23;
   shu=58;
   temp=0;
   aa=num/10;
   bb=num%10;
   cc=shu/10;
   dd=shu%10;
   shi=temp/10;
   ge=temp%10;
   P2=0xff;
   delay(10);
  TMOD=0X01;//选择T0工作在模式1
  TH0=(65536-46080)/256;
  TL0=(65536-46080)%256;//赋初值50毫秒晶振11.0592MHZ
  EA=1;//开总中断
  ET0=1;//开定时器0中断
  TR0=1;//启动定时器0 
}
void display(uchar aa,uchar bb,uchar cc,uchar dd,uchar shi,uchar ge)
{
	  if(ss==20)
	   {
	       ss=0;
		   temp++;
		}
		if(temp==60)
		  {
		   temp=0;
		   shu++;
		  }

	   shi=temp/10;
	   ge=temp%10;	   		  
	   P2=0xff;
	   delay(5);
	   P0=table0[shi];
	   delay(5);
	   P2=0xf7;
	   delay(5);

	   P2=0xff;
	   delay(5);
	   P0=table0[ge];
	   delay(5);
	   P2=0xfb;
	   delay(5);
	   if(shu==60)
	     {
	      shu=0;
		  num++;
	     }
       cc=shu/10;
	   dd=shu%10;	   		  
	   P2=0xff;
	   delay(5);
	   P0=table0[cc];
	   delay(5);
	   P2=0xdf;
	   delay(5);

	   P2=0xff;
	   delay(5);
	   P0=table0[dd];
	   delay(5);
	   P2=0xef;
	   delay(5);
	   if(num==24)num=0;
	   aa=num/10;
	   bb=num%10;	   		  
	   P2=0xff;
	   delay(5);
	   P0=table0[aa];
	   delay(5);
	   P2=0x7f;
	   delay(5);

	   P2=0xff;
	   delay(5);
	   P0=table0[bb];
	   delay(5);
	   P2=0xbf;
	   delay(5);  
}
void timer0()interrupt 1
{
  TH0=(65536-46080)/256;
  TL0=(65536-46080)%256;//重赋初值 
  ss++;
}

⌨️ 快捷键说明

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