乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      實(shí)用性強(qiáng)的8路單片機(jī)搶答器制作 帶程序電路圖pcb圖

       快樂讀書法 2015-11-20
              這款實(shí)用性強(qiáng)的8路單片機(jī)搶答器,使用的是AT89S52單片機(jī),四位數(shù)碼管作為搶答、回答時(shí)間的倒計(jì)時(shí)以及計(jì)分顯示用。該制作從實(shí)用性出發(fā),8個(gè)按鍵都是分開來(lái)做的,做出來(lái)的東西是能夠使用的而不是模型。
             這款實(shí)用性強(qiáng)的8路單片機(jī)搶答器主要的功能:可以顯示搶答、回答時(shí)間的倒計(jì)時(shí),可以調(diào)節(jié)搶答、回答時(shí)間,能夠提示犯規(guī)搶答,可以計(jì)分,可以實(shí)現(xiàn)軟復(fù)位。
             全部資料打包下載地址 實(shí)用性強(qiáng)的8路單片機(jī)搶答器.rar (169.95 KB, 下載次數(shù): 37)








      源程序如下:
      1. /*八路搶答器-----能夠顯示搶答、回答時(shí)間倒計(jì)時(shí),能夠調(diào)節(jié)搶答、回答時(shí)間,能夠報(bào)警犯規(guī)搶答,可以計(jì)分,可以實(shí)現(xiàn)軟復(fù)位*/
      2. #include<reg52.h>
      3. #define uchar unsigned char
      4. #define uint unsigned int
      5. sbit fmq=P3^6;
      6. sbit Key_Start=P3^4;//開始鍵,時(shí)間設(shè)置時(shí)+
      7. sbit Key_Stop=P3^5;//停止鍵,時(shí)間設(shè)置時(shí)-
      8. sbit Key_Restart=P3^0;//復(fù)位鍵
      9. sbit Key_set_Q=P3^2;//搶答時(shí)間設(shè)置鍵
      10. sbit Key_set_H=P3^3;//回答時(shí)間設(shè)置鍵
      11. sbit led=P3^7;//搶答LED提示
      12. uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff,0xc6,0xf0,0xb6};//段碼表
      13. uchar code table_char[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xc7,0xc0,0x92,0x86,0xbf,0xb7,0xff,0xb9,0x8f};//0-9 L O S E -
      14. uchar  table_score[9]={0,50,50,50,50,50,50,50,50};//記分?jǐn)?shù)組,初設(shè)值50分
      15. void delay(uint z);//延時(shí)函數(shù)聲明
      16. void init();//初始化函數(shù)聲明
      17. void display(uchar XuanShou,uchar time);//顯示數(shù)字函數(shù)聲明
      18. void display_char(uchar char_1,uchar char_2,uchar char_3,uchar char_4 );//顯示字符函數(shù)聲明
      19. void display_set(uchar char_1,uchar time,uchar char_2);//時(shí)間設(shè)置閃動(dòng)顯示函數(shù)聲明
      20. void display_score(uchar xs_num);//分?jǐn)?shù)查詢顯示函數(shù)
      21. void beep();//蜂鳴器函數(shù)
      22. void beep_last();//蜂鳴器特殊報(bào)警
      23. void LED();//提示燈函數(shù)
      24. uchar QiangDa_time,HuiDa_time,QiangDa_time_temp=20,HuiDa_time_temp=30;//搶答時(shí)間、回答時(shí)間變量
      25. uchar count_0,count_1;//定時(shí)中計(jì)數(shù)用的
      26. uint shan_count=0;//閃動(dòng)顯示計(jì)數(shù)用
      27. void main()
      28. {
      29.         uchar AnJian,ShuJu,XuanShou_num;
      30. Top:init();//初始化
      31.         XuanShou_num=1;//為分?jǐn)?shù)查詢做好準(zhǔn)備
      32.         while(1)
      33.         {
      34.                 display(10,0);//顯示一杠
      35.                 ShuJu=P1;
      36.                 if(ShuJu!=0xff)//犯規(guī)搶答??!
      37.                 {
      38. //                        delay(10);
      39. //                        if(ShuJu!=0xff)
      40. //                        {
      41.                                 AnJian=ShuJu;
      42.                                 switch(AnJian)//取出選手編號(hào)
      43.                                 {
      44.                                         case 0xfe :        XuanShou_num=1;break;//1111 1110
      45.                                         case 0xfd :        XuanShou_num=2;break;//1111 1101
      46.                                         case 0xfb :        XuanShou_num=3;break;//1111 1011
      47.                                         case 0xf7 :        XuanShou_num=4;break;//1111 0111
      48.                                         case 0xef :        XuanShou_num=5;break;//1110 1111
      49.                                         case 0xdf :        XuanShou_num=6;break;//1101 1111
      50.                                         case 0xbf :        XuanShou_num=7;break;//1011 1111
      51.                                         case 0x7f :        XuanShou_num=8;break;//0111 1111
      52.                                         default : goto LOSE;//無(wú)法顯示了,有兩個(gè)以上的鍵同時(shí)按下了??!不過這種概率相當(dāng)小
      53.                                 }
      54.                                 while(1)
      55.                                 {
      56.                                         display_char(13,14,14,XuanShou_num);//閃動(dòng)顯示犯規(guī)選手并且報(bào)警
      57.                                         if(shan_count==50)
      58.                                         {
      59.                                                 beep();
      60.                                         }
      61.                                         if(Key_Stop==0)
      62.                                         {
      63.                                                 delay(10);
      64.                                                 if(Key_Stop==0)
      65.                                                 {
      66.                                                         beep();
      67.                                                         table_score[XuanShou_num]--;//扣分
      68.                                                 }
      69.                                         }
      70.                                         while(!Key_Stop)
      71.                                         {
      72.                                                 display_char(14,14,1,16);//按鍵不放開的情況下顯示-1
      73.                                                 shan_count=1;//調(diào)用的是閃動(dòng)顯示函數(shù),但是不讓其閃動(dòng)
      74.                                         }
      75.                                         if(Key_Restart==0)
      76.                                         {
      77.                                                 delay(10);
      78.                                                 if(Key_Restart==0)
      79.                                                 {
      80.                                                         beep();
      81.                                                         goto Top;//熱復(fù)位
      82.                                                 }
      83.                                         }
      84.                                 }
      85. //                        }
      86.                 }
      87.                 if(Key_Start==0)
      88.                 {
      89.                         delay(10);
      90.                         if(Key_Start==0)//主持人按下?lián)尨疰I,搶答正式開始!
      91.                         {
      92.                                 QiangDa_time=QiangDa_time_temp;
      93.                                 HuiDa_time=HuiDa_time_temp;
      94.                                 beep();
      95.                                 TR1=1;//搶答時(shí)間開始倒計(jì)時(shí)
      96.                                 break;//跳出犯規(guī)搶答查詢循環(huán)
      97.                         }
      98.                 }
      99. //一下為查分程序測(cè)試
      100.                  if(Key_Stop==0)
      101.                  {
      102.                          delay(10);
      103.                         if(Key_Stop==0)//進(jìn)入分?jǐn)?shù)查詢顯示
      104.                         {
      105.                                 beep();
      106.                                 while(!Key_Stop);
      107.                                 while(1)
      108.                                 {
      109.                                         display_score(XuanShou_num);
      110.                                         if(Key_Start==0)
      111.                                         {
      112.                                                 delay(10);
      113.                                                 if(Key_Start==0)
      114.                                                 {
      115.                                                         XuanShou_num++;
      116.                                                         if(XuanShou_num==9) XuanShou_num=1;
      117.                                                 }
      118.                                         }
      119.                                         while(!Key_Start);//等待按鍵釋放
      120.                                         if(Key_Stop==0)
      121.                                         {
      122.                                                 delay(10);
      123.                                                 if(Key_Stop==0)
      124.                                                 {
      125.                                                         XuanShou_num--;
      126.                                                         if(XuanShou_num==0) XuanShou_num=8;
      127.                                                 }
      128.                                         }
      129.                                         while(!Key_Stop);//等待按鍵釋放
      130.                                    if(Key_Restart==0)
      131.                                         {
      132.                                                 delay(10);
      133.                                                 if(Key_Restart==0)
      134.                                                 {
      135.                                                         beep();
      136.                                                         goto Top;//熱復(fù)位
      137.                                                 }
      138.                                         }
      139.                                 }
      140.                         }
      141.                  }
      142.         }
      143.         while(1) //查詢是否有按鍵按下,進(jìn)入搶答循環(huán)
      144.         {
      145.                 display(10,QiangDa_time);//顯示搶答倒計(jì)時(shí)
      146.                 if(QiangDa_time==0)
      147.                 {
      148. //                        beep();
      149.                         TR1=0;//關(guān)閉定時(shí)器1
      150. LOSE:                while(1)
      151.                         {
      152.                                 display_char(10,11,12,13); //顯示lose 字符
      153.                                 if(Key_Restart==0)
      154.                                 {
      155.                                         delay(10);
      156.                                         if(Key_Restart==0)//熱復(fù)位鍵,從頭開始下一輪
      157.                                         {
      158.                                                 beep();
      159.                                                 goto Top;
      160.                                         }
      161.                                 }
      162.                         }
      163.                 }
      164.                 ShuJu=P1;//把P1口的數(shù)據(jù)送給變量
      165.                 if(ShuJu!=0xff)//有按鍵按下
      166.                 {
      167. //                        delay(10);
      168. //                        if(ShuJu!=0xff)//確定有按鍵按下
      169. //                        {
      170.                                  AnJian=ShuJu;//傳遞數(shù)據(jù)掃描值
      171. //                                 TR0=1;//啟動(dòng)定時(shí)器0
      172.                                  TR1=0;//關(guān)閉定時(shí)器1
      173.                                  break;//不再進(jìn)行查詢是否有按鍵按下了
      174. //                        }
      175.                 }
      176.         }
      177.         switch(AnJian)//取出選手編號(hào)
      178.         {
      179.                 case 0xfe :        XuanShou_num=1;beep();LED();break;//1111 1110
      180.                 case 0xfd :        XuanShou_num=2;beep();LED();break;//1111 1101
      181.                 case 0xfb :        XuanShou_num=3;beep();LED();break;//1111 1011
      182.                 case 0xf7 :        XuanShou_num=4;beep();LED();break;//1111 0111
      183.                 case 0xef :        XuanShou_num=5;beep();LED();break;//1110 1111
      184.                 case 0xdf :        XuanShou_num=6;beep();LED();break;//1101 1111
      185.                 case 0xbf :        XuanShou_num=7;beep();LED();break;//1011 1111
      186.                 case 0x7f :        XuanShou_num=8;beep();LED();break;//0111 1111
      187.                 default : goto LOSE;//無(wú)法顯示了,有兩個(gè)以上的鍵同時(shí)按下了??!不過這種概率相當(dāng)小
      188.         }
      189.         TR0=1;//啟動(dòng)定時(shí)器0(在這里啟動(dòng)比在前面好)
      190.         while(1)
      191.         {
      192.                 display(XuanShou_num,HuiDa_time);//顯示選手編號(hào)和回答倒計(jì)時(shí)
      193.                 if(HuiDa_time==0)
      194.                 {
      195.                         TR0=0;//關(guān)閉定時(shí)器0
      196.                         goto LOSE;//跳到顯示lose字符那里
      197.                 }
      198.                 if(Key_Stop==0)
      199.                 {
      200.                         delay(30);
      201.                         if(Key_Stop==0)//停止鍵按下
      202.                         {
      203.                                 beep();
      204.                                 TR0=0;//關(guān)閉定時(shí)器0,選手開始回答
      205.                                 while(!Key_Stop);
      206.                                 while(1) //在顯示選手回答倒計(jì)時(shí)時(shí)只有在stop按鍵按下時(shí),才可按復(fù)位鍵
      207.                                 {
      208.                                         display(XuanShou_num,HuiDa_time);//顯示選手編號(hào)和回答倒計(jì)時(shí)
      209.                                         if(Key_Start==0)
      210.                                         {
      211.                                                 delay(10);
      212.                                                 if(Key_Start==0)
      213.                                                 {
      214.                                                         beep();
      215.                                                         table_score[XuanShou_num]++;//加分
      216.                                                 }
      217.                                         }
      218.                                         while(!Key_Start)
      219.                                         {
      220.                                                 display_char(17,18,1,16);//按鍵不放開的情況下顯示+1
      221.                                                 shan_count=1;//調(diào)用的是閃動(dòng)顯示函數(shù),但是不讓其閃動(dòng)
      222.                                         }
      223.                                         if(Key_Stop==0)
      224.                                         {
      225.                                                 delay(10);
      226.                                                 if(Key_Stop==0)
      227.                                                 {
      228.                                                         beep();
      229.                                                         table_score[XuanShou_num]--;//扣分
      230.                                                 }
      231.                                         }
      232.                                         while(!Key_Stop)
      233.                                         {
      234.                                                 display_char(14,14,1,16);//按鍵不放開的情況下顯示-1
      235.                                                 shan_count=1;//調(diào)用的是閃動(dòng)顯示函數(shù),但是不讓其閃動(dòng)
      236.                                         }
      237.                                         if(Key_Restart==0)
      238.                                         {
      239.                                                 delay(10);
      240.                                                 if(Key_Restart==0)//熱復(fù)位鍵,從頭開始下一輪
      241.                                                 {
      242.                                                         beep();
      243.                                                         goto Top;
      244.                                                 }
      245.                                         }
      246.                                 }
      247.                         }
      248.                 }
      249. //                else
      250. /*                if(Key_Restart==0)
      251.                 {
      252.                         delay(10);
      253.                         if(Key_Restart==0)//熱復(fù)位鍵,從頭開始下一輪
      254.                         {
      255.                                 beep();
      256.                                 goto Top;
      257.                         }
      258.                 } */
      259.         }
      260.        
      261. }

      262. void delay(uint z)//1ms基準(zhǔn)延時(shí)
      263. {
      264.         uint x,y;
      265.         for(x=z;x>0;x--)
      266.                 for(y=110;y>0;y--);
      267. }

      268. void init()//初始化函數(shù)
      269. {
      270. //        P1=0xff
      271.         EA=1;//開總中斷;
      272.         TMOD=0x11;//定時(shí)器工作方式1,16位定時(shí)計(jì)數(shù)器
      273.         TH0=(65536-50000)/256;//50us
      274.         TL0=(65536-50000)%256;
      275.         ET0=1;//開定時(shí)器0中斷(暫時(shí)不啟動(dòng)定時(shí)器)

      276. //        TMOD=0x01;//定時(shí)器工作方式1,16位定時(shí)計(jì)數(shù)器
      277.         TH1=(65536-50000)/256;//50us
      278.         TL1=(65536-50000)%256;
      279.         ET1=1;//開定時(shí)器0中斷(暫時(shí)不啟動(dòng)定時(shí)器)

      280.         EX0=1;//啟動(dòng)外中斷0
      281.         EX1=1;//啟動(dòng)外中斷1

      282.         P1=0xff;//讀P1口的數(shù)據(jù)要先置1準(zhǔn)備
      283.         count_0=0;//定時(shí)器中的計(jì)數(shù)清零
      284.         count_1=0;
      285.         shan_count=0;
      286. }

      287. void display(uchar XuanShou,uchar time)//顯示數(shù)字的函數(shù)
      288. {

      289.                 P2=0x7f;//0111 1111最后一位數(shù)碼管亮
      290.                 P0=table[XuanShou];//選手編號(hào)
      291.                 delay(1);
      292.                 P2=0x7f;//0111 1111
      293.                 P0=0xff;//消余輝
      294.                 delay(1);
      295.        
      296.                 P2=0xdf;//1101 1111
      297.                 P0=table[time%10];//時(shí)間的個(gè)位
      298.                 delay(1);
      299.                 P2=0xdf;//0111 1111
      300.                 P0=0xff;//消余輝
      301.                 delay(1);
      302.        
      303.                 P2=0xef;// 1110 1111
      304.                 P0=table[time/10];//時(shí)間的十位
      305.                 delay(1);
      306.                 P2=0xef;//0111 1111
      307.                 P0=0xff;//消余輝
      308.                 delay(1);
      309. }

      310. void display_char(uchar char_1,uchar char_2,uchar char_3,uchar char_4 )//閃動(dòng)!顯示字符的函數(shù)
      311. {
      312.         shan_count++;
      313.         if(shan_count==150)        shan_count=0;
      314.          if(shan_count>0&&shan_count<50)
      315.          {
      316.                 P2=0x7f;//0111 1111
      317.                 P0=table_char[char_4];
      318.                 delay(1);
      319.                 P2=0x7f;//0111 1111
      320.                 P0=0xff;
      321.                 delay(1);
      322.        
      323.                 P2=0xbf;//1011 1111
      324.                 P0=table_char[char_3];
      325.                 delay(1);
      326.                 P2=0xbf;//1011 1111
      327.                 P0=0xff;
      328.                 delay(1);
      329.        
      330.                 P2=0xdf;//1101 1111
      331.                 P0=table_char[char_2];
      332.                 delay(1);
      333.                 P2=0xdf;//1101 1111
      334.                 P0=0xff;
      335.                 delay(1);
      336.        
      337.                 P2=0xef;//1110 1111
      338.                 P0=table_char[char_1];
      339.                 delay(1);
      340.                 P2=0xef;//1110 1111
      341.                 P0=0xff;
      342.                 delay(1);
      343.         }
      344.         else
      345.         {
      346.                  P2=0x7f;//0111 1111
      347.                 P0=0xff;
      348.                 delay(1);

      349.                 P2=0xbf;//
      350.                 P0=0xff;
      351.                 delay(1);

      352.                 P2=0xdf;//
      353.                 P0=0xff;
      354.                 delay(1);

      355.                 P2=0xef;//
      356.                 P0=0xff;
      357.                 delay(1);
      358.         }

      359. }
      360. void display_set(uchar char_1,uchar time,uchar char_2)//時(shí)間設(shè)置的閃動(dòng)顯示
      361. {
      362.         shan_count++;
      363.         if(shan_count==120)        shan_count=0;
      364.          if(shan_count>0&&shan_count<40)
      365.          {
      366.                  P2=0x7f;//0111 1111最后一位數(shù)碼管亮
      367.                 P0=table[char_2];//顯示一個(gè)符號(hào)
      368.                 delay(1);
      369.                 P2=0x7f;//0111 1111
      370.                 P0=0xff;//消余輝
      371.                 delay(1);

      372.                 P2=0xbf;//1011 1111
      373.                 P0=table[time%10];//時(shí)間的個(gè)位
      374.                 delay(1);
      375.                 P2=0xbf;//1011 1111
      376.                 P0=0xff;//消余輝
      377.                 delay(1);
      378.        
      379.                 P2=0xdf;//1101 1111
      380.                 P0=table[time/10];//時(shí)間的十位
      381.                 delay(1);
      382.                 P2=0xdf;//1101 1111
      383.                 P0=0xff;//消余輝
      384.                 delay(1);
      385.        
      386.                 P2=0xef;// 1110 1111
      387.                 P0=table[char_1];//顯示一個(gè)符號(hào)
      388.                 delay(1);
      389.                 P2=0xef;//1110 1111
      390.                 P0=0xff;//消余輝
      391.                 delay(1);
      392.          }
      393.          else
      394.          {
      395.                  P2=0x7f;//0111 1111
      396.                 P0=table[char_2];
      397.                 delay(1);

      398.                 P2=0xbf;//
      399.                 P0=0xff;
      400.                 delay(1);

      401.                 P2=0xdf;//
      402.                 P0=0xff;
      403.                 delay(1);

      404.                 P2=0xef;//
      405.                 P0=table[char_1];
      406.                 delay(1);
      407.          }
      408. }
      409. void display_score(uchar xs_num)//分?jǐn)?shù)查詢顯示函數(shù)
      410. {
      411.                 P2=0x7f;//0111 1111最后一位數(shù)碼管亮
      412.                 P0=table[(table_score[xs_num]%10)];//分?jǐn)?shù)的個(gè)位
      413.                 delay(1);
      414.                 P2=0x7f;//0111 1111
      415.                 P0=0xff;//消余輝
      416.                 delay(1);

      417.                 P2=0xbf;//1011 1111
      418.                 P0=table[(table_score[xs_num]/10)];//分?jǐn)?shù)的十位
      419.                 delay(1);
      420.                 P2=0xbf;//1011 1111
      421.                 P0=0xff;//消余輝
      422.                 delay(1);
      423.        
      424.                 P2=0xdf;//1101 1111
      425.                 P0=table_char[15];//間隔符號(hào)
      426.                 delay(1);
      427.                 P2=0xdf;//1101 1111
      428.                 P0=0xff;//消余輝
      429.                 delay(1);
      430.        
      431.                 P2=0xef;// 1110 1111
      432.                 P0=table[xs_num];//選手編號(hào)
      433.                 delay(1);
      434.                 P2=0xef;//1110 1111
      435.                 P0=0xff;//消余輝
      436.                 delay(1);
      437. }
      438. void beep()        //有源蜂鳴器函數(shù)
      439. {
      440.          fmq=0;
      441.          delay(80);
      442.          fmq=1;
      443. }
      444. void beep_last()//最后一聲特殊聲調(diào)
      445. {
      446.          fmq=0;
      447.          delay(300);
      448.          fmq=1;
      449. }
      450. void LED()
      451. {
      452.         led=0;
      453.         delay(150);
      454.         led=1;
      455. }
      456. void T0_time() interrupt 1//定時(shí)器0中斷函數(shù)_回答時(shí)間
      457. {
      458.         TH0=(65536-50000)/256;//50ms
      459.         TL0=(65536-50000)%256;//馬上重裝初值,以免有誤差
      460.         if(count_0==20)
      461.         {
      462.                 count_0=0;
      463.                 HuiDa_time--;
      464.                 if(HuiDa_time<=5)
      465.                 {
      466.                         if(HuiDa_time==0)
      467.                         {
      468.                                 beep_last();//最后一聲特殊警告
      469.                         }
      470.                         beep();
      471.                 }

      472.         }
      473.         count_0++;
      474.        
      475. }

      476. void T1_time() interrupt 3//定時(shí)器1中斷函數(shù)_搶答時(shí)間
      477. {
      478.         TH1=(65536-50000)/256;//50us
      479.         TL1=(65536-50000)%256;//馬上重裝初值,這樣在后面調(diào)用beep()函數(shù)時(shí)就不會(huì)影響定時(shí)器的準(zhǔn)確計(jì)時(shí)了
      480.         if(count_1==20)
      481.         {
      482.                 count_1=0;
      483.                 QiangDa_time--;
      484.                 if(QiangDa_time<=5)
      485.                 {
      486.                         if(QiangDa_time==0)
      487.                         {
      488.                                 beep_last();//最后一聲警告
      489.                         }
      490.                         else
      491.                         beep();
      492.                 }
      493.         }
      494.         count_1++;       
      495. }

      496. void EX0_set_QiangDa_time()        interrupt 0 //外中斷0,設(shè)置搶答時(shí)間
      497. {
      498.         delay(10);//消抖一下
      499.         if(Key_set_Q==0)
      500.         {
      501.                 beep();
      502.                 while(1)
      503.                 {
      504. //                        display(11,QiangDa_time_temp);
      505. //                        delay(100);//閃動(dòng)效果
      506.                         display_set(12,QiangDa_time_temp,13);//調(diào)用時(shí)間設(shè)置閃動(dòng)顯示函數(shù),效果為 [時(shí)間]
      507.                         if(Key_Start==0)//時(shí)間+1鍵
      508.                         {
      509.                                  delay(10);
      510.                                  if(Key_Start==0)
      511.                                  {
      512.                                          QiangDa_time_temp++;
      513.                                         if(QiangDa_time_temp==100)
      514.                                         {
      515.                                                 QiangDa_time_temp=1;
      516.                                         }
      517.                                  }
      518.                         }
      519.                         while(!Key_Start);//等待按鍵釋放
      520. //                        else
      521.                         if(Key_Stop==0)//時(shí)間-1鍵
      522.                         {
      523.                                  delay(10);
      524.                                  if(Key_Stop==0)
      525.                                  {
      526.                                          QiangDa_time_temp--;
      527.                                         if(QiangDa_time_temp==0)
      528.                                         {
      529.                                                 QiangDa_time_temp=99;
      530.                                         }
      531.                                  }
      532.                         }
      533.                         while(!Key_Stop);//等待按鍵釋放
      534. //                        else
      535.                         if(Key_Restart==0)
      536.                         {
      537.                                 if(Key_Restart==0)
      538.                                 {
      539.                                         beep();
      540.                                         break;
      541.                                 }
      542.                         }
      543.                 }
      544.         }
      545. }

      546. void EX1_set_HuiDa_time()        interrupt 2 //外中斷1,設(shè)置回答時(shí)間
      547. {
      548.         delay(10);//消抖一下
      549.         if(Key_set_H==0)
      550.         {
      551.                 beep();
      552.                 while(1)
      553.                 {
      554.                         display_set(12,HuiDa_time_temp,13);//調(diào)用時(shí)間設(shè)置閃動(dòng)顯示函數(shù),效果為 [時(shí)間]
      555.                         if(Key_Start==0)//時(shí)間+1鍵
      556.                         {
      557.                                  delay(10);
      558.                                  if(Key_Start==0)
      559.                                  {
      560.                                          HuiDa_time_temp++;
      561.                                         if(HuiDa_time_temp==100)
      562.                                         {
      563.                                                 HuiDa_time_temp=1;
      564.                                         }
      565.                                  }
      566.                         }
      567.                         while(!Key_Start);//等待按鍵釋放
      568. //                        else
      569.                         if(Key_Stop==0)//時(shí)間-1鍵
      570.                         {
      571.                                  delay(10);
      572.                                  if(Key_Stop==0)
      573.                                  {
      574.                                          HuiDa_time_temp--;
      575.                                         if(HuiDa_time_temp==0)
      576.                                         {
      577.                                                 HuiDa_time_temp=99;
      578.                                         }
      579.                                  }
      580.                         }
      581.                         while(!Key_Stop);//等待按鍵釋放
      582. //                        else
      583.                         if(Key_Restart==0)
      584.                         {
      585.                                 if(Key_Restart==0)
      586.                                 {
      587.                                         beep();
      588.                                         break;
      589.                                 }
      590.                         }
      591.                 }
      592.         }
      593. }
      復(fù)制代碼



        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多