1.功能介紹
多功能八路搶答器是基于51單片機(jī)來(lái)設(shè)計(jì)的,除了可以實(shí)現(xiàn)最基本功能——8路搶答外,還具有自動(dòng)處理犯規(guī)選手,搶答時(shí)間調(diào)整,還可以進(jìn)行答題,計(jì)分,并且可以查詢(xún)或修改分?jǐn)?shù)。
2.硬件設(shè)計(jì)
(1)硬件框圖
該搶答器的硬件由五個(gè)部分組成,包括單片機(jī)、按鍵電路、數(shù)碼管顯示電路、指示燈電路和聲音提示電路。硬件框圖如下
(2)硬件原理圖
由于每個(gè)部分的硬件電路都比較簡(jiǎn)單,就不做介紹了,大家直接看圖。
3.軟件設(shè)計(jì)
(1)軟件流程圖
(2)程序源碼
由于本例程代碼比較多,這里就只貼出部分代碼,有興趣的小伙伴可以下載源碼去看看
void main()
{ uint j;//用來(lái)構(gòu)成循環(huán)
TMOD=0x11;//T0設(shè)置為16位定時(shí)方式
TH0=0x3c;
TL0=0xb0;//50ms
IE= 0x82; //允許T0中斷
TR0=0; //關(guān)閉定時(shí)開(kāi)關(guān)
while(1)
{ while(1)
{ LED01=1;LED02=1;LED03=1;LED04=1;LED05=1;LED06=1;LED07=1;LED08=1;//監(jiān)視燈初始化為滅
if(KS1==0) {ks1=1;break;}//開(kāi)始搶答倒計(jì)時(shí)
if(KS2==0) {ks2=1;break;}//開(kāi)始答題倒計(jì)時(shí)
if(ADD1==0) {delaynms(20); if(ADD1==0) dtime++;if(dtime>=1000) dtime=0;}//答題時(shí)間調(diào)整
if(MIN1==0) {delaynms(20); if(MIN1==0) dtime--;if(dtime<0) dtime=999;}
if(ADD10==0) {delaynms(20); if(ADD10==0) dtime=dtime+10;if(dtime>=1000) dtime=0;}
if(MIN10==0) {delaynms(20); if(MIN10==0) dtime=dtime-10;if(dtime<0) dtime=999;}
shumasm(LED[qdtime_2],dtime);//數(shù)碼管動(dòng)態(tài)掃描4位
if(B_score==0)
{ delaynms(20);
if(B_score==0)
while(1)
{ if(B_score==0)
{ delaynms(20);if(B_score==0) break;}//再次按下B_score退出分?jǐn)?shù)調(diào)節(jié)
shumasm(LED_num[num],score[num]); //數(shù)碼管動(dòng)態(tài)掃描4位,顯示選手編號(hào)和對(duì)應(yīng)分?jǐn)?shù)
if(next==0)
{ delaynms(20);if(next==0) num++; if(num==9) num=0;}//顯示下一位選手編號(hào)和對(duì)應(yīng)分?jǐn)?shù)
if(last==0)
{ delaynms(20);if(last==0) num--; if(num<0) num=8;}//顯示上一位選手編號(hào)和對(duì)應(yīng)分?jǐn)?shù)
if(REST==0) {delaynms(20); if(REST==0) score[num]=0; }//將當(dāng)前選手分?jǐn)?shù)清零
if(ADD1==0) {delaynms(20); if(ADD1==0) score[num]++;if(score[num]>=1000) score[num]=0;}//調(diào)節(jié)數(shù)碼管上對(duì)應(yīng)選手分?jǐn)?shù),分?jǐn)?shù)范圍0-999
if(MIN1==0) {delaynms(20); if(MIN1==0) score[num]--;if(score[num]<0) score[num]=999;}
if(ADD10==0) {delaynms(20); if(ADD10==0) score[num]=score[num]+10;if(score[num]>=1000) score[num]=0;}
if(MIN10==0) {delaynms(20); if(MIN10==0) score[num]=score[num]-10;if(score[num]<0) score[num]=999;}
}
}
}
....
}
.....
}
}
-
搶答器
+關(guān)注
關(guān)注
16文章
243瀏覽量
34587 -
原理圖
+關(guān)注
關(guān)注
1302文章
6360瀏覽量
235247 -
單片機(jī)
+關(guān)注
關(guān)注
6043文章
44622瀏覽量
638660 -
51單片機(jī)
+關(guān)注
關(guān)注
274文章
5705瀏覽量
124326 -
數(shù)碼管
+關(guān)注
關(guān)注
32文章
1887瀏覽量
91412
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
怎樣去設(shè)計(jì)一種基于51單片機(jī)的八路搶答器系統(tǒng)
使用51單片機(jī)設(shè)計(jì)的多功能八路搶答器的電路圖和程序資料免費(fèi)下載
![使用<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>設(shè)計(jì)的<b class='flag-5'>多功能</b><b class='flag-5'>八路</b><b class='flag-5'>搶答器</b>的電路圖和程序資料免費(fèi)下載](https://file.elecfans.com/web1/M00/A2/2D/pIYBAF1JJquAdtPGAAB_MZXZ49A105.png)
單片機(jī)如何設(shè)計(jì)八路搶答器
基于51單片機(jī)的八路搶答器設(shè)計(jì)
![基于<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>八路</b><b class='flag-5'>搶答器</b>設(shè)計(jì)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
基于51單片機(jī)的八路搶答器控制設(shè)計(jì)(畢設(shè)課設(shè)資料)
![基于<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>八路</b><b class='flag-5'>搶答器</b>控制設(shè)計(jì)(畢設(shè)課設(shè)資料)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評(píng)論