本帖最后由 xutiemu 于 2013-3-12 11:23 编辑
数码管是共阳极的,除了小数点都显示正常,难道有什么玄机?
代码是在51上玩的,如下:
。。。。
。。。。
while(1)
{
DataPort=WeiMa[0];
LATCH2=1;
LATCH2=0; //位选
DataPort=DuanMa[time_buf[4]/16];
LATCH1=1;
LATCH1=0;
DelayMs(1);
DataPort=WeiMa[1];
LATCH2=1;
LATCH2=0;
DataPort=DuanMa[time_buf[4]%16]&0x7f; //段码,&0x07,用于点亮小数点啦,可惜没有现象
LATCH1=1;
LATCH1=0;
DelayMs(1);
DataPort=WeiMa[2];
LATCH2=1;
LATCH2=0;
DataPort=DuanMa[time_buf[5]/16];
LATCH1=1;
LATCH1=0;
DelayMs(1);
DataPort=WeiMa[3];
LATCH2=1;
LATCH2=0;
DataPort=DuanMa[time_buf[5]%16]&0x7f;
LATCH1=1;
LATCH1=0;
DelayMs(1);
DataPort=WeiMa[4];
LATCH2=1;
LATCH2=0;
DataPort=DuanMa[time_buf[6]/16];
LATCH1=1;
LATCH1=0;
DelayMs(1);
DataPort=WeiMa[5];
LATCH2=1;
LATCH2=0;
DataPort=DuanMa[time_buf[6]%16];
LATCH1=1;
LATCH1=0;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
小数点是亮的,我拿万用表侧过了,并且代码中如果如果只操作一个数码管则没有问题!!!锁存器之类的也都正常,但是有个问题,就是虽然&0x07,然后把段码一起所存的,但是小数点好像滞后了好多,所以一旦动态扫描的时候就来不及显示Dp了。这我就更不解了。
我的是共阳。
LATCH2=1;
LATCH2=0;
。。。
LATCH1=1;
LATCH1=0;
。。。
位选注释上边是位选,下面是段码,出问题的是第二段,所以简单注释了一下。
一周热门 更多>