仿真版本:Proteus8.6及以上版本
程序編譯:Keil5 C51
編程語言:C語言
設計編號:【O02】
1.? 簡介
? 本文提出了一種基于51單片機的8路搶答器設計。該設計在硬件方面主要采用AT89C51單片機作為主控核心,結合獨立按鍵、數碼管、蜂鳴器。搶答限定時間為10S,在按下復位后顯示當前選手分數,再按下開始搶答才有效,當選手搶答后顯示對應的搶答選手編碼,在倒計時20S內評委對選手打分。
2.? 主要功能
a.主持人進行復位,依次顯示8位選手的分數,8位選手分數顯示結束后主持人按下?lián)尨痖_始按鍵,搶答者才可以開始搶答,數碼管搶答倒計時10S。
b.搶答者按下按鍵,數碼管顯示搶答者的編號和答題剩余時間倒計時20S
c.在20S內,搶答者答題正確,主持人按下加分按鍵,分數加一,答錯主持人按下減分按鍵,分數減一。
3.? 源程序(Keil5)
本設計采用keil5 C51軟件(內附安裝包)實現程序設計。如需用keil4打開程序,可自行通過.c和.h文件新建工程即可。
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit k0=P1^0;
sbit k1=P1^1;
sbit k2=P1^2;
sbit k3=P1^3;
sbit k4=P1^4;
sbit k5=P1^5;
sbit k6=P1^6;
sbit k7=P1^7;
sbit beep=P3^7; /*蜂鳴器*/
sbit ks=P2^4; /*開始計時*/
sbit jiayi=P2^5; /*分數加1*/
sbit jianyi=P2^6; /*分數減1*/
sbit fw=P2^7; /*復位*/
int flg=1;
bit flg1=0;
int t=0,s=0;
uchar qiangdanum=0x0b;
uchar code table[]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x00};
uchar ge=0,shi=0;
uint num,time=10, fs=0;
int nums[]={5,5,5,5,5,5,5,5};
void kyy(void) ;
void displayfs();
void display(); /*顯示函數*/
void kys(); /*設置按鍵函數*/
void kys2(); /*搶答按鍵函數*/
void delay(unsigned int z) /*延遲函數*/
{
unsigned int x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void intial()
{
TMOD=0X01; /*采用方式一,即十六位計數器*/
TH0=(65536-50000)/256; /*設置初始值,50ms中斷一次*/
TL0=(65536-50000)%256;
EA=1;ET0=1; /*開啟總中斷源,定時器中斷*/
}
void intia2()
{ TMOD=0X10; /*采用方式一,即十六位計數器*/
TH1=(65536-50000)/256; /*設置初始值,50ms中斷一次*/
TL1=(65536-50000)%256;
EA=1;ET1=1; /*開啟總中斷源,定時器中斷*/
}
main()
{ intia2();
intial(); /*初始化*/
beep=0;
while(1)
{ kys();
if(flg1==1)
displayfs();
else
display(); /*顯示函數*/
if(flg==0)
{
kys2();
}
}
}
void kys2() /*搶答按鍵函數*/
{
if(k0==0) /*開關0按下*/
{
delay(5);
if(k0==0)
{ flg=1;
qiangdanum=1; /* 1號選手搶答成功,數碼管顯示1*/
beep=1;
delay(1000);
beep=0;
time=20;
}
4.? 仿真proteus8.6
? 本設計采用proteus8.6軟件(內附安裝包)實現仿真設計,如下圖所示。proteus軟件一般存在高低版本兼容問題,該仿真是通過proteus8.6導出的,所以請盡量使用proteus8.6打開文件,低于proteus8.6的版本不能夠正常使用,高于proteus8.6的版本除了proteus8.8/8.9理論上可以正常使用。
初始界面:
開始倒計時:
選手搶答:
5.? 設計報告
設計報告主要包括硬件電路、軟件設計、仿真調試等等,僅供參考。
6.? 資料清單
設計資料主要包括C程序+仿真+設計報告+使用說明+元件清單+操作視頻等。
7.? 資料獲取鏈接
百度網盤下載鏈接:【O02】百度網盤下載鏈接
更多單片機仿真設計合集:單片機仿真設計合集