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

標(biāo)題: 智能秒表的設(shè)計(jì)與制作 [打印本頁(yè)]

作者: 小白呂    時(shí)間: 2015-12-19 13:40
標(biāo)題: 智能秒表的設(shè)計(jì)與制作
之前的賬號(hào)忘記了,只能重新注冊(cè)和上傳,智能秒表的設(shè)計(jì)與制作包含論文和程序非常全

  1. /*******************************/
  2. /*     智能秒表(完美版)      */
  3. /*******************************/
  4. #include<reg52.h>
  5. #define uint unsigned int
  6. #define uchar unsigned char
  7. sbit key1=P2^0;                //定義"啟動(dòng)/暫停"按鈕
  8. sbit key2=P2^1;                //定義"復(fù)位"按鈕
  9. sbit key3=P2^2;                                 //定義"模式"按鈕
  10. sbit key4=P2^3;                                 //定義"查看"按鈕
  11. sbit wei1=P2^4;                //定義位選
  12. sbit wei2=P2^5;
  13. sbit wei3=P2^6;               
  14. sbit wei4=P2^7;
  15. bit flag_start,flag_mode,flag_5sec;
  16. uchar temp,temp1,aa,aa1,shi,ge,shifen,baifen,num,i,j;
  17. uchar time_data1[11],time_data2[11];
  18. uchar code table[]={
  19. 0x3f,0x06,0x5b,0x4f,
  20. 0x66,0x6d,0x7d,0x07,
  21. 0x7f,0x6f,0x77,0x7c,
  22. 0x39,0x5e,0x79,0x71};          //不帶小數(shù)點(diǎn)共陰極數(shù)碼管編碼
  23. uchar code tabledp[]={
  24. 0xbf,0x86,0xdb,0xcf,
  25. 0xe6,0xed,0xfd,0x87,
  26. 0xff,0xef,0xf7,0xfc,
  27. 0xb9,0xde,0xf9,0xf1};        //帶小數(shù)點(diǎn)共陰極數(shù)碼管編碼
  28. void display(uchar shi,uchar ge,uchar shifen,uchar baifen);  //聲明顯示子函數(shù)
  29. void delay(uint z);            //聲明延時(shí)子函數(shù)
  30. void init();                  //聲明初始化函數(shù)
  31. void key();                                   //聲明鍵掃描函數(shù)
  32. void display_process();                   //聲明顯示處理函數(shù)

  33. void main()
  34. {       
  35.         init();                                //調(diào)用初始化子程序
  36.         while(1)
  37.         {                      
  38.           key();
  39.           display_process();       
  40.           display(shi,ge,shifen,baifen);        //調(diào)用顯示子函數(shù)
  41.         }
  42. }

  43. void delay(uint z)                       //延時(shí)子函數(shù)
  44. {
  45.         uint x,y;
  46.         for(x=z;x>0;x--)
  47.                 for(y=110;y>0;y--);
  48. }

  49. void display(uchar shi,uchar ge,uchar shifen,uchar baifen)   //顯示子程序
  50. {       
  51.                 P0=table[shi];        //使用動(dòng)態(tài)掃描的方法實(shí)現(xiàn)數(shù)碼管顯示
  52.                 wei1=0;
  53.                 delay(1);
  54.                 wei1=1;

  55.                 P0=tabledp[ge];
  56.                 wei2=0;
  57.                 delay(1);            
  58.                 wei2=1;
  59.    
  60.     P0=table[shifen];//使用動(dòng)態(tài)掃描的方法實(shí)現(xiàn)數(shù)碼管顯示
  61.                 wei3=0;
  62.                 delay(1);
  63.                 wei3=1;

  64.                 P0=table[baifen];
  65.                 wei4=0;
  66.                 delay(1);            
  67.                 wei4=1;       
  68. }

  69. void init()                     //初始化子程序
  70. {       
  71.         temp=0;
  72.         TMOD=0x01;             //使用定時(shí)器T0的方式1
  73.         TH0=(65536-10000)/256;
  74.         TL0=(65536-10000)%256;   //定時(shí)50ms中斷一次
  75.         EA=1;                   //中斷總允許
  76.         ET0=1;                  //允許定時(shí)器T0中斷       
  77. }

  78. void key()
  79. {
  80.         if(key1==0)           //檢測(cè)"啟動(dòng)"按鈕是否按下
  81.          {
  82.                 delay(5);         //延時(shí)去抖動(dòng)
  83.                 if(key1==0)       //再次檢測(cè)"啟動(dòng)"按鈕是否按下
  84.                  {       
  85.            while(!key1);           //松手檢測(cè)
  86.                    flag_start=~flag_start;
  87.                    if(flag_mode==0)
  88.                     {
  89.                       if(flag_start==1)
  90.                             TR0=1;              //啟動(dòng)定時(shí)器開始工作
  91.                       else
  92.                             TR0=0;
  93.                         }
  94.                    else
  95.                         {
  96.                           if(flag_start==1)
  97.                             TR0=1;
  98.                           else
  99.                             TR0=0;
  100.                         }
  101.                  }
  102.          }
  103.                 if(key2==0)                 //檢測(cè)"停止"按鈕是否按下   
  104.                 {
  105.                         delay(5);         
  106.                         if(key2==0)      
  107.                         {       
  108.                                 while(!key2);
  109.                                 if(flag_mode==0||i!=0)
  110.                                  {  
  111.                                   shi=0;              //關(guān)閉定時(shí)器
  112.                                   ge=0;
  113.                                   shifen=0;
  114.                                   baifen=0;
  115.                                   aa=0;
  116.                                   temp=0;
  117.                                   TR0=0;
  118.                                   i=0;
  119.                                   num=0;
  120.                                   for(j=0;j<=10;j++)
  121.                                   {
  122.                                     time_data1[j]=0;
  123.                                     time_data2[j]=0;
  124.                                   }
  125.                                  }
  126.                             else
  127.                              {
  128.                                    num++;
  129.                                    if(num==11)
  130.                                      num=1;
  131.                                    aa1=aa;
  132.                                    temp1=temp;
  133.                                    time_data1[num]=aa1;
  134.                                    time_data2[num]=temp1;
  135.                                    flag_5sec=0;
  136.                                  }
  137.                         }
  138.                 }
  139.                 if(key3==0)
  140.                 {
  141.                   delay(5);
  142.                   if(key3==0)
  143.                    {
  144.                      while(!key3);
  145.                          flag_mode=~flag_mode;
  146.                    }
  147.                 }
  148.            if(key4==0)
  149.                 {
  150.                   delay(5);
  151.                   if(key4==0)
  152.                    {
  153.                      while(!key4);
  154.                          i++;
  155.                          TR0=0;
  156.                          if(i==11)
  157.                           i=1;
  158.                    }
  159.                 }
  160. }               

  161. void display_process()
  162. {
  163.   shifen=aa%100/10;
  164.   baifen=aa%10;
  165.   shi=temp%100/10;
  166.   ge=temp%10;
  167.   if(flag_mode==1&&num!=0&&flag_5sec==0)
  168.    {
  169.          shi=time_data2[num]/10;
  170.      ge=time_data2[num]%10;
  171.          shifen=time_data1[num]/10;
  172.          baifen=time_data1[num]%10;
  173.          if(temp-time_data2[num]==2)
  174.            flag_5sec=~flag_5sec;
  175.    }
  176.   if(i!=0)
  177.         {
  178.           shi=time_data2[i]/10;
  179.           ge=time_data2[i]%10;
  180.           shifen=time_data1[i]/10;
  181.           baifen=time_data1[i]%10;
  182.     }
  183. }

  184. void timer0() interrupt 1
  185. {
  186.         TH0=(65536-10000)/256;  //重新賦初值
  187.         TL0=(65536-10000)%256;
  188.         aa++;                   //中斷一次變量aa的值加1
  189.         if(aa==100)             //中斷100次后,定時(shí)時(shí)間為100*10ms=1000ms=1s,將變量temp的值加1
  190.         {
  191.           aa=0;
  192.           temp++;
  193.           if(temp==100)       //秒表到達(dá)100s后回零
  194.                 temp=0;
  195.         }       
  196. }
