永发信息网

定时器1中断动态刷新从999999~0倒计时,数码管只显示有效位的C语言程序怎么编?

答案:1  悬赏:40  手机版
解决时间 2021-03-17 14:35
  • 提问者网友:流星是天使的眼泪
  • 2021-03-16 17:52
定时器1中断动态刷新从999999~0倒计时,数码管只显示有效位的C语言程序怎么编?
最佳答案
  • 五星知识达人网友:千杯敬自由
  • 2021-03-16 19:04
这个和代码顺序有关系:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

while (1)
{
if (flag1s == 1) //判断1秒定时标志
{
flag1s = 0; //1秒定时标志清零
sec--; //秒计数自减1【这里是先减一,后面再送显示】
//将sec按十进制位从低到高依次提取到buf数组中
buf[0] = sec%10;
buf[1] = sec/10%10;
buf[2] = sec/100%10;
buf[3] = sec/1000%10;
buf[4] = sec/10000%10;
buf[5] = sec/100000%10;
//从最高为开始,遇到0不显示,遇到非0退出循环
}
}
如果初值要改为999999,代码可以改成如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

while (1)
{
if (flag1s == 1) //判断1秒定时标志
{
flag1s = 0; //1秒定时标志清零
// sec--; //秒计数自减1【屏蔽】
//将sec按十进制位从低到高依次提取到buf数组中
buf[0] = sec%10;
buf[1] = sec/10%10;
buf[2] = sec/100%10;
buf[3] = sec/1000%10;
buf[4] = sec/10000%10;
buf[5] = sec/100000%10;
sec--; //秒计数自减1【这里是先送显示,后面再减一】
//从最高为开始,遇到0不显示,遇到非0退出循环
}
}追问有完整点的程序么,后面好像还有东西吧
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