找回密码
 立即注册
查看: 140|回复: 0

DS1302时钟冒号按秒亮灭办法

[复制链接]
  • TA的每日心情
    开心
    2024-5-5 09:52
  • 签到天数: 99 天

    [LV.6]常住居民II

    3

    主题

    49

    回帖

    417

    积分

    中级会员

    积分
    417
    发表于 2024-3-8 13:24:55 | 显示全部楼层 |阅读模式
    //不用定时器,不用延时函数,可同时检测DS1302是否走秒。每分钟60次亮灭不多不少
    void md()/*秒点*/
    {
            unsigned int d,s,i;
            i=1500;/*亮点时长,晶振不同,数值不同*/
      if(TIME[0]%2==1)/*单秒*/
            {
                    d++;
                    if(d<i)
                    {
         COM2_DC_L=dm[disp[9]]+0x80;
                    }
                    else
                    {
                     COM2_DC_L=dm[disp[9]];
                    }
            }
            if(TIME[0]%2==0)/*双秒*/
            {
        d=0;
              s++;
              if(s<i)
              {
         COM2_DC_L=dm[disp[9]]+0x80;
              }
              else
                    {
                     COM2_DC_L=dm[disp[9]];
                    }       
            }
              if(TIME[0]%2==1)/*单秒*/
            {
                    s=0;/*因为时序问题,清零需要放在自加后面*/
            }
    }

    回复 送花

    使用道具 举报

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

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-21 15:27 , Processed in 0.052261 second(s), 29 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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