蛋疼飞 发表于 2013-3-26 15:30:02

新人求助

这是24位AD芯片芯片hx711的一段驱动程序。
ulong ReadCount(void)        //增益128
{
        ulong count;
        uchar i;
        hx711_dout=1;
        Delay__hx711_us();
        hx711_sck=0;
        count=0;
        while(hx711_dout);
        for(i=0;i<24;i++)
        {
                  hx711_sck=1;
                  count=count<<1;
                hx711_sck=0;
                  if(hx711_dout)
                        count++;
        }
        hx711_sck=1;
        Delay__hx711_us();
        hx711_sck=0;
        return(count);
}
在该芯片的说明手册上说明了,该芯片的输出喂二进制补码,范围是8000000 到7FFFFFF;但是在该驱动函数的返回值为什么是一个无符号的数据?小弟不是很理解。希望大神能够赐教。再者我把AD的值直接显示在液晶上,数值很不稳定?应该从哪些方面来检查问题呢?
页: [1]
查看完整版本: 新人求助