• 大小: 51KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-04
  • 语言: 其他
  • 标签: 51单片机  

资源简介

51单片机电子闹钟程序及仿真图 完整的一套程序,下载即可用!

资源截图

代码片段和文件信息

//提示:k1k2k3k4分别是:小时。分钟。秒钟的调节功能。定时时间的显示功能。k5k6分别是设定第二时间定为0:01:00,启用或者关闭闹钟,




#include“AT89X52.H“
#define uchar unsigned char
uchar code seg[]={0xc00xf90xa40xb00x990x920x820xf80x800x900x880x830xc60xa10x860x8e0xbf};   //断码
uchar code pos[]={0x010x020x040x080x100x200x400x80};                                                //微码
sbit k1=P1^0;
sbit k2=P1^1;
sbit k3=P1^2;
sbit k4=P1^3;
sbit k5=P1^4;
sbit jidianqi1=P1^5;
sbit k6=P1^6;
sbit led=P1^7;
uchar k[8]={0016001600};      //01234567

uchar code seg00[]={0xc00xf90xa40xb00x990x920x820xf80x800x900x880x830xc60xa10x860x8e0xbf};   //断码
uchar code pos00[]={0x010x020x040x080x100x200x400x80};                                                //微码
uchar k00[8]={0016001600};                                                                            //01234567
uchar second; 
uchar minite; 
uchar hour; 
uchar num;   
uchar naozhongqiyongFlag;
 
uchar second00; 
uchar minite00; 
uchar hour00; 
uchar num00; 
////////////////////////////////////////////////////////////////////////////////////
void TimeCompate(void)
  {
if(naozhongqiyongFlag)
  {
    if((second00==0)&&(minite00==1)&&(hour00==0))               ///&&(minite00<=2)(naozhongqiyongFlag==1)&&  led=1
        {
      jidianqi1=0;                           
     }
 else if((second00==5)&&(minite00==42)&&(hour00==0))
        {
      jidianqi1=1;   naozhongqiyongFlag=~naozhongqiyongFlag;    led=~led;                    
     }
  }   
/* if(hour00!=0)
       { jidianqi1=1;   naozhongqiyongFlag=0;                              
   }
 if(hour00==0)  
       {
     if(minite00<1)
     { jidianqi1=1;   naozhongqiyongFlag=0;                              
     }
    else if(minite00>2)
      { jidianqi1=1;   naozhongqiyongFlag=0;                              
      }
     else
           {
          jidianqi1=0;                                  
       }


/*/
//////////////////////////////////////////

     
}




//////////////// //延时程序///////////////////////////////
void delay_5ms(void)          
{
  uchar ij;
  for(i=10;i>0;i--)
  for(j=248;j>0;j--)
  ;
}

////////////显示程序,这个写法不错啊。//////////////////////////
void disp(uchar muchar n)     
{
P2=pos[n];                          //查表法 把对应的段码送P2?
P0=seg[m];                           //查表法 把对应的未码送P0口
delay_5ms();
P2=0x00;
}


////////////显示程序,这个写法不错啊。//////222222222222222/////
void disp00(uchar xuchar y)     
{
P2=pos00[y];                          //查表法 把对应的段码送P2?
P0=seg00[x];                           //查表法 把对应的未码送P0口
delay_5ms();
P2=0x00;
}



////////////////////主程序//////////////////////////////
void main(void)


  uchar j;
  uchar p;
  TMOD=0x01;
  // TH0=-50000/256;
  // TL0=-50000%256;
  TR0=1;
  ET0=1;
  EA=1;
  second=0;
  minite=0;
  hour=0;

  second00=7;
  minite00=8;
  hour00=9;

  jidianqi1=1;
 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       7303  2014-03-04 10:23  经过测试,是一个不错的程序\444.c

     文件      12376  2014-02-28 11:34  经过测试,是一个不错的程序\444.obj

     文件     141066  2014-02-28 10:55  经过测试,是一个不错的程序\E-Clock(16I_O动态扫描)_A---222.DSN

     文件        742  2014-02-28 11:38  经过测试,是一个不错的程序\E-Clock(16I_O动态扫描)_A---222.PWI

     文件     141066  2014-02-28 10:42  经过测试,是一个不错的程序\Last Loaded E-Clock(16I_O动态扫描)_A---222.DBK

     文件      11023  2014-02-28 11:34  经过测试,是一个不错的程序\第15个

     文件       2180  2014-02-28 11:34  经过测试,是一个不错的程序\第15个.hex

     文件        135  2014-02-28 11:34  经过测试,是一个不错的程序\第15个.lnp

     文件       1610  2014-02-28 11:35  经过测试,是一个不错的程序\第15个.plg

     目录          0  2014-03-04 10:24  经过测试,是一个不错的程序

----------- ---------  ---------- -----  ----

               317501                    10


评论

共有 条评论