找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2378|回复: 10
收起左侧

单片机时钟程序 为什么秒到了60,分不会加一?

[复制链接]
ID:65956 发表于 2020-6-23 15:53 | 显示全部楼层
给你一个程序小函数参考,希望对你有帮助
//-----------------------计时---秒-分-时-----------------------------------
                if(js == 2)                                                                        //判断是否是计数2次500ms即是1秒
                {
                        js = 0;
                        Sec ++;
                        if(Sec == 60)
                        {
                                Sec = 0;
                                min ++;
                                if(min == 60)
                                {
                                        min = 0;
                                        hour ++;
                                        if(hour == 24)
                                        {
                                                hour = 0;
                                        }
                                }
                        }
                }
回复

使用道具 举报

ID:65956 发表于 2020-6-28 08:19 | 显示全部楼层
SKYLAR123 发表于 2020-6-24 09:40
if (second == 60)
  {
                second = 0;

这样写是你的逻辑没有搞对,你的目的是在计一秒后要对另外两个变量进行判断,如果你不放在钳套中去判断,当你定时器一中断可能会影响到它的另外变量判断,这样就会出现某个变量不动的原因。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表