基于单片机带计分功能的8路抢答器设计

编程入门 行业动态 更新时间:2024-10-10 04:28:58

基于<a href=https://www.elefans.com/category/jswz/34/1769836.html style=单片机带计分功能的8路抢答器设计"/>

基于单片机带计分功能的8路抢答器设计

百度网盘下载地址(983):点击下载

该8路抢答器通过AT89C51控制,电路硬件部分包括51单片机最小系统、电源、数码管、蜂鸣器等。

抢答器操作规则:

1.主持人进行复位,依次显示8位选手的分数,8位选手分数显示结束后主持人方可按下开始按键

2.主持人按下抢答开始按键,抢答者才可以开始抢答,数码管抢答倒计时10S

3.抢答者按下按键,数码管显示抢答者的编号和答题剩余时间倒计时20S

4.在20S内,抢答者答题正确,主持人按下加分按键,分数加一。答错主持人按下减分按键,分数减一。(默认抢答者的初始分数为50)

5.重复1~4的步骤

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[]={50,50,50,50,50,50,50,50};
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;                 /*开启总中断源,定时器中断*/ 

更多推荐

基于单片机带计分功能的8路抢答器设计

本文发布于:2024-03-23 19:14:05,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1741798.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:单片机   功能   抢答器

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!