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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2089|回復: 1
打印 上一主題 下一主題
收起左側(cè)

單片機足球補時牌proteus仿真與源碼

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:410062 發(fā)表于 2018-10-15 17:00 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
足球補時牌仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #include<reg51.h> //51單片機頭文件
  2. #include<intrins.h>  //51庫函數(shù)
  3. #define uchar unsigned char  //宏定義
  4. #define uint unsigned int
  5. sbit duan = P2^0;//段選接P2.0引腳
  6. sbit wei = P2^1; //位選接P2.1引腳
  7. sbit BUZZ = P2^3;
  8. char second = 0; //計數(shù),時間(秒鐘)
  9. char minute = 0; //計數(shù),時間(分鐘)

  10. /****
  11.     共陰級
  12.     table[10]表示不顯示
  13.     table[11] 表示“-”
  14. **************/
  15. uchar code table[] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d,
  16.         0x7d, 0x07, 0x7f, 0x6f, 0x00, 0x40};
  17. uchar s[8];
  18. uchar delay = 1;
  19. uchar n = 0;
  20. uint th,tl;
  21. uchar speak = 0; //標識蜂鳴器是否開始發(fā)聲
  22. void delayms(uint t)    //延時函數(shù)
  23. {
  24.     uint i,j;
  25.     for(i=0;i<t;i++)
  26.     for(j=0;j<110;j++);
  27. }
  28. void init()
  29. {
  30.     EA = 1; //開全局中斷
  31.     EX0 = 1;//INT0中斷允許
  32.     IT0 = 1;//觸發(fā)方式為下降沿觸發(fā)
  33.     EX1 = 1;//INT0中斷允許
  34.     IT1 = 1;//觸發(fā)方式為下降沿觸發(fā)

  35.     TMOD = 0x19;
  36.     TH0 = 0x4C;       //給定初值
  37.     TL0 = 0x00;
  38.     TH1 = 0xff;       //給定初值
  39.     TL1 = 0x00;
  40.     ET0 = 1;           //定時器中斷打開
  41.     ET1 = 1;
  42.     TR0 = 0;           //不啟動定時器中斷
  43.     TR1 = 0;           //
  44. }
  45. void fun()
  46. {
  47.     s[0] = table[second%10];
  48.     s[1] = table[second/10];
  49.     s[2] = table[11];
  50.     s[3] = table[11];
  51.     s[4] = table[minute%10];
  52.     if(minute/10!=0)    s[5] = table[minute/10];
  53.     else s[5] = table[10];
  54. }
  55. void show()
  56. {
  57.     uchar i;
  58.     uchar temp = 0xdf;
  59.     fun();
  60.     for(i=0;i<6;i++){
  61.         duan = 0;
  62.         wei = 0;

  63.         P0 = 0x00;
  64.         duan = 1;
  65.         P0 = s[i];
  66.         duan = 0;

  67.         P0 = 0xff;
  68.         wei = 1;
  69.         P0 = temp;
  70.         wei = 0;

  71.         temp = _cror_(temp, 1);

  72.         TH1 = 0xff;
  73.         TL1 = 0x00;
  74.         TR1 = 1;  //延時  
  75.         while(delay<1);
  76.         TR1 = 0;

  77.         delay = 0;
  78.     }
  79. }

  80. void main()
  81. {
  82.     init();         
  83.     while(1){
  84.        show();
  85.        if(speak==1){
  86.             duan = 1;
  87.             P0 = table[10];
  88.             duan = 0;
  89.             P0 = 0xff;
  90.             wei = 1;
  91.             P0 = 0x01;
  92.             wei = 0;

  93.             TR1 = 1;
  94.             th = (65535-50000)/256;
  95.             tl = (65536-50000)%256;
  96.             TH1 = th;
  97.             TL1 = tl;                           
  98.             delayms(10000);
  99.             TR1 = 0;
  100.             speak=0;
  101.        }      
  102.     }   
  103. }
  104. void IN_T0() interrupt 0
  105. {
  106.     minute++;
  107.     if(minute > 19)
  108.     minute=19;
  109. }
  110. void IN_T1() interrupt 2
  111. {
  112.     TR0 = 1;
  113. }
  114. void timer0() interrupt 1
  115. {
  116.     TH0 = 0x4C;       //給定初值
  117.     TL0 = 0x00;
  118.     n++;
  119.     if(n==20){
  120.          n = 0;
  121.          if(minute ==0 && second==0){
  122.             TR0 = 0;
  123.             speak = 1;  
  124.          }         
  125.          else if(second==0){
  126.             minute --;
  127.             second = 59;
  128.          }
  129.          else{
  130.            second--;
  131.          }
  132.     }
  133. }
  134. void timer1() interrupt 3
  135. {
  136.     if(speak==1)
  137.     {
  138.         BUZZ = ~BUZZ;
  139.         TH1 = th;   //給定初值
  140.         TL1 = tl;
  141.     }
  142.     delay=1;   
  143. }
復制代碼

所有資料51hei提供下載:
足球補時牌.zip (71.67 KB, 下載次數(shù): 27)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:405383 發(fā)表于 2018-10-15 18:34 | 只看該作者
看起來不錯,感謝分享
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产激情精品 | 男女激情网 | 欧美日韩视频在线播放 | 午夜精品久久久久久久99黑人 | 黄色a视频 | 天天插天天操 | 在线日韩精品视频 | 欧美一级免费观看 | 国产午夜精品一区二区三区嫩草 | 久久精品网| 米奇7777狠狠狠狠视频 | 精品国产一二三区 | 午夜精品福利视频 | 亚洲视频欧美视频 | 久久精品天堂 | 深夜福利影院 | 二区三区在线观看 | 成人免费视频播放 | 久久久久久久久久毛片 | 成人免费视频在线观看 | 天天射天天干 | 精品免费国产视频 | www性色| 国产一区二区精品在线观看 | 99福利 | 国产精品区二区三区日本 | 日日骚网 | 午夜精品视频在线观看 | 久久最新精品视频 | 中文字幕乱码一区二区三区 | 激情网五月天 | 在线视频一区二区三区 | 久久久妇女国产精品影视 | 亚洲欧美精品在线 | 亚洲成人av | 性欧美精品一区二区三区在线播放 | 精品三区 | 在线观看亚洲一区二区 | 国产东北一级毛片 | 国产情侣激情 | 精品1区2区3区 |