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

標(biāo)題: 51時(shí)鐘小制作 [打印本頁(yè)]

作者: qhdfnftyzt    時(shí)間: 2015-7-10 19:25
標(biāo)題: 51時(shí)鐘小制作
以下是時(shí)鐘的程序,希望能幫助大家!

#include <reg51.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit LS138A = P2^2;   //定義138譯碼器的輸入A腳由P2.2控制
sbit LS138B = P2^3;     //定義138譯碼器的輸入腳B由P2.3控制
sbit LS138C = P2^4;  //定義138譯碼器的輸入腳C由P2.4控制
sbit k1=P2^0;
sbit k2=P2^1 ;
sbit k3=P2^5;
bit flag;
uchar sec=0,min=0,hour=12;
uchar count_10ms, DelayCNT;   // 10ms計(jì)時(shí),延時(shí)
int m=1;
//此表為 LED 的字模, 共陰數(shù)碼管 0-9  -
unsigned char code Disp_Tab[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};
void delay(uint z)
{
int x,y;
for(x=z;x>0;x--)
for(y=20;y>0;y--);
}
void timer()
{
TMOD=0x01;         //定時(shí)器0的方式1
TH0=0xdc;        //TH0初值 220
TL0=0x00;        //TL0初值 0
EA=1;         //開(kāi)總中斷
ET0=1;      //打開(kāi)TO中斷
TR0=1;      //運(yùn)行TO中斷
}
void key()
{ int t;
  if(k1==0)
   {   
    delay(30);
    if(k1==0)
     { while(!k1);
    t++;
    m=t%2;  //求余數(shù)運(yùn)算,不是1就是0;
   }
   }
}

/************主函數(shù)**********************/
main()
{ unsigned int i ;
   unsigned int LedOut[10];
   timer();
  while(1)  //進(jìn)入循環(huán)狀態(tài)
  {  
   if(m==0)
   {
    if(k2==0)
  {
   delay(30);
   if(k2==0)
   while(!k2);
   hour++;
  }
  if(hour>=24)
  hour=0;
  if(k3==0)
  {
   delay(30);
   if(k3==0)
  
   while(!k3);
  min++;
  }
  if(min>=60)
  min=0;
   }
  LedOut[0]=Disp_Tab[hour/10];
     LedOut[1]=Disp_Tab[hour%10];
     LedOut[2]=Disp_Tab[10];
     LedOut[3]=Disp_Tab[min/10];
  LedOut[4]=Disp_Tab[min%10];   
     LedOut[5]=Disp_Tab[10];  
     LedOut[6]=Disp_Tab[sec/10];     
     LedOut[7]=Disp_Tab[sec%10];               

  for( i=0; i<9; i++)  //實(shí)現(xiàn)8位動(dòng)態(tài)掃描循環(huán)
  {  
   P0 = LedOut[i];  //將字模送到P0口顯示
     
   switch(i)   //使用switch 語(yǔ)句控制位選  也可以是用查表的方式 學(xué)員可以試著自己修改      
      {     
   case 0:LS138A=0; LS138B=0; LS138C=0;  break;         
         case 1:LS138A=1; LS138B=0; LS138C=0;  break;              
         case 2:LS138A=0; LS138B=1; LS138C=0;  break;
         case 3:LS138A=1; LS138B=1; LS138C=0;  break;
   case 4:LS138A=0; LS138B=0; LS138C=1;  break;
   case 5:LS138A=1; LS138B=0; LS138C=1;  break;
   case 6:LS138A=0; LS138B=1; LS138C=1;  break;
   case 7:LS138A=1; LS138B=1; LS138C=1;  break;
   
      }
       delay(10);
   }
   
     
  }   
}
void timer1() interrupt 1   // 中斷函數(shù)
{
  TH0=0xdc;
TH0=0x00;
     key();
if(m)
{
{
count_10ms++;
}
if(count_10ms==10)
{
  count_10ms=0;
  sec++;
  if(sec>=60)
  {
   sec=0;
   min++;
   if(min>=60)
   {
    min=0;
    hour++;
    if(hour>=24)
    {
    hour=0;sec=0;min=0;
    }
   }
  }
}

}
}


作者: admin    時(shí)間: 2015-7-10 19:40
很好,謝謝分享,能提供一下電路圖嗎?
作者: hugonn    時(shí)間: 2017-10-15 22:02
樓主好,我自己有一個(gè)單片機(jī)開(kāi)發(fā)板,用你的程序燒錄了下去,現(xiàn)實(shí)完美,我想問(wèn)一下,下面代碼中bit flag的作用是什么?我把它刪掉了燒錄,也現(xiàn)實(shí)正常?
sbit k1=P2^0;
sbit k2=P2^1 ;
sbit k3=P2^5;
bit flag;
uchar sec=0,min=0,hour=12;




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 久久久夜色精品亚洲 | 男人天堂久久 | 日韩激情久久 | 国产又粗又黄又爽又硬的视频 | 四虎影院最新网址 | 在线中文字幕 | 午夜精品视频 | 美利坚合众国av | 在线理论片 | 色婷婷基地 | 日日操夜夜撸 | 国产成人精品三级麻豆 | 亚洲天堂第一页 | 国产欧美日韩在线 | 天天综合色 | 国产精品一区二区三区在线 | 日韩综合精品 | 国产高清在线视频 | 毛片网站免费观看 | 免费一级片| 欧美日韩一区二区三区 | av观看免费| 国产精品视频播放 | 日韩欧美国产一区二区三区 | av在线免费观看网址 | 亚洲成人免费在线 | 午夜视频一区 | 亚洲欧美在线播放 | 日韩欧美在线一区 | 一本一道久久a久久精品蜜桃 | 日韩不卡在线 | 亚洲三级小说 | 精品国产99久久久久久宅男i | 欧美成人综合 | 爱爱免费网站 | 日本天堂网 | 色鬼久久 | 国产成人亚洲精品自产在线 | 日韩欧美中文在线 | 欧美午夜在线观看 | 日韩免费一级片 |