復(fù)制代碼


智能秒表的設(shè)計(jì)與制作.zip

506.92 KB, 下載次數(shù): 265, 下載積分: 黑幣 -5


作者: MX安心    時(shí)間: 2016-6-26 13:59
學(xué)習(xí)了這個(gè)做的真的非常不錯(cuò)
作者: twh888    時(shí)間: 2016-6-30 21:58
多謝   受用了
作者: 吃秘密的人    時(shí)間: 2016-11-15 12:37
里面有沒有仿真圖    我想?yún)⒖枷?hr noshade size="2" width="100%" color="#808080"> 作者: tudou1    時(shí)間: 2016-12-19 12:51
請(qǐng)問,這個(gè)秒表能實(shí)現(xiàn)什么功能?
作者: 皮皮豬    時(shí)間: 2016-12-23 11:54
沒仿真?
作者: 皮皮豬    時(shí)間: 2016-12-23 11:54
有仿真嗎大神
作者: tranhunga    時(shí)間: 2017-5-7 07:42
多謝   受用了
作者: micmiutom    時(shí)間: 2017-5-7 07:43
學(xué)習(xí)了這個(gè)做的真的非常不錯(cuò)
作者: 浮生_meng    時(shí)間: 2017-12-19 22:48
謝謝啦,正好需要

