|
电子小制作之由单片机构成的四路抢答器主要是由AT89C2051单片机和一个共阳数码管组成。本电子小制作之四路抢答器主要是运用单片机的有条转移类指令(JNB bit,rel)和动态死机指令$(使程序停在此处,待命。也可称为待机),使其达到抢答的效果。只要有一个人抢先按下其中一个抢答按钮,其余3人再按均无作用,即单片机此时正处于动态死机状态,只有主持人按下复位按钮后,才能使单片机复位,才能进行下一轮的抢答。按下抢答键后,数码管显示相应的数字,同时蜂鸣器发出“滴”的响声 。 这个电子小制作比较适合初学者练习电子制作时的实作项目,能很好的提高电子小制作的兴趣。
电子小制作之四路抢答器汇编源程序如下:
ORG 0000H
CLR P3.7
MOV P1,#0C0H
L1: JNB P3.2,L2
JNB P3.3,L3
JNB P3.4,L4
JNB P3.5,L5
JMP L1
L2: MOV P1,#0F9H
ACALL DELAY1
ACALL DELAY2
SETB P3.0
JMP $
L3: MOV P1,#0A4H
ACALL DELAY1
ACALL DELAY2
SETB P3.0
JMP $
L4: MOV P1,#0B0H
ACALL DELAY1
ACALL DELAY2
SETB P3.0
JMP $
L5: MOV P1,#99H
ACALL DELAY1
ACALL DELAY2
SETB P3.0
JMP $
DELAY1: CLR P3.0
RET
DELAY2: MOV R0,#50
L6: MOV R1,#100
L7: MOV R2,#100
DJNZ R2,$
DJNZ R1,L7
DJNZ R0,L6
RET
END
电子小制作之四路抢答器单片机晶振12MHZ。P3.7口为数码管的电源端,P3.0口为蜂鸣器的接口。P1口为数码管的段位选通端。本四路抢答器开机默认显示“0”。本程序已通过实践验证!!!
|
|