专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

自制的电子表程序

作者:佚名   来源:本站原创   点击数:  更新时间:2013年06月12日   【字体:
买51hei开发板的同学们可以烧到你的单片机里面试试什么效果。
注意:烧之前先校核时间。默认是1点05分开始的。

#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dula=P2^6;
sbit wela=P2^7;
uchar sec,min,hour,secl,sech,minl,minh,hourl,hourh,a;
uchar code tab[]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f);
void initial();
void  delay(uchar z);
void spark();
void main()
{
 initial();
 
  while(1)
  {
 
   
   if(a==20)
 {
    a=0;
     spark();
   //////////////////
   sec++;
 if(sec==60)
 {
  sec=0;
  min++;
  if(min==60)
  {
   min=0;
   hour++;
    if(hour==24)
    {
     hour=0;
    }
  }
 }
/////////////////////////
    sech=sec/10;
    secl=sec%10;
    minh=min/10;
    minl=min%10;
    hourh=hour/10;
    hourl=hour%10;  
    
 }
   display(secl,sech,minl,minh,hourl,hourh);
  }
 
 
}
void initial()
{
dula=0;
wela=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
hour=1;
min=4;
sec=56;
}
void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f)
{
   P0=0x00;
         dula=1;
   P0=tab[a];
   dula=0;
   delay(1);
   P0=0xff;
   wela=1;
   P0=0xef;
   wela=0;
   P0=0;
   /////////
   dula=1;
   P0=tab[b];
   dula=0;
   delay(1);
   P0=0xff;
   wela=1;
   P0=0xf7;
   wela=0;
   P0=0;
   dula=1;
   P0=tab[c];
   dula=0;
   delay(1);
   P0=0xff;
   wela=1;
   P0=0xfd;
   wela=0;
   P0=0;
   dula=1;
   P0=tab[d];
   dula=0;
      delay(1);
   P0=0xff;
   wela=1;
   P0=0xfe;
   wela=0;
   P0=0;
   dula=1;
   P0=tab[e];
   dula=0;
   delay(1);
   P0=0xff;
   wela=1;
   P0=0x7f;
   wela=0;
   P0=0;
   dula=1;
   P0=tab[f];
   dula=0;
   delay(1);
   P0=0xff;
   wela=1;
   P0=0xbf;
   wela=0;
  
}
void  delay(uchar z)
{
 uchar x,y;
 for(x=z;x>0;x--)
 for(y=110;y>0;y--);
}
void timer0()interrupt 1
{
 
 TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
 a++;
  
}
void spark()
{
  wela=1;
  P0=0X49;
  P0=0;
  dula=1;
  P0=0XDB;
  delay(100);
  wela=0;
}
关闭窗口

相关文章