大神们来看看为什么要关闭所有数码管?P2=0xff这条

2019-07-15 14:46发布

还有下一条P0=0xff是消影吗?
void DisplaySecond(unsigned char s)
{
     P25=0;
     P26=1;
     P27=1;                 //P2.6引脚输出低电平, DS6点亮
     P0=Tab[s/10];          //显示十位
     delay();
     delay();
     delay();

     P25=1;
     P26=0;
     P27=0;                //P2.7引脚输出低电平, DS7点亮
     P0=Tab[s%10];         //显示个位
     delay();
     delay();
     delay();

         P2=0xff;              //关闭所有数码管
            P0=0xff;
         delay();
     delay();
     delay();

}

/******************************************************************
函数功能:显示分钟的子程序
入口参数:m
********************************************************************/
void DisplayMinute(unsigned char m)
{
      P25=0;
          P26=0;
          P27=1;           // P2.3引脚输出低电平, DS3点亮
      P0=Tab[m/10];    //显示个位
          delay();
      delay();
      delay();
      delay();

          P25=0;
          P26=1;
          P27=0;           // P2.4引脚输出低电平, DS4点亮
          P0=Tab1[m%10];
          delay();
      delay();
      delay();

          P2=0xff;         //关闭所有数码管
          P0=0xff;
          delay();
      delay();
      delay();

}


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
525355
1楼-- · 2019-07-15 20:33
看样子秒和分切换会灭一下,就是全灭,屏蔽掉也没影响,只是视觉效果不好。
q670060881
2楼-- · 2019-07-16 01:07
525355 发表于 2016-3-14 09:20
看样子秒和分切换会灭一下,就是全灭,屏蔽掉也没影响,只是视觉效果不好。

屏蔽掉就不能计时了,是不是每次动态扫描需要置初值啊?
boya355
3楼-- · 2019-07-16 02:37
只是人的眼睛视觉问题吧, 分辨不了 微妙级的转换, 并且关闭数码管 变化后还需要故意延时一下, 否则眼睛更是分不清 哪管子在点亮,   
525355
4楼-- · 2019-07-16 02:57
q670060881 发表于 2016-3-14 09:24
屏蔽掉就不能计时了,是不是每次动态扫描需要置初值啊?

屏蔽掉“P2=0xff;         //关闭所有数码管        P0=0xff;”,不影响计时
         
张大猛
5楼-- · 2019-07-16 05:47
 精彩回答 2  元偷偷看……

一周热门 更多>