导航:首页 > 操作系统 > 单片机抢答器

单片机抢答器

发布时间:2022-01-23 03:04:07

‘壹’ 用51单片机做抢答器需要卖什么东西

先使用proteus和uvision软件设计好电路图再进行仿真验证,然后按照电路图需要元件组装出来PCB电路板,再使用烧录器把程序烧录进单片机去就可以了!

‘贰’ 基于单片机的电子抢答器会出现哪些常见问题,并如何解决。

主要就是对选手按键的时间先后,鉴别力不够。

单片机速度太低,通常要隔十几个微秒,才检测一次按键,此期间,虽然有选手_先_后_按_键_,但是单片机却是同时读取,然后按照内定的程序报出一个选手的号码。明显有失公平。

如果使用电子电路构成抢答电路,可以将鉴别时间控制在纳秒的级别。

‘叁’ 急求最简单的单片机4人抢答器c51程序

;以下是以前做的八路抢答器程序,你参考一下。
ORG 0000H
JMP BEGIN
ORG 0030H
TABLE: ; 共阴极数码管显示代码表
DB 3FH,06H,5BH,4FH,66H ;12345
DB 6DH,7DH,07H,7FH ;6789
DELAY: MOV R5,#20
LOOP4: MOV R6,#50H ;延时20X20ms
LOOP5: MOV R7,#100
DJNZ R7,$
DJNZ R6,LOOP5
DJNZ R5,LOOP4
RET
;---------------------------------------
BEGIN: MOV P2,#0FFH ;P2口置高电平,准备接收信号
MOV R4,#0
MOV A,R4 ;R4位标志值送A寄存器
AGAIN: MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P1,A
LOOP1: MOV A,P3 ; 接收p3口的抢答信号
CPL A
JZ LOOP1
LOOP2: RRC A ;有人抢答信号则逐次移动判断哪一位抢答
INC R4
JNC LOOP2
;********************
MOV A,R4
MOVC A,@A+DPTR ;找到相应位显示代码
MOV P1,A
LEDDIS:
MOV A,#0FFH
CLR C
LEDDIS1:
RLC A
DJNZ R4,LEDDIS1
MOV P0,A
LOOP3: JNB P2.2,BEGIN ;若主持人按下复位信号键,则转向主程序
CPL P2.0 ;若没按复位信号键,则通过p2.2口给出高低信号驱动蜂鸣器
LCALL DELAY ;调用延时子程序
SJMP LOOP3 ;p2.2口反复间隔0.4s变化,驱动蜂鸣器
END

‘肆’ 单片机八路抢答器程序

OK EQU 20H;抢答开始标志位
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,#30;初设抢答时间为30s
MOV R2,#60;初设答题时间为60s
MOV TMOD,#11H;设置未定时器/模式1
MOV TH0,#0F0H
MOV TL0,#0FFH;越高发声频率越高,越尖
MOV TH1,#3CH
MOV TL1,#0B0H;50ms为一次溢出中断
SETB EA
SETB ET0
SETB ET1
SETB EX0
SETB EX1;允许四个中断,T0/T1/INT0/INT1
CLR OK
CLR RING
SETB TR1
SETB TR0;一开始就运行定时器,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了
;=====查询程序=====
START: MOV R5,#0BH
MOV R4,#0BH
MOV R3,#0BH
ACALL DISPLAY;未开始抢答时候显示FFF
JB P3.0,NEXT;ddddddd
ACALL DELAY
JB P3.0,NEXT;去抖动,如果"开始键"按下就向下执行,否者跳到非法抢答查询
ACALL BARK;按键发声
MOV A,R1
MOV R6,A;送R1->R6,因为R1中保存了抢答时间
SETB OK;抢答标志位,用于COUNT只程序中判断是否查询抢答
MOV R7,#01H ;读抢答键数据信号标志,这里表示只读一次有用信号
MOV R3,#0AH;抢答只显示计时,灭号数
AJMP COUNT;进入倒计时程序,"查询有效抢答的程序"在COUNT里面
NEXT: JNB P1.0,FALSE1
JNB P1.1,FALSE2
JNB P1.2,FALSE3
JNB P1.3,FALSE4
JNB P1.4,FALSE5
JNB P1.5,FALSE6
JNB P1.6,FALSE7
JNB P1.7,FALSE8
AJMP START
;=====非法抢答处理程序=====
FALSE1: MOV R3,#01H
AJMP ERROR
FALSE2: MOV R3,#02H
AJMP ERROR
FALSE3: MOV R3,#03H
AJMP ERROR
FALSE4: MOV R3,#04H
AJMP ERROR
FALSE5: MOV R3,#05H
AJMP ERROR
FALSE6: MOV R3,#06H
AJMP ERROR
FALSE7: MOV R3,#07H
AJMP ERROR
FALSE8: MOV R3,#08H
AJMP ERROR

