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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9973|回復: 8
打印 上一主題 下一主題
收起左側

實用性強的8路單片機搶答器制作 帶程序電路圖pcb圖

  [復制鏈接]
跳轉到指定樓層
樓主
ID:76686 發表于 2015-4-11 22:07 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
       這款實用性強的8路單片機搶答器,使用的是AT89S52單片機,四位數碼管作為搶答、回答時間的倒計時以及計分顯示用。該制作從實用性出發,8個按鍵都是分開來做的,做出來的東西是能夠使用的而不是模型。
       這款實用性強的8路單片機搶答器主要的功能:可以顯示搶答、回答時間的倒計時,可以調節搶答、回答時間,能夠提示犯規搶答,可以計分,可以實現軟復位。
       全部資料打包下載地址 實用性強的8路單片機搶答器.rar (169.95 KB, 下載次數: 159)








源程序如下:
  1. /*八路搶答器-----能夠顯示搶答、回答時間倒計時,能夠調節搶答、回答時間,能夠報警犯規搶答,可以計分,可以實現軟復位*/
  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;//開始鍵,時間設置時+
  7. sbit Key_Stop=P3^5;//停止鍵,時間設置時-
  8. sbit Key_Restart=P3^0;//復位鍵
  9. sbit Key_set_Q=P3^2;//搶答時間設置鍵
  10. sbit Key_set_H=P3^3;//回答時間設置鍵
  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};//記分數組,初設值50分
  15. void delay(uint z);//延時函數聲明
  16. void init();//初始化函數聲明
  17. void display(uchar XuanShou,uchar time);//顯示數字函數聲明
  18. void display_char(uchar char_1,uchar char_2,uchar char_3,uchar char_4 );//顯示字符函數聲明
  19. void display_set(uchar char_1,uchar time,uchar char_2);//時間設置閃動顯示函數聲明
  20. void display_score(uchar xs_num);//分數查詢顯示函數
  21. void beep();//蜂鳴器函數
  22. void beep_last();//蜂鳴器特殊報警
  23. void LED();//提示燈函數
  24. uchar QiangDa_time,HuiDa_time,QiangDa_time_temp=20,HuiDa_time_temp=30;//搶答時間、回答時間變量
  25. uchar count_0,count_1;//定時中計數用的
  26. uint shan_count=0;//閃動顯示計數用
  27. void main()
  28. {
  29.         uchar AnJian,ShuJu,XuanShou_num;
  30. Top:init();//初始化
  31.         XuanShou_num=1;//為分數查詢做好準備
  32.         while(1)
  33.         {
  34.                 display(10,0);//顯示一杠
  35.                 ShuJu=P1;
  36.                 if(ShuJu!=0xff)//犯規搶答!
  37.                 {
  38. //                        delay(10);
  39. //                        if(ShuJu!=0xff)
  40. //                        {
  41.                                 AnJian=ShuJu;
  42.                                 switch(AnJian)//取出選手編號
  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;//無法顯示了,有兩個以上的鍵同時按下了!!不過這種概率相當小
  53.                                 }
  54.                                 while(1)
  55.                                 {
  56.                                         display_char(13,14,14,XuanShou_num);//閃動顯示犯規選手并且報警
  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;//調用的是閃動顯示函數,但是不讓其閃動
  74.                                         }
  75.                                         if(Key_Restart==0)
  76.                                         {
  77.                                                 delay(10);
  78.                                                 if(Key_Restart==0)
  79.                                                 {
  80.                                                         beep();
  81.                                                         goto Top;//熱復位
  82.                                                 }
  83.                                         }
  84.                                 }
  85. //                        }
  86.                 }
  87.                 if(Key_Start==0)
  88.                 {
  89.                         delay(10);
  90.                         if(Key_Start==0)//主持人按下搶答鍵,搶答正式開始!
  91.                         {
  92.                                 QiangDa_time=QiangDa_time_temp;
  93.                                 HuiDa_time=HuiDa_time_temp;
  94.                                 beep();
  95.                                 TR1=1;//搶答時間開始倒計時
  96.                                 break;//跳出犯規搶答查詢循環
  97.                         }
  98.                 }
  99. //一下為查分程序測試
  100.                  if(Key_Stop==0)
  101.                  {
  102.                          delay(10);
  103.                         if(Key_Stop==0)//進入分數查詢顯示
  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;//熱復位
  137.                                                 }
  138.                                         }
  139.                                 }
  140.                         }
  141.                  }
  142.         }
  143.         while(1) //查詢是否有按鍵按下,進入搶答循環
  144.         {
  145.                 display(10,QiangDa_time);//顯示搶答倒計時
  146.                 if(QiangDa_time==0)
  147.                 {
  148. //                        beep();
  149.                         TR1=0;//關閉定時器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)//熱復位鍵,從頭開始下一輪
  157.                                         {
  158.                                                 beep();
  159.                                                 goto Top;
  160.                                         }
  161.                                 }
  162.                         }
  163.                 }
  164.                 ShuJu=P1;//把P1口的數據送給變量
  165.                 if(ShuJu!=0xff)//有按鍵按下
  166.                 {
  167. //                        delay(10);
  168. //                        if(ShuJu!=0xff)//確定有按鍵按下
  169. //                        {
  170.                                  AnJian=ShuJu;//傳遞數據掃描值
  171. //                                 TR0=1;//啟動定時器0
  172.                                  TR1=0;//關閉定時器1
  173.                                  break;//不再進行查詢是否有按鍵按下了
  174. //                        }
  175.                 }
  176.         }
  177.         switch(AnJian)//取出選手編號
  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;//無法顯示了,有兩個以上的鍵同時按下了!不過這種概率相當小
  188.         }
  189.         TR0=1;//啟動定時器0(在這里啟動比在前面好)
  190.         while(1)
  191.         {
  192.                 display(XuanShou_num,HuiDa_time);//顯示選手編號和回答倒計時
  193.                 if(HuiDa_time==0)
  194.                 {
  195.                         TR0=0;//關閉定時器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;//關閉定時器0,選手開始回答
  205.                                 while(!Key_Stop);
  206.                                 while(1) //在顯示選手回答倒計時時只有在stop按鍵按下時,才可按復位鍵
  207.                                 {
  208.                                         display(XuanShou_num,HuiDa_time);//顯示選手編號和回答倒計時
  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;//調用的是閃動顯示函數,但是不讓其閃動
  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;//調用的是閃動顯示函數,但是不讓其閃動
  236.                                         }
  237.                                         if(Key_Restart==0)
  238.                                         {
  239.                                                 delay(10);
  240.                                                 if(Key_Restart==0)//熱復位鍵,從頭開始下一輪
  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)//熱復位鍵,從頭開始下一輪
  254.                         {
  255.                                 beep();
  256.                                 goto Top;
  257.                         }
  258.                 } */
  259.         }
  260.        
  261. }

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

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

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

  280.         EX0=1;//啟動外中斷0
  281.         EX1=1;//啟動外中斷1

  282.         P1=0xff;//讀P1口的數據要先置1準備
  283.         count_0=0;//定時器中的計數清零
  284.         count_1=0;
  285.         shan_count=0;
  286. }

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

  289.                 P2=0x7f;//0111 1111最后一位數碼管亮
  290.                 P0=table[XuanShou];//選手編號
  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];//時間的個位
  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];//時間的十位
  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 )//閃動!顯示字符的函數
  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)//時間設置的閃動顯示
  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最后一位數碼管亮
  367.                 P0=table[char_2];//顯示一個符號
  368.                 delay(1);
  369.                 P2=0x7f;//0111 1111
  370.                 P0=0xff;//消余輝
  371.                 delay(1);

  372.                 P2=0xbf;//1011 1111
  373.                 P0=table[time%10];//時間的個位
  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];//時間的十位
  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];//顯示一個符號
  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)//分數查詢顯示函數
  410. {
  411.                 P2=0x7f;//0111 1111最后一位數碼管亮
  412.                 P0=table[(table_score[xs_num]%10)];//分數的個位
  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)];//分數的十位
  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];//間隔符號
  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];//選手編號
  433.                 delay(1);
  434.                 P2=0xef;//1110 1111
  435.                 P0=0xff;//消余輝
  436.                 delay(1);
  437. }
  438. void beep()        //有源蜂鳴器函數
  439. {
  440.          fmq=0;
  441.          delay(80);
  442.          fmq=1;
  443. }
  444. void beep_last()//最后一聲特殊聲調
  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//定時器0中斷函數_回答時間
  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//定時器1中斷函數_搶答時間
  477. {
  478.         TH1=(65536-50000)/256;//50us
  479.         TL1=(65536-50000)%256;//馬上重裝初值,這樣在后面調用beep()函數時就不會影響定時器的準確計時了
  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,設置搶答時間
  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);//閃動效果
  506.                         display_set(12,QiangDa_time_temp,13);//調用時間設置閃動顯示函數,效果為 [時間]
  507.                         if(Key_Start==0)//時間+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)//時間-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,設置回答時間
  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);//調用時間設置閃動顯示函數,效果為 [時間]
  555.                         if(Key_Start==0)//時間+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)//時間-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. }