作者: lhl707335887    時(shí)間: 2018-1-13 19:44
謝謝。。。
作者: charoJ    時(shí)間: 2018-4-12 18:45
我剛為了pcb layout下載了…結(jié)果也沒有啊…有誰(shuí)有pcb嗎
作者: litengfei    時(shí)間: 2018-6-12 17:02
謝謝,可以下載嗎
作者: 文森特    時(shí)間: 2018-6-13 14:11
學(xué)習(xí)
作者: wuwuwuhui    時(shí)間: 2018-6-14 10:14
我想下載看看
作者: fengxin0625    時(shí)間: 2018-6-19 10:07

我想下載看看
作者: dahua    時(shí)間: 2018-6-20 10:35
好貨.......
作者: 昶春齋    時(shí)間: 2018-7-30 09:40
好東西   謝謝分享
作者: Fentakatt    時(shí)間: 2018-12-11 11:56
復(fù)制了代碼運(yùn)行不了...
作者: lzDestiny    時(shí)間: 2018-12-12 19:34
再有仿真的話就完美了
作者: HINTQIN    時(shí)間: 2019-4-16 22:31
多謝,很好用

作者: 6541k    時(shí)間: 2020-4-26 14:42
很給力!
作者: 13187166755    時(shí)間: 2020-11-14 14:29
用了真的非常不錯(cuò)
作者: yyyyiiii    時(shí)間: 2020-12-20 12:59
有硬件的pcb圖嗎




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: av福利网| 日韩欧美操 | 性一交一乱一伦视频免费观看 | 久久久一二三区 | 99国产精品一区二区三区 | 日韩高清国产一区在线 | 粉嫩av| 成人教育av | 天天综合日日夜夜 | 日韩精品 电影一区 亚洲 | 欧美成人一级 | 亚洲视频在线一区 | 免费精品国产 | 国产精品入口 | 天天爱天天操 | 色婷婷综合久久久久中文一区二区 | 国产在线观看一区二区 | 午夜爽爽爽男女免费观看影院 | 久久久久久久久久久久久久久久久久久久 | 精品产国自在拍 | 日韩av高清在线 | 国产激情免费视频 | 国产精品a久久久久 | 国产欧美一区二区精品忘忧草 | 欧美日韩不卡合集视频 | 国产精品久久久久久久久动漫 | 久久久夜夜夜 | 亚洲狠狠| 久久亚 | 精品在线一区二区三区 | 欧美日韩一区二区三区不卡视频 | 毛片电影| 九九九视频在线观看 | 99亚洲精品视频 | 欧美亚洲国产日韩 | 国产中文字幕在线 | 91免费在线看 | 精品视频一区二区三区 | 国产91精品久久久久久久网曝门 | 国产精品国产三级国产aⅴ中文 | 成人在线视频网站 |