久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5638|回復: 4
打印 上一主題 下一主題
收起左側

實時間鐘帶一路報警輸出

[復制鏈接]
跳轉到指定樓層
樓主
ID:16763 發(fā)表于 2009-12-13 22:47 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
//有一路報警輸出,可設置報警時間
//實間時間請調整TH1,TL1值使更準確
//designed by ljc,gdwm ceramic com,.ltd
#include<at89x51.h>
#define uchar unsigned char
#define uint unsigned int
#define segment P0  //數(shù)碼管顯示
#define wei P2   //數(shù)碼管位控制
uchar hour,min,sec;  //定義小時,分
uchar ms;               //當前毫秒
uchar alarm_h1,alarm_m1;//報警設置,hour,minute;
uchar alarm_h2,alarm_m2;
sbit flash=P1^0;        //秒閃爍標志
sbit seth=P3^0;      //小時設置
sbit setm=P3^1;   //分設置
sbit seta1h=P3^2;  //alarm1 set
sbit seta1m=P3^3;  //alarm1 set
sbit alarm_out=P1^7;    //設定時間到,報警輸出
bit hour_min_sign;      //時,分設置標志
bit pop_key;            //鍵彈起標志
uchar code design[10]={0x28, 0x7E, 0xA2, 0x62, 0x74, 0x61, 0x21, 0x7A, 0x20, 0x60};//0,1,2,3,4,5,6,7,8,9
//*************************************************
//**********
void delay(uint i)
{   uint j;
    for(;i>0;i--)
 for(j=0;j<120;j++)
 {;}
}
//*************************************************
//**********
void initial()
{   TMOD=0x01;
    TH0=0X3C; //50ms定時
 TL0=0xc0;
    EA=1;
    ET0=1;
 TR0=1;
 //報警時間初使化
 alarm_h1=7;
 alarm_m1=0;
 alarm_h2=14;
 alarm_m2=0;
}
//*************************************************
//**********
void time0_int() interrupt 1
{   TH0=0x3c;
    TL0=0xc0;
    if(ms<20)
    {   ms++;}
 else
 {   ms=0;
     sec++;
     if(sec>59)
     {   sec=0;
      min++;
   if(min>59)
   {   min=0;
          hour++;
          if(hour>=24)
       {   hour=0;}
   }
  }
 }
 if(ms>10){flash=1;}
 else{flash=0;}
}
//************************************************
//*********
void display(uchar h,m,ah1,am1)
{   uchar hh,hl,mh,ml,hh1,hh2,mm1,mm2;
    hh=h/10;
 hl=h%10;
 mh=m/10;
 ml=m%10;
 hh1=ah1/10;hh2=ah1%10;mm1=am1/10;mm2=am1%10; //報警時間顯示
 //
 segment=design[hh];
 wei=0xef;
 delay(2);
 //
 segment=design[hl];
 wei=0xdf;
 delay(2);
 //
 segment=design[mh];
 wei=0xbf;
 delay(2);
 //
 segment=design[ml];
 wei=0x7f;
 delay(2);
 //報警顯示
 segment=design[hh1];
 wei=0xfe;
 delay(5);
 segment=design[hh2];
 wei=0xfd;
 delay(2);
 segment=design[mm1];
 wei=0xfb;
 delay(2);
 segment=design[mm2];
 wei=0xf7;
 delay(2);
}
//************************************************
//鍵防拌處理**********
void scan_key(bit set_h_m)
{   if(!set_h_m)
    {   delay(30);
     if(!set_h_m)
  {   delay(10);
      hour_min_sign=1;
  }
  else{hour_min_sign=0;}
 }
 while(set_h_m&hour_min_sign)//等街鍵彈起
 {   delay(30);
     if(set_h_m&hour_min_sign)
  {   delay(10);
         pop_key=1; 
  }   //鍵彈起標志
  hour_min_sign=0;
 }                          
}
//時間設置****************************************
//**********
void time_set()
{   pop_key=0;
    scan_key(seth);
    if(pop_key)      //小時鍵按下,小時加1
 {
     if(hour>23)
  {   hour=0;}
  else{hour++;}
  display(hour,min,alarm_h1,alarm_m1);
 }
 pop_key=0;
 //
 scan_key(setm);    //分鍵按下,分加1
 if(pop_key)      
 {
     if(min>59)
  {   min=0;}
  else{min++;}
  display(hour,min,alarm_h1,alarm_m1);
 }
 pop_key=0;
}
//***********************************************
//報警時間設置:小時,分鐘*
//有報警時間設置功能,延時關閉功能
void alarm()                 

 //報警1
 pop_key=0;
 scan_key(seta1h);              //報警1設置
 if(pop_key)
 {   alarm_h1++;
     if(alarm_h1>23)
  {   alarm_h1=0;}
 }
 pop_key=0;
 display(hour,min,alarm_h1,alarm_m1);
 scan_key(seta1m);
 if(pop_key)
 {   alarm_m1++;
     if(alarm_m1>59)
  {   alarm_m1=0;}
 }
 display(hour,min,alarm_h1,alarm_m1);  
 if((hour==alarm_h1)&(min==alarm_m1))//相等
    {   alarm_out=0;}     //報警輸出

//***********************************************
//*************************  
void main()
{   initial();
    for(;;)
 {   time_set();   //時間設置
  display(hour,min,alarm_h1,alarm_m1);
  alarm();
 }
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:18010 發(fā)表于 2009-12-21 14:43 | 只看該作者
大哥是不是在主函數(shù)里面少了個while(1)語句!
回復

使用道具 舉報

板凳
ID:18010 發(fā)表于 2009-12-21 14:51 | 只看該作者
對不起,是我搞錯了。哈哈!
回復

使用道具 舉報

地板
ID:61326 發(fā)表于 2014-5-4 11:02 | 只看該作者
謝謝分享
回復

使用道具 舉報

5#
ID:62266 發(fā)表于 2014-5-25 19:29 | 只看該作者
怎么就一函數(shù)。。。。。實物圖呢?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品一区在线观看 | 综合五月婷 | 婷婷在线免费 | 亚州精品天堂中文字幕 | 免费观看一级毛片 | av免费在线观看网站 | 日本a∨视频| 日日射夜夜骑 | 天天射色综合 | 成人在线免费视频观看 | 啪啪精品| 国产99免费 | 午夜久久久久 | 五月综合激情婷婷 | 亚洲欧美高清 | 久草中文在线观看 | 亚洲精品乱码久久久久久按摩观 | 奇米在线| 国产日韩欧美一区二区 | 国产精品日日做人人爱 | 国产一区二区三区四区 | 妹子干综合 | 精品国产乱码久久久久久果冻传媒 | 久久久久久久综合色一本 | 久久午夜国产精品www忘忧草 | 欧美在线成人影院 | 久草网在线视频 | 日批日韩在线观看 | 久久中文高清 | 91在线视频一区 | 国产成人一区在线 | 午夜小视频在线观看 | 欧美一区二区三区在线播放 | 国产精品久久久久久高潮 | 久久久精品一区 | 欧美日韩国产一区 | 精品一区二区在线观看 | 国产综合视频 | 91在线色视频 | 亚洲欧美一区二区三区1000 | 成人1区|