日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)的電子時(shí)鐘設(shè)計(jì)

          基于單片機(jī)的電子時(shí)鐘設(shè)計(jì)

          作者: 時(shí)間:2016-11-23 來(lái)源:網(wǎng)絡(luò) 收藏


          上圖是Proteus仿真圖,其中反相器用74lHC14,排阻用10K的,晶振用12MHZ的,電阻R1-R8用200歐的即可。但在實(shí)際制作時(shí)數(shù)碼管可以用兩個(gè)四位一體共陽(yáng)極的,這樣連接電路會(huì)更加方便??梢杂?strong>三極管代替反相器,這樣可以節(jié)約成本,但代替后無(wú)法用Proteus仿真出來(lái),下圖為代替后的圖片,三極管用常用的9012或者9015即可,經(jīng)本人實(shí)際驗(yàn)證效果非常好。

          本文引用地址:http://yuyingmama.com.cn/article/201611/320567.htm



          下圖為原理圖:




          下圖為實(shí)物圖



          以下為源程序

          #include
          #define uint unsigned int
          #define uchar unsigned char
          uchar code table[]={ //不帶小數(shù)點(diǎn)的數(shù)碼管編碼
          0xc0,0xf9,0xa4,0xb0,
          0x99,0x92,0x82,0xf8,
          0x80,0x90};
          uchar code table1[]={ //帶小數(shù)點(diǎn)的數(shù)碼管編碼
          0x40,0x79,0x24,0x30,
          0x19,0x12,0x02,0x78,
          0x00,0x10};

          uchar shi=12,second,minute;
          uint num,num1,num2,num3;
          sbit k1=P1^4;
          sbit k2=P1^5;
          void display();
          void keyscan();
          void delay(uint z)
          {
          uint x,y;
          for(x=z;x>0;x--)
          for(y=110;y>0;y--);
          }

          void init()
          {
          TMOD=0x01;

          TH0=(65536-50000)/256;
          TL0=(65536-50000)%6;
          EA=1;
          ET0=1;
          TR0=1;
          }

          void main()
          {
          init();
          while(1)
          {
          keyscan();
          display();

          }
          }

          void timer0() interrupt 1
          {
          TH0=(65536-50000)/256;
          TL0=(65536-50000)%6;
          num++;
          if(num==20)
          {
          num=0;
          second++;
          if(second==60)
          {
          second=0;
          minute++;
          }
          if(minute>=60)
          {
          minute=0;
          shi++;
          }
          if(shi>=24)
          shi=0;

          }
          }

          void display()
          {
          P2=0xdf;
          P0=table[second];
          delay(2);
          P2=0xff;

          P2=0xef;
          P0=table[second/10];
          delay(2);
          P2=0xff;

          P2=0xf7;
          P0=table1[minute];
          delay(2);
          P2=0xff;

          P2=0xfb;
          P0=table[minute/10];
          delay(2);
          P2=0xff;

          P2=0xfd;
          P0=table1[shi];
          delay(2);
          P2=0xff;

          P2=0xfe;
          P0=table[shi/10];
          delay(2);
          P2=0xff;
          }

          void keyscan()
          {
          if(k1==0)
          {
          delay(10);
          if(k1==0)
          {
          shi++;
          while(!k1);
          }
          }
          if(k2==0)
          {
          delay(10);
          if(k2==0)
          {
          minute++;
          while(!k2);
          }

          }

          }



          關(guān)鍵詞: 單片機(jī)電子時(shí)

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