用C语言编程两个按键控制三个7段数码管显示0~99

用C语言编程两个按键控制三个7段数码管显示0~99要求使用AT89C5174LS47三个按钮一个控制加数按一次加1,按住两秒不放一直加数松开停止。一个控制减数按一次减1,... 用C语言编程两个按键控制三个7段数码管显示0~99 要求使用AT89C51 74LS47 三个按钮 一个控制加数 按一次加1,按住两秒不放一直加数松开停止。 一个控制减数按一次减1 ,按住两秒不放一直减数松开停止。一个清零 。求解~有仿真最好
是三个按钮控制两个数码管····
展开
 我来答
做而论道
高能答主

2013-07-31 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3.2万
采纳率:86%
帮助的人:8805万
展开全部
K_ADD BIT P3.0

ORG 0000H
CLR A
MOV P0, A
;----------------------
M_LOOP:
JB K_ADD, $
CALL DL10MS
JB K_ADD, M_LOOP
ADD A, #1
DA A
MOV P0, A
MOV R2, #0
;----------------------
ML1: ;等两秒
CALL DL10MS
JB K_ADD, M_LOOP
INC R2
CJNE R2, #200, ML1
;----------------------
ML2: ;快速加一
ADD A, #1
DA A
MOV P0, A
MOV R2, #10
ML3:
CALL DL10MS
DJNZ R2, ML3
JB K_ADD, M_LOOP
JMP ML2
;----------------------
DL10MS:
MOV R6, #20
MOV R7, #110
DJNZ R7, $
DJNZ R6, $ - 2
RET

END

汇编的程序,应该不符合要求,也就没有多写,仅仅有加一的功能。
匿名用户
2013-07-29
展开全部

给你了 看看是不是这样的。

更多追问追答
追问

用这个电路,程序怎么写?还有按钮按下去后自动加减数时数字变化能不能变快?

追答
程序不是在123.c 文件上了吗  速度是能变快的 只要你改变 sum==40这个值就行 
void T0_time()interrupt 1
{
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
sum++;
xianshi();
}
这个中断函数是50ms sum+1;所以sum==40 的意思就是40*50ms=2s;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式