單片機搶答器設計
在知識比賽中, 特別是做搶答題目的時(shí)候, 在搶答過(guò)程中,為了知道哪一組或哪一位選手先答題,必須要設計一個(gè)系統來(lái)完成這個(gè)任務(wù)。如果在搶答中,靠視覺(jué)是很難判斷出哪組先答題。利用單片機系統來(lái)設計搶答器,使以上問(wèn)題得以解決,即使兩組的搶答時(shí)間相差幾微秒,也可分辨出哪組優(yōu)先答題。本文主要介紹了單片機搶答器設計及工作原理,以及它的實(shí)際用途。 ! 系統工作原理本系統采用8051單片機作為核心??刂葡到y的四個(gè)模塊分別為:存儲模塊、顯示模塊、語(yǔ)音模塊、搶答開(kāi)關(guān)模塊。該搶答器系統通過(guò)開(kāi)關(guān)電路四個(gè)按鍵輸入搶答信號;利用語(yǔ)音芯片ISD1420 完成語(yǔ)音的錄放功能; 利用存儲程序; 利用一個(gè)數碼管來(lái)完成顯示功能。工作時(shí),用按鍵通過(guò)開(kāi)關(guān)電路輸入各路的搶答信號,經(jīng)單片機的處理, 輸出控制信號, 控制數碼管和語(yǔ)音芯片工作。在數碼管上顯示哪一組先答題,并通過(guò)語(yǔ)音系統讀出 “第9組請答題”,從而實(shí)現整個(gè)搶答過(guò)程。搶答器程序在本文下放給了一個(gè)還需要大家來(lái)完善,如果你有更好的設計請聯(lián)系我(www.51hei.com首頁(yè)有聯(lián)系方式),系統的原理圖如下圖
下面這個(gè)單片機搶答器設計程序,大家測試一下,有什么問(wèn)題可直接與我聯(lián)系
*
1、如果想調節搶答時(shí)間或答題時(shí)間,按"搶答時(shí)間調節"鍵或"答題時(shí)間調節"鍵進(jìn)入調節狀態(tài),此時(shí)會(huì )顯示現在設定的搶答時(shí)間或回答時(shí)間值,如想加一秒按一下"加1s"鍵,如果想減一秒按一下"-1s"鍵,時(shí)間LED上會(huì )顯示改變后的時(shí)間,調整范圍為0s~99s, 0s時(shí)再減1s會(huì )跳到99,99s時(shí)再加1s會(huì )變到0s。
2、主持人按"搶答開(kāi)始"鍵,會(huì )有提示音,并立刻進(jìn)入搶答倒計時(shí)(預設15s搶答時(shí)間),如有選手搶答,會(huì )有提示音,并會(huì )顯示其號數并立刻進(jìn)入回答倒計時(shí)(預設10s搶答時(shí)間),不進(jìn)行搶答查詢(xún),所以只有第一個(gè)按搶答的選手有效。倒數時(shí)間到小于5s會(huì )每秒響一下提示音。
3、如倒計時(shí)期間,主持人想停止倒計時(shí)可以隨時(shí)按"停止"按鍵,系統會(huì )自動(dòng)進(jìn)入準備狀態(tài),等待主持人按"搶答開(kāi)始"進(jìn)入下次搶答計時(shí)。
4、如果主持人未按"搶答開(kāi)始"鍵,而有人按了搶答按鍵,犯規搶答,LED上不斷閃爍FF和犯規號數并響個(gè)不停,直到按下"停止" 鍵為止。
************************************************
P1.0為開(kāi)始搶答,P1.7為停止,p1.1-p1.6為六路搶答輸入 數碼管段選P0口,位選P2口,蜂鳴器輸出為P3.6口
**************************************************
;============
OK EQU 20H ;搶答開(kāi)始標志位;將P1口與P2口互換,P3.0-P1.0,P3.1-P1.7
RING EQU 22H ;響鈴標志位
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INT0SUB
ORG 000BH
AJMP T0INT
ORG 0013H
AJMP INT1SUB
ORG 001BH
AJMP T1INT
ORG 0040H
;===============-
;單片機搶答器主程序設計
;================
MAIN: MOV R1,#0FH ;初設搶答時(shí)間為15s
MOV R2,#0AH ;初設答題時(shí)間為10s
MOV TMOD,#11H ;設置未定時(shí)器/模式1
MOV TH0,#0F0H
MOV TL0,#0FFH ;越高發(fā)聲頻率越高,越尖
MOV TH1,#3CH
MOV TL1,#0B0H ;50ms為一次溢出中斷
SETB EA
SETB ET0
SETB ET1
SETB EX0
SETB EX1 ;允許四個(gè)中斷,T0/T1/INT0/INT1
CLR OK
CLR RING
SETB TR1
SETB TR0 ;一開(kāi)始就運行定時(shí)器,以開(kāi)始顯示FFF.如果想重新計數,重置TH1/TL1就可以了
相關(guān)推薦
技術(shù)專(zhuān)區
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線(xiàn)
- 開(kāi)關(guān)電源
- 單片機
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機控制
- 藍牙
- PLC
- PWM
- 汽車(chē)電子
- 轉換器
- 電源管理
- 信號放大器
評論