打印

数码管小数点后一位显示不正常是为什么?

[复制链接]
1649|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
void show(unsigned char x, unsigned char y)     //显示测温函数
{        
        unsigned char u1;
    static char m = 0;
        conversion( x,y );
                P2 = 0xff;
                u1=buf[m];
                P1=seg[u1];
                P2=wei[m];
                if(m==1)
                {
                   P1=seg1[u1];         //显示小数点
                }
                m++;
                if(m>3)
                m =0;
}

未命名.jpg (51.86 KB )

未命名.jpg

相关帖子

沙发
shell.albert| | 2012-8-14 15:32 | 只看该作者
数码管输出译码有问题。看看你的七段数据管译码编码部分。
可以先输出一个固定的值,看看第3个数码管是不是好的。排除硬件问题。
再就是你的软件了。

使用特权

评论回复
板凳
zhangdongze|  楼主 | 2012-8-14 23:39 | 只看该作者
硬件肯定没问题,软件程序方面看来看 2# shell.albert

使用特权

评论回复
地板
zhangdongze|  楼主 | 2012-8-14 23:46 | 只看该作者
unsigned char seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsigned char seg1[]={0x30,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

129

帖子

1

粉丝