|
這是設計自制的8路搶答器,所有功能正常,包括倒計時時長設置(范圍0~99s,不會溢出),搶答成功的對應選手序號的鎖存與顯示,無人搶答的報警,任意時刻都可重置搶答器。我自己又加了一個小動作子程序在里面——就是可以自定義某位選手的搶答有效,并屏蔽其他選手的搶答。
該搶答器基于STC12C5A60S2單片機,顯示電路是基于74LS164的靜態顯示電路。
文件內包含使用說明書
小提醒:務必根據實際實驗器材進行封裝,網上找的大多數封裝不一定合適,如果拿來就用會出大事!
注意!
注意!
注意!
電路圖里所有的上拉電阻的VCC均與電源直接相連,如果需要接到開關處,請自行修改。
制作出來的實物圖如下:
51hei.png (410.68 KB, 下載次數: 45)
下載附件
2019-12-22 23:31 上傳
截屏2019-12-21下午12.32.59.png (132.65 KB, 下載次數: 55)
下載附件
2019-12-21 12:45 上傳
截屏2019-12-21下午12.55.46.png (1.28 MB, 下載次數: 42)
下載附件
2019-12-21 12:56 上傳
00:倒計時結束界面
11:開始界面
01:準備開始搶答標志(按住START鍵顯示)
02:設置搶答時間標志(按住SET鍵顯示)
03:重置標志(按住RESTART鍵顯示)
99:小動作模式標志
操作方法:
開始界面:START鍵開始搶答
(顯示11) SET鍵設置倒計時時間
先后按下RESTART鍵、SET鍵、START鍵并先松開SET鍵進入小動作模式
設置時長:START鍵增加時間(若時間為99則不會繼續增加)
RESTART鍵減少時間(若時間為0則不會繼續減少)
SET確認當前時間設置(默認倒計時時長為10s)
搶答倒計時:若有選手搶答則顯示對應的序號,并且蜂鳴器短暫報警
(若選手1搶答成功,則顯示“no. 1”)
若無人搶答,倒計時結束蜂鳴器短暫報警,并顯示“00”
任意情況下按下RESTART鍵,回到開始界面
小動作模式:若選擇“no.0”則不小動作
通過START鍵和RESTART鍵選擇選手,SET鍵確認
(會自動屏蔽除小動作模式選擇的選手以外其他選手的搶答)
單片機源程序如下:
- //************主程序************
- void main()
- {
- Init();
- while(1)
- {
- if(flag1==0&&flag3==0&&flag2==0) displaymode(11);
- if(key0==0&&flag1==0) //開始計時
- {
- delay(500);
- if(key0==0)
- {
- while(!key0)
- {
- displaymode(1);
- }
- flag1=1;
- buzzer();
- TR0=1;
- }
- }
- if(key1==0&&flag1==0) //設置時間
- {
- delay(500);
- if(key1==0)
- {
- while(!key1)
- displaymode(2);
- flag2=1;
- key();
- }
- }
- while(!key2)
- //小動作代碼:選0時不小動作,選任意選手則默認為該選手搶答成功
- {
- delay(500);
- while(key2==0&&key1==0)
- {
- delay(500);
- while(key2==0&&key1==0&&key0==0)
- {
- displaymode(99);
- flag4=1;
- }
- zuobi();
- }
- }
- if(flag2==1) //顯示誰搶答成功
- {
- flag1=0;
- buzzer();
- t=t0;
- qiangda();
- }
- if(flag3==1) //報警
- {
- buzzer();
- while(key2)
- displaymode(0);
- while(!key2)
- displaymode(3);
- }
- }
- }
復制代碼
全部資料51hei下載地址:
八路搶答器-.7z
(944.26 KB, 下載次數: 29)
2019-12-22 23:46 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|