求基于51单片机的c语言程序,一个数码管显示的秒表

设计3位数码管,每位用三极管驱动。设计3个按键,第一个为功能键,第二个为加键,第三个为减键。利用定时器来设计。按一次功能键,时间停止,调秒。此时按加键,秒加1,加到59后... 设计3位数码管,每位用三极管驱动。
设计3个按键,第一个为功能键,第二个为加键,第三个为减键。
利用定时器来设计。
按一次功能键,时间停止,调秒。此时按加键,秒加1,加到59后,再按加键,显示0。按减键,秒减1,减至0时,再按一次减键,显示59。
按二次功能键,时间仍停,调分。此时按加键,分加1,加到9后,再按加键,显示0。按减键,分减1,减至0时,再按一次减键,显示9。
按三次功能键,时间在此基础上走,最大显示9分59秒。
发我邮箱1173673053@qq.com
展开
 我来答
揭忆辰2N
2012-06-02 · TA获得超过542个赞
知道小有建树答主
回答量:561
采纳率:50%
帮助的人:414万
展开全部
功能键设置好久行了~
比方变量s调秒,变量m调分
则功能键设置为中断,按一次时间停止,进入调时状态
再按一次中断启发,时间再次运行,退出调时状态
sbit add_s= P1^1; //按下按键为低电平~
.....
void interrupt_s() interrupt 0
{
while(1)
{
if(add_s== 0) {s++;while(add_s==0);} //秒加
if(s==60) s=0;// 59后,自然回0
dislpay_(); //动态显示,不然调整效果哪里看。
.....
if(flag==0)break;
}
}
这是参考,仿真有空再做,protues吧?
追问
可不可以看一下完整的程序
追答
没写,这只是思路,你可以自己参考~
我建议你自己写写然后自己仿真试试,不懂再问,一定要有思路!
leiyangcheng
2012-06-02 · TA获得超过445个赞
知道答主
回答量:192
采纳率:100%
帮助的人:176万
展开全部
Q我
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式