加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

基于51單片機(jī)的搶答器設(shè)計(jì)_6路搶答器

08/15 09:35
2449
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無(wú)法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
實(shí)物圖
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

一、設(shè)計(jì)任務(wù)

基于單片機(jī)搶答器的設(shè)計(jì),實(shí)現(xiàn)搶答器的基本功能。

二、性能指標(biāo)要求

1. 需要自己設(shè)計(jì)電路并焊接電路板

2.有一個(gè)主持人控制開(kāi)關(guān)和6路搶答按扭,當(dāng)主持人允許搶答時(shí)才能進(jìn)行搶答操作,并用一個(gè)數(shù)碼管顯示搶答選手的號(hào)碼,同時(shí)其他選手不能再搶答。

3.當(dāng)主持人允許搶答后倒計(jì)時(shí)5秒時(shí)間,在這5秒內(nèi)搶答有效,過(guò)后就不能進(jìn)行搶答了。

4.電路上要加個(gè)蜂鳴器的電路,當(dāng)有選手搶答時(shí)蜂鳴器響一下。

5.當(dāng)有選手搶答后,進(jìn)行倒計(jì)時(shí)20秒作為選手回答問(wèn)題時(shí)間,用兩個(gè)數(shù)碼管顯示,倒計(jì)時(shí)時(shí)間到時(shí)有聲光提示。

6.畫電路板時(shí)要增加下載接口,方便調(diào)試程序。

7.?dāng)U展功能(選做)

用按鍵可設(shè)置倒計(jì)時(shí)的時(shí)間,范圍在5秒到30秒之間。

三、設(shè)計(jì)思路及設(shè)計(jì)框圖

1.設(shè)計(jì)思路

本次設(shè)計(jì)是基于單片機(jī)STC89C52芯片來(lái)擴(kuò)展的搶答器。

首先先設(shè)置支持人開(kāi)始搶答按鍵,在芯片的P1^6腳處接入按鍵,按鍵按下,蜂鳴器響來(lái)實(shí)現(xiàn)這個(gè)搶答開(kāi)始信號(hào)。

在主持人開(kāi)始允許搶答時(shí),六位選手連接的單片機(jī)從P1^0—P1^5口的任意一位選手進(jìn)行搶答,搶答時(shí)間為5s,搶答后設(shè)定回答問(wèn)題時(shí)間為5s—30s,倒計(jì)時(shí)5s時(shí)LED燈亮,并且蜂鳴器響。

所搶答的選手號(hào)碼、搶答時(shí)間與回答時(shí)間均將字節(jié)送入數(shù)碼管中顯示。用兩個(gè)按鍵來(lái)掌控回答問(wèn)題的時(shí)間,時(shí)間加計(jì)數(shù)與時(shí)間減計(jì)數(shù)。

當(dāng)需要重新進(jìn)行搶答時(shí)則按下與芯片的RST段(即9腳)連接的按鍵則可以實(shí)現(xiàn)。所搶答的選手號(hào)碼、搶答時(shí)間與回答時(shí)間均將字節(jié)送入數(shù)碼管中顯示。

P0口接的是一個(gè)四位一體共陰數(shù)碼管,P2.4、P2.2、P2.1、P2.0作為數(shù)碼管的位選。由于單片機(jī)自身IO口的驅(qū)動(dòng)能力不能讓蜂鳴器發(fā)出聲音,因此要通過(guò)三極管NPN來(lái)放大電流,這樣才能使蜂鳴器發(fā)出聲音。

總體設(shè)計(jì)框圖:

電路原理圖

部分程序:

#include <reg52.h>
sbit BEEP = P2^0;
sbit LED1 = P2^3;
sbit LED2 = P2^2;
sbit LED3 = P2^1;

#define duanPore?? ?P0?? ??? ?//數(shù)碼管段控制端口,高電平有效
sbit DIG1 = P2^4;
sbit DIG2 = P2^5;
sbit DIG3 = P2^6;
sbit DIG4 = P2^7;

sbit KEY1 = P1^0;
sbit KEY2 = P1^1;
sbit KEY3 = P1^2;
sbit KEY4 = P1^3;
sbit KEY5 = P1^4;
sbit KEY6 = P1^5;
sbit KEY7 = P3^2;
sbit KEY8 = P3^3;

unsigned char code tab_duan[19] =
{
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,
0x77,0x7c,0x39,0x5e,0x79,0x71,
0x40,0x00,0x48
};
unsigned char dat_buf[4] = {17, 17, 0, 5};
int time = 5, time1 = 5, time2 = 20;
unsigned char i = 0;
unsigned int count = 0;
bit flag_lock = 1;

void DelayMs(unsigned int ms);?? ??? ?//延時(shí)函數(shù)
void dig_scan(unsigned char *dat); ?//數(shù)碼管顯示掃描
unsigned char KeyScan(void);?? ? ? ?//獨(dú)立按鍵掃描
void InitTimer0(void);?? ??? ??? ? ? //定時(shí)器0初始化
void alarm(void);?? ??? ? ? ? ? ? ? //報(bào)警函數(shù)
void AnswerTask(void);?? ? ? ? ? ? ? //搶答任務(wù)
void SetTime(void); ? ? ? ? ? ? ? //設(shè)置倒計(jì)時(shí)時(shí)間

void main(void)
{
BEEP = 0;
LED1 = 1;
InitTimer0();
time = time1;
while(1)
{
if(KeyScan() == 7)
{
alarm();
AnswerTask();
}
if(KeyScan() == 8)
{
alarm();
SetTime();
}

dat_buf[0] = 17;
dat_buf[1] = 17;
dat_buf[2] = time / 10;
dat_buf[3] = time % 10;
dig_scan(dat_buf);
}
}
資料內(nèi)容:

需要全部資料可從我的里資源下載。

也可以加入我的紛傳圈子,里面有資源壓縮包的百度網(wǎng)盤下載地址及提取碼。

紛傳點(diǎn)擊用微信打開(kāi)即可,過(guò)程有點(diǎn)繁瑣請(qǐng)見(jiàn)諒。

  • 有需要資料的可了解一下.docx

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
XRCGB32M000F1H00R0 1 Murata Manufacturing Co Ltd Parallel - Fundamental Quartz Crystal, 32MHz Nom, SMD, 3 PIN

ECAD模型

下載ECAD模型
$0.55 查看
ASEMB-25.000MHZ-LR-T 1 Abracon Corporation XO, Clock, 1MHz Min, 150MHz Max, 25MHz Nom, CMOS,
$2.87 查看
TJA1052IT/5Y 1 NXP Semiconductors TJA1052i - Galvanically isolated high-speed CAN transceiver SOP 16-Pin

ECAD模型

下載ECAD模型
$7.84 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