欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 單片機(jī)8位動(dòng)態(tài)數(shù)碼管的24小時(shí)制電子表仿真+程序 [打印本頁(yè)]

作者: ponuyy    時(shí)間: 2018-10-12 20:27
標(biāo)題: 單片機(jī)8位動(dòng)態(tài)數(shù)碼管的24小時(shí)制電子表仿真+程序
  基于80C51單片機(jī)的電子時(shí)鐘  8位動(dòng)態(tài)數(shù)碼管顯示時(shí)分秒

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機(jī)源程序如下:
  1. //==================================================//
  2. //==          電子信息科學(xué)與技術(shù)(2)班           ==//
  3. //==                                              ==//
  4. //==               八位數(shù)碼管電子時(shí)鐘             ==//
  5. //==   16214088       陳朝      24小時(shí)制電子表    ==//
  6. //==                                              ==//
  7. //==================================================//
  8. #include<reg51.h>
  9. #include"delay.h"
  10. unsigned char code LED[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; //定義共陰極LED7段顯示碼

  11. unsigned char dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};   //定義數(shù)碼管位碼
  12. unsigned char hour=23,min=58,sec=52;                 //定義初始時(shí)間為23時(shí)58分52秒
  13. unsigned char tcount;                           //定義50ms計(jì)數(shù)變量

  14. void display(unsigned char,unsigned char,unsigned char);

  15. void delay(unsigned int time)//定義延時(shí)函數(shù)
  16.         {
  17.                 unsigned int j = 0;
  18.                 for(;time>0;time--)
  19.                         for(j=0;j<125;j++);
  20.         }

  21. void main(void)
  22. {
  23.          TMOD=0x01;                  //定時(shí)/計(jì)數(shù)器0設(shè)為方式1
  24.          TH0=(65536-50000)/256;      //定時(shí)50ms初值的高八位送入TH0
  25.          TL0=(65536-50000)%256;      //定時(shí)50ms初值的低八位送入TL0
  26.          EA=1;                       //開CPU中斷
  27.          ET0=1;                      //開定時(shí)/計(jì)數(shù)器0的中斷
  28.          TR0=1;                      //啟動(dòng)定時(shí)器0
  29.         while(1)
  30.         {
  31.              display(hour,min,sec);
  32.         }
  33. }


  34. void display(unsigned char hour,unsigned char min,unsigned sec)
  35. {
  36.        
  37.         P0=LED[hour/10];            //小時(shí)的十位送數(shù)碼管1位顯示
  38.         P2=0xfe;
  39.         delay(1);
  40.         P2=0xff;
  41.        
  42.         P0=LED[hour%10];            //小時(shí)的個(gè)位送數(shù)碼管2位顯示
  43.         P2=0xfd;
  44.         delay(1);
  45.         P2=0xff;
  46.        
  47.         P0=LED[10];                 //橫杠送數(shù)碼管3位顯示
  48.         P2=0xfb;
  49.         delay(1);
  50.         P2=0xff;
  51.        
  52.         P0=LED[min/10];             //分的十位送數(shù)碼管4位顯示
  53.         P2=0xf7;
  54.         delay(1);
  55.         P2=0xff;
  56.        
  57.         P0=LED[min%10];             //分的個(gè)位送數(shù)碼管5位顯示
  58.         P2=0xef;
  59.         delay(1);
  60.         P2=0xff;
  61.        
  62.         P0=LED[10];                 //橫杠送數(shù)碼管6位顯示
  63.         P2=0xdf;
  64.         delay(1);
  65.         P2=0xff;
  66.        
  67.         P0=LED[sec/10];             //秒的十位送數(shù)碼管7位顯示
  68.         P2=0xbf;
  69.         delay(1);
  70.         P2=0xff;
  71.        
  72.         P0=LED[sec%10];             //秒的個(gè)位送數(shù)碼管8位顯示
  73.         P2=0x7f;
  74.         delay(1);
  75.         P2=0xff;
  76. }



  77. void T0_time() interrupt 3    //定時(shí)器中斷處理函數(shù)
  78. {
  79.         TH0=(65536-50000)/256;      //重新將定時(shí)50ms初值的高八位送TH0
  80.         TL0=(65536-50000)%256;      //重新將定時(shí)50ms初值的低八位送TH0
  81.         tcount++;                   //定時(shí)50ms時(shí)間到加1
  82.         if(tcount==20)              //判斷是否到1s
  83.         {
  84.         tcount=0;                   //到1s,變量清0
  85.         sec++;                      //秒計(jì)數(shù)變量加1
  86.         if(sec==60)                 //判斷秒是否到60
  87.         {
  88.         sec=0;                      //到60,秒變量清0
  89.     min++;                    //分計(jì)數(shù)變量加1
  90.         if(min==60)                 //判斷分是否到60
  91.         {
  92.         min=0;                      //到60,分變量清0
  93.         hour++;                     //小時(shí)計(jì)數(shù)變量加1
  94.         if(hour==24)                //判斷小時(shí)是否到24
  95.         hour=0;                     //到24,小時(shí)清0
  96.         }
  97. }
  98. }
  99. }
  100.                                        
復(fù)制代碼

所有資料51hei提供下載:
8位數(shù)碼管24小時(shí)制電子表.zip (94.15 KB, 下載次數(shù): 95)



作者: lj839983357    時(shí)間: 2018-12-31 16:48
我愛你

51hei.png (21.64 KB, 下載次數(shù): 142)

51hei.png

作者: 白鵝不    時(shí)間: 2020-5-4 16:59
大佬  跪了跪了  牛皮
作者: kfd    時(shí)間: 2020-12-6 15:48
Thanks♪(・ω・)ノ






歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1