復制代碼



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

使用道具 舉報

沙發
ID:77383 發表于 2015-5-4 23:05 | 只看該作者
好厲害
回復

使用道具 舉報

板凳
ID:95977 發表于 2015-11-16 16:50 | 只看該作者
你的排阻用的是多大的??
回復

使用道具 舉報

地板
ID:115897 發表于 2016-5-7 11:54 | 只看該作者
收藏了
回復

使用道具 舉報

5#
ID:119290 發表于 2016-5-8 15:44 | 只看該作者
最簡單的8路搶答器好像只要一個4511就行,不用單片機的吧。
回復

使用道具 舉報

6#
ID:107352 發表于 2016-6-20 11:50 | 只看該作者
非常不錯很好
回復

使用道具 舉報

7#
ID:127432 發表于 2016-6-20 16:43 | 只看該作者
學習了非常不錯
回復

使用道具 舉報

8#
ID:156054 發表于 2016-12-20 15:35 | 只看該作者
可以 很強
回復

使用道具 舉報

9#
ID:190056 發表于 2017-4-16 14:46 | 只看該作者
好棒,真厲害,
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日本aa毛片a级毛片免费观看 | 美女视频一区 | a国产视频 | 亚洲精品粉嫩美女一区 | 久久精品国产久精国产 | a级在线免费 | 亚洲欧美精品国产一级在线 | 国产精品99久久久久久动医院 | 欧美美女爱爱视频 | 奇米视频777 | 成人国产精品色哟哟 | 91精品国产91久久久久久 | 精品成人av | 日韩久久精品 | 在线播放中文 | 国产高清精品一区二区三区 | 欧美亚洲视频在线观看 | 国产精品视频免费观看 | 天堂网av在线 | 中文字幕亚洲在线 | 麻豆av电影网 | 亚洲欧美一区二区三区视频 | 中文在线一区二区 | 精品视频一区二区三区 | 狠狠ri | 凹凸日日摸日日碰夜夜 | 欧美成人h版在线观看 | 国内精品视频在线 | 精品成人一区二区 | 久久久久国产 | 国产精品中文 | 国产日韩欧美激情 | 久久av一区二区 | 午夜影院网站 | 另类视频区 | 在线免费av观看 | 精久久久 | 99久久国产综合精品麻豆 | 国产精品一区二区三级 | 在线观看亚洲一区二区 | 精品成人 |