2016 - 2024

感恩一路有你

单片机怎么让程序等待按键输入(89c52独立按键介绍?)

浏览量:4955 时间:2023-03-16 03:04:56 作者:采采

单片机怎么让程序等待按键输入(89c52独立按键介绍?)

89c52独立按键介绍?

的主要设备主要包括数码管(用于显示倒计时时间和抢答成功的玩家人数)按钮(主持人按钮和玩家按钮)。使用单独的键盘,程序循环等待键输入。一旦玩家按下该键,即单片机输入端口为1(或0,自行设置)时,阻止其他键输入,并相应显示玩家号,倒计时结束无人抢答时将失效。

单片机编程实现0---20秒计时器,并用proteus软件设计硬件电路?

可以设置倒计时定时器的时间,并可以选择5/15/20/30/35/45/50分钟倒计时。

倒计时时间由四个dip开关位的1/2/3控制,

第二个数字表示5分钟,第三个数字表示15分钟,第四个数字表示30分钟。

5/15/20/30/35/45/50分钟倒计时可以通过不同的组合产生。

P1.0端口的外接发光二极管为状态LED,在计时未开始时常亮,计时过程中闪烁。

K1是开始按钮,K2是停止按钮。

A_bit equ 20h数码管一位数存储单元

B_bit equ 21h数码管十位存储单元

Temp equ 22h计数器值存储位置

引导初始化

Movp3和# 0ffh初始化p3端口,并将其设置为高电平,用于按键输入。

MOV P0,#0FFH关闭数码管显示时间。

CLR P1.0点亮L:JB P3.6,$ loop确定开始按钮K1是否按下?

呼叫延迟10延迟10毫秒触点抖动消除

JB P3.6,如果是干扰,START返回。

JNB P3.6,$等待按钮被释放。

读取dip开关的状态,并获得倒计时时间。

S:

MOV A,#0先清除A。

JB P2.0,A1判断dip开关第二位是否连接,如果连接则A加5。

添加一个,#5

A1: JB p 2.1和A2判断dip开关第三位是否接通,如果接通则A加15。

加一个,#15

A2: JB p 2.2和A3判断dip开关的第四位是否接通,如果接通则A加30。

加一个,#30

A3:·MOV临时雇员

此时,T:

CLR P2.4释放继电器1并开始计时(启动时继电器处于吸合状态)。

CLR P2.3释放继电器2并开始计时(启动时继电器处于吸合状态)。

MOV·R2 #120

AB1: MOV R3,编号250

TIM: MOV一,临时转换成十进制数临时十六进制数。

Mov b,#10 10十进制/10 =十进制

分部ab

Mov b_bit,一个十在一个。

Mov a_bit,b位在b中。

Mov dptr,#numtab指定查找表的起始地址。

mov r0,#4

dpl1: mov R1,#250

Dplop: MOV A,A _ BIT取个位数。

MOVC A,@A DPTR,用个位数查7段码。

Mov p0,a发送7位代码。

Clr p2.7打开位显示。

呼叫延迟1显示1毫秒。

Setb p2.7关闭单元显示器以防止重影。

Mov a,b_bit取十位数。

MOVC一个,@ DPTR一个,检查十位数的7段码。

Mov p0,a发送七段十位数的代码。

Clr p2.6打开十位数显示。

呼叫延迟1显示1毫秒。

Setb p2.6关闭十位数显示,防止重影。

插入一个程序段,判断计时过程中是否有按键输入。

C1: JB p 3.6,B1

呼叫延迟10延迟10毫秒以消除抖动。

JB P3.6,C1

JNB P3.6,$等待按钮被释放。

AJMP集合1

B1: JB p 3.7,M33

呼叫延迟10延迟10毫秒以消除抖动。

JB P3.7,B1

JNB P3.7,$等待按钮被释放。

AJMP结束

M33: DjNZ R3,时间12 ms循环执行250次,时间约为0.5秒。

CPL P1.0使LED每1秒闪烁一次。

Djnz r2,AB1循环在1分钟内执行120次。

十二月温度零下1度整整一分钟。

MOV A,临时

JNZ显示

判断TEMP的值是否为0?不为0的周期。

结束计时

over CHO 15-@ . com clr p 1.0 L:·MOV·R4,排名第二D1: MOV R5,编号248

DJNZ R5,美元

D1 DJNZ R4

浸水使柔软

10毫秒延迟子程序

D:MOV R4,#20

D2: MOV R5,编号248

DJNZ R5,美元

D2 DJNZ R4

浸水使柔软

实验板上7个数码管的0 ~ 9位的常用负显示码。

NUMTAB:DB 0CFH,03H,5DH,5BH,93H,0DAH,0DEH,43H,0DFH,0DBH

结束

时间 按钮 状态 开关

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。