;=====INT0(抢答时间R1调整程序)=====
INT0SUB:MOV A,R1
MOV B,#0AH
DIV AB
MOV R5,A
MOV R4,B
MOV R3,#0AH
ACALL DISPLAY;先在两个时间LED上显示R1
JNB P3.4,INC0;P3.4为+1s键,如按下跳到INCO
JNB P3.5,DEC0;P3.5为-1s键,如按下跳到DECO
JNB P3.1,BACK0;P3.1为确定键,如按下跳到BACKO
AJMP INT0SUB
INC0: MOV A,R1
CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新加起。
MOV R1,#00H
ACALL DELAY1
AJMP INT0SUB
ADD0: INC R1
ACALL DELAY1
AJMP INT0SUB
DEC0: MOV A,R1
JZ SETR1;如果R1为0, R1就置99,
DEC R1
ACALL DELAY1
AJMP INT0SUB
SETR1: MOV R1,#63H
ACALL DELAY1
AJMP INT0SUB
BACK0: RETI
;=====INT1(回答时间R2调整程序)=====
INT1SUB:MOV A,R2
MOV B,#0AH
DIV AB
MOV R5,A
MOV R4,B
MOV R3,#0AH
ACALL DISPLAY
JNB P3.4,INC1
JNB P3.5,DEC1
JNB P3.1,BACK1
AJMP INT1SUB
INC1: MOV A,R2
CJNE A,#63H,ADD1
MOV R2,#00H
ACALL DELAY1
AJMP INT1SUB
ADD1: INC R2
ACALL DELAY1
AJMP INT1SUB
DEC1: MOV A,R2
JZ SETR2
DEC R2
ACALL DELAY1
AJMP INT1SUB
SETR2: MOV R2,#63H
ACALL DELAY1
AJMP INT1SUB
BACK1: RETI
;=====倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=====
REPEAT:MOV A,R2 ;使用锦囊时重新计时
MOV R6,A
CLR RING
COUNT: MOV R0,#00H;重置定时器中断次数
MOV TH1,#3CH
MOV TL1,#0B0H;重置定时器
RECOUNT:MOV A,R6;R6保存了倒计时的时间,之前先将抢答时间或回答时间给R6
MOV B,#0AH
DIV AB;除十分出个位/十位
MOV 30H,A;十位存于(30H)
MOV 31H,B;个位存于(31H)
MOV R5,30H;取十位
MOV R4,31H;取个位
MOV A,R6
SUBB A,#07H
JNC LARGER;大于5s跳到LARGER,小于等于5s会提醒
MOV A,R0
CJNE A,#0AH,FULL;1s中0.5s向下运行
CLR RING
AJMP CHECK
FULL: CJNE A,#14H,CHECK;下面是1s的情况,响并显示号数并清R0,重新计
SETB RING
MOV A,R6
JZ QUIT;计时完毕
MOV R0,#00H
DEC R6;一秒标志减1
AJMP CHECK
LARGER: MOV A,R0
CJNE A,#14H,CHECK;如果1s向下运行,否者跳到查"停/显示"
DEC R6;计时一秒R6自动减1
MOV R0,#00H
CHECK: JNB P3.1,QUIT;如按下停止键退出
JNB OK,CHECKK ;只在回答倒计时才有效
AJMP NEXTT
CHECKK:JNB P3.0,REPEAT ;判断是否使用锦囊
NEXTT: ACALL DISPLAY
JB OK,ACCOUT;如果是抢答倒计时,如是则查询抢答,否者跳过查询继续倒数(这里起到锁抢答作用)
AJMP RECOUNT
ACCOUT:
MOV A,36H
JNB ACC.0,TRUE1
JNB ACC.1,TRUE2
JNB ACC.2,TRUE3
JNB ACC.3,TRUE4
JNB ACC.4,TRUE5
JNB ACC.5,TRUE6
JNB ACC.6,TZ1
JNB ACC.7,TZ2
AJMP RECOUNT
TZ1:JMP TRUE7
TZ2:JMP TRUE8
QUIT: CLR OK;如果按下了"停止键"执行的程序
CLR RING
AJMP START
;=====正常抢答处理程序=====
TRUE1: ACALL BARK
MOV A,R2
MOV R6,A;抢答时间R2送R6
MOV R3,#01H
CLR OK;因为答题的计时不再查询抢答,所以就锁了抢答
AJMP COUNT
TRUE2:ACALL BARK
MOV A,R2
MOV R6,A
MOV R3,#02H
CLR OK
AJMP COUNT
TRUE3:ACALL BARK
MOV A,R2
MOV R6,A
MOV R3,#03H
CLR OK
AJMP COUNT
TRUE4:ACALL BARK
MOV A,R2
MOV R6,A
MOV R3,#04H
CLR OK
AJMP COUNT
TRUE5:ACALL BARK
MOV A,R2
MOV R6,A
MOV R3,#05H
CLR OK
AJMP COUNT
TRUE6: ACALL BARK
MOV A,R2
MOV R6,A
MOV R3,#06H
CLR OK
AJMP COUNT
TRUE7:ACALL BARK
MOV A,R2
MOV R6,A
MOV R3,#07H
CLR OK
AJMP COUNT
TRUE8:ACALL BARK
MOV A,R2
MOV R6,A
MOV R3,#08H
CLR OK
AJMP COUNT
;=====犯规抢答程序=====
ERROR: MOV R0,#00H
MOV TH1,#3CH
MOV TL1,#0B0H
MOV 34H,R3;犯规号数暂存与(34H)
HERE: MOV A,R0
CJNE A,#06H,FLASH;0.3s向下运行->灭并停响
CLR RING
MOV R3,#0AH
MOV R4,#0AH
MOV R5,#0AH;三灯全灭
AJMP CHECK1
FLASH: CJNE A,#0CH,CHECK1;下面是0.8s的情况,响并显示号数并清R0,重新计
SETB RING
MOV R0,#00H
MOV R3,34H;取回号数
MOV R5,#0BH
MOV R4,#0BH;显示FF和号数
AJMP CHECK1
CHECK1: JNB P3.1,QUIT1
ACALL DISPLAY
AJMP HERE
QUIT1: CLR RING
CLR OK
AJMP START
;=====显示程序=====
DISPLAY:MOV DPTR,#DAT1;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出,
MOV A,R3
MOVC A,@A+DPTR
MOV P2,#0feH
MOV P0,A
ACALL DELAY2
MOV DPTR,#DAT2
MOV A,R5
MOVC A,@A+DPTR
MOV P2,#0fdH
MOV P0,A
ACALL DELAY2
MOV A,R4
MOVC A,@A+DPTR
MOV P2,#0fbH
MOV P0,A
ACALL DELAY2
RET
DAT1:DB 00h,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H
;"灭","1","2","3","4","5","6","7","8","9","灭","F"
DAT2:DB 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H
;第一个为零,其他与上相同,因为十位如果为零显示熄灭
;====加减时间延时(起到不会按下就加N个数)======
DELAY1: MOV 35H,#08H
LOOP0: ACALL DISPLAY
DJNZ 35H,LOOP0
RET
;=====延时4236个机器周期(去抖动用到)=====
DELAY: MOV 32H,#12H
LOOP: MOV 33H,#0AFH
LOOP1: DJNZ 33H,LOOP1
DJNZ 32H,LOOP
RET
;=====延时4236个机器周期(显示用到)=====
DELAY2: MOV 32H,#43H
LOOP3: MOV 33H,#1EH
MOV A,R7 ;每隔60~70个机器周期读一次P1口,全为1时为无效数据,继续读,有一个不为1时,转到正常抢答处理
JNZ AAAA1 ;没读到有效数据时继续转到AAAA1
LOOP2: DJNZ 33H,LOOP2
DJNZ 32H,LOOP3
RET
;=====读抢答按键数据口程序=====
;由于在读抢答数据口的时候,单片机首先进入倒计时程序,再调用显示程序,最后才检测按键口
;然而在检测按键口时动态扫描要调用三次(4ms)延时程序.这样就会导致读数据口出现滞后,造成1号优先最高.8号最低.
;故采用在延时子程序中加了读数据口程序.保证了灵敏度和可靠性
AAAA1: MOV A,P1
CJNE A,#0FFH,AA1 ;当不全为1时的数据为有效数据
AA0: MOV 36H,A ;将有效数据送到36H暂存
AJMP LOOP2
AA1: DEC R7
AJMP AA0

;=====发声程序=====
BARK: SETB RING
ACALL DELAY1
ACALL DELAY1
CLR RING;按键发声
RET
;=====TO溢出中断(响铃程序)=====
T0INT: MOV TH0,#0ECH
MOV TL0,#0FFH
JNB RING,OUT;
CPL P3.6;RING标志位为1时候P3.6口不短取反使喇叭发出一定频率的声音
OUT: RETI
;=====T1溢出中断(计时程序)=====
T1INT: MOV TH1,#3CH
MOV TL1,#0B0H
INC R0
RETI
END

‘伍’ 求大神做一个51单片机的四路抢答器,要汇编程序,电路图,和分析过程,还有4天答辩,

有一个八路的发给你吧,供参考

ORG 0000H

JMP BEGIN

ORG0030H

TABLE: ;共阴极数码管显示代码表

DB 3FH,06H,5BH,4FH,66H;12345

DB 6DH,7DH,07H,7FH ;6789

DELAY: MOV R5,#20

LOOP4: MOV R6,#50H ;延时20X20ms

LOOP5: MOV R7,#100

DJNZ R7,$

DJNZ R6,LOOP5

DJNZ R5,LOOP4

RET

;---------------------------------------

BEGIN: MOV P2,#0FFH ;P2口置高电平,准备接收信号

MOV R4,#0

MOV A,R4 ;R4位标志值送A寄存器

AGAIN: MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P1,A

LOOP1: MOV A,P3 ;接收p3口的抢答信号

CPL A

JZ LOOP1

LOOP2: RRC A ;有人抢答信号则逐次移动判断哪一位抢答

INC R4

JNC LOOP2

;********************

MOV A,R4

MOVC A,@A+DPTR ;找到相应位显示代码

MOV P1,A

LEDDIS:

MOVA,#0FFH

CLRC

LEDDIS1:

RLCA

DJNZR4,LEDDIS1

MOVP0,A

LOOP3: JNBP2.2,BEGIN;若主持人按下复位信号键,则转向主程序

CPL P2.0 ;若没按复位信号键,则通过p2.2口给出高低信号驱动蜂鸣器

LCALLDELAY ;调用延时子程序

SJMP LOOP3 ;p2.2口反复间隔0.4s变化,驱动蜂鸣器

END


‘陆’ 单片机八人抢答器程序设计

;------------------------------------------
KAI BIT P3.7 ;开始
;------------------------------------------
ORG 0000H
JMP START
START:
;----------------------;下面是清零(复位)
MOV P0, #0C0H ;显示0
MOV P2, #255 ;熄灯
MOV R4, #0
;----------------------;下面等待按下"开始"键
KAISHI:
JB KAI, KAISHI ;没有按"开始",就循环
CALL DELAY ;延时
JB KAI, KAISHI ;消抖
JNB KAI, $ ;等待释放
;----------------------
MOV P0, #0CH ;显示P
WAIT: ;等待抢答
MOV A, P1
CPL A
JZ WAIT ;继续等待
;----------------------
XS: ;查找选手按键的位置
CPL A
MOV P2, A
JNB ACC.0, J0
JNB ACC.1, J1
JNB ACC.2, J2
JNB ACC.3, J3
JNB ACC.4, J4
JNB ACC.5, J5
JNB ACC.6, J6
; JMP J7
J7: INC R4
J6: INC R4
J5: INC R4
J4: INC R4
J3: INC R4
J2: INC R4
J1: INC R4
J0: INC R4
MOV A, R4
MOV DPTR, #D_TAB
MOVC A, @A + DPTR
MOV P0, A
;----------------------;下面等待按下复位键
W_FW:
JB KAI, W_FW ;没有按,则转
CALL DELAY ;延时
JB KAI, W_FW ;消抖
JNB KAI, $ ;等待释放
JMP START
;------------------------
D_TAB:
DB 0C0H,0F9H,0A4H,0B0H, 99H ;共阳极0-9
DB 92H, 82H,0F8H, 80H, 90H,0BFH ;-
;------------------------------------------
DELAY: ;延时约10ms
MOV R6, #20
DJNZ R7, $
DJNZ R6, $ - 2
RET
;==========================================
END

;以上程序已经调好。

‘柒’ 单片机C51抢答器的原理图和程序 万分感谢 急!SOS

#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
///数码管位选管脚定义
#define wei P0
///数码管段选管脚定义
#define an P2
///短延时时间宏定义
#define short_delay 1
///抢答开始标志位
#define start 0
#define not_start 1
///八组参赛者抢答按键
#define key0 P1^0
#define key1 P1^1
#define key2 P1^2
#define key3 P1^3
#define key4 P1^4
#define key5 P1^5
#define key6 P1^6
#define key7 P1^7
///主持人加分键
#define key8 P3^6
///主持人抢答开始按键
#define key9 P3^7
///主持人数码管位选管脚定义
sbit zhuchi_dis1=P3^0;
sbit zhuchi_dis2=P3^1;
///蜂鸣器输出管脚定义
sbit ring=P3^4;
uchar cnt=20;
uchar person=0;//主持台前抢答者编号显示
///数码管位码表
uchar wei_dis[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f};
///数码管断码表
uchar table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x40
};
volatile uchar fenshu1,fenshu2,fenshu3,fenshu4,fenshu5,fenshu6,fenshu7,fenshu8;//八组成员分数缓冲寄存器
uchar jishi_flag=1; //倒计时标志位
uchar start_flag=not_start;//开始抢答标志位
///*********************蜂鸣器初始化****************************///
void ring_init()
{
ring=0;
}
///*********************记分牌分数初始化****************************///
void init_fenshu()
{
fenshu1=0;
fenshu2=0;
fenshu3=0;
fenshu4=0;
fenshu5=0;
fenshu6=0;
fenshu7=0;
fenshu8=0;
}
///*********************定时器0初始化****************************///
void timer0_init()
{
TMOD=0x01;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
ET0=1;//开定时器0中断
//TR0=1;//定时器0开始计数
}
///*********************外部中断0初始化****************************///
void int0_init()
{
EX0=1;//外部中断0使能
IT0=0;//负边沿触发方式
EA=1; //总中断使能
}
///*********************外部中断1初始化****************************///
void int1_init()
{
EX1=1;//外部中断0使能
IT1=0;//负边沿触发方式
EA=1; //总中断使能
}
///*********************设备初始化****************************///
void int_device()
{
timer0_init();
int0_init();
int1_init();
init_fenshu();
ring_init();
}

///*********************延时子函数****************************///
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

///*********************数码管显示子函数****************************///
void led_display(uchar z)
{
///*********************主持人****************************///
zhuchi_dis1=0;
an=table[z/10];
delay(short_delay);
zhuchi_dis1=1;

zhuchi_dis2=0;
an=table[z%10];
delay(short_delay);
zhuchi_dis2=1;

///*********************第一组****************************///
wei=wei_dis[0];
an=table[fenshu1/10];
delay(short_delay);
wei=wei_dis[1];
an=table[fenshu1%10];
delay(short_delay);
///*********************第二组****************************///
wei=wei_dis[2];
an=table[fenshu2/10];
delay(short_delay);
wei=wei_dis[3];
an=table[fenshu2%10];
delay(short_delay);
///*********************第三组****************************///
wei=wei_dis[4];
an=table[fenshu3/10];
delay(short_delay);
wei=wei_dis[5];
an=table[fenshu3%10];
delay(short_delay);
///*********************第四组****************************///
wei=wei_dis[6];
an=table[fenshu4/10];
delay(short_delay);
wei=wei_dis[7];
an=table[fenshu4%10];
delay(short_delay);
///*********************第五组****************************///
wei=wei_dis[8];
an=table[fenshu5/10];
delay(short_delay);
wei=wei_dis[9];
an=table[fenshu5%10];
delay(short_delay);
///*********************第六组****************************///
wei=wei_dis[10];
an=table[fenshu6/10];
delay(short_delay);
wei=wei_dis[11];
an=table[fenshu6%10];
delay(short_delay);
///*********************第七组****************************///
wei=wei_dis[12];
an=table[fenshu7/10];
delay(short_delay);
wei=wei_dis[13];
an=table[fenshu7%10];
delay(short_delay);
///*********************第八组****************************///
wei=wei_dis[14];
an=table[fenshu8/10];
delay(short_delay);

wei=wei_dis[15];
an=table[fenshu8%10];
delay(5);
}

///*********************主函数****************************///
void main()
{
//fenshu1=12;
uchar second=15;
int_device();
while(1)
{

if(start_flag==start)
TR0=1;
else
TR0=0;

if(jishi_flag)
{
if(cnt==0) //定时已达到一秒
{
cnt=20;
second--;
if(second<=0)
{
jishi_flag=0;
second=0;
}
}
led_display(second);
}
else
led_display(person);
}
}
///*********************外部中断0服务子函数****************************///
void int0() interrupt 0
{
if( start_flag==not_start)
ring=1;
if(start_flag==start)
ring=0;
switch(P1)
{
case 0xfe: {person=1;jishi_flag=0;} break;
case 0xfd: {person=2;jishi_flag=0;} break;
case 0xfb: {person=3;jishi_flag=0;} break;
case 0xf7: {person=4;jishi_flag=0;} break;
case 0xef: {person=5;jishi_flag=0;} break;
case 0xdf: {person=6;jishi_flag=0;} break;
case 0xbf: {person=7;jishi_flag=0;} break;
case 0x7f: {person=8;jishi_flag=0;} break;
//case 0xfd: person=2; break;
}

}
///*********************外部中断1服务子函数****************************///
void int1() interrupt 2
{
if(key8==0)
{
delay(300);
switch(person)
{
case 1:{fenshu1+=5;if(fenshu1>=99) fenshu1=0;}break;
case 2:{fenshu2+=5;if(fenshu2>=99) fenshu2=0;}break;
case 3:{fenshu3+=5;if(fenshu3>=99) fenshu3=0;}break;
case 4:{fenshu4+=5;if(fenshu4>=99) fenshu4=0;}break;
case 5:{fenshu5+=5;if(fenshu5>=99) fenshu5=0;}break;
case 6:{fenshu6+=5;if(fenshu6>=99) fenshu6=0;}break;
case 7:{fenshu7+=5;if(fenshu7>=99) fenshu7=0;}break;
case 8:{fenshu8+=5;if(fenshu8>=99) fenshu8=0;}break;
}
}

if(key9==0)
{
start_flag=start;
}

}
///*********************定时器0中断服务子函数****************************///
void timer0() interrupt 1
{
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
cnt--;
}

‘捌’ 单片机抢答器的的缺陷

单片机运行cpu资源是唯一的的,如果将抢答响应设定成中断形式,那么如果两人同时按抢答器,这是单片机不能正确判断出谁先按了抢答器。

‘玖’ 抢答器所用单片机原型是什么

“抢答器”实际上就是一种简单的逻辑电路,可以通过应用现成的单片机通过编写程序简单实现而已。

‘拾’ 用单片机设计一个8位竞赛抢答器程序怎么写

我有这个程序,需要不?,现成的,

阅读全文

与单片机抢答器相关的资料

热点内容
虚拟机执行命令 浏览:444
cctv16奥林匹克频道加密播出 浏览:899
c盘微信文件夹隐私 浏览:229
asp压缩mdb 浏览:670
node开源论坛源码 浏览:8
单片机比手机芯片还贵 浏览:35
java课表 浏览:555
如何在pdf里面修改 浏览:929
橙光制作器档案框在哪个文件夹 浏览:991
php如何抓取网页数据 浏览:642
计数器单片机 浏览:966
游戏aoi算法 浏览:845
phpmysqlint 浏览:914
怎么从appstore商城买东西 浏览:186
大秀直播平台源码 浏览:426
java视屏 浏览:936
电脑中如何给程序加密 浏览:240
java排序容器 浏览:944
职称证书在哪个app下载 浏览:363
四九算法算男女 浏览:661