论坛元老
 
- 积分
- 10653
- 金钱
- 10653
- 注册时间
- 2017-4-14
- 在线时间
- 2780 小时
|
发表于 2020-11-19 20:06:38
|
显示全部楼层
s32 HX711_getdata(u8 beishu) //beishu: A_128 B_32 A_64
{
s32 count=0;
u8 i,amp,chaoshi;
HX711_ADDO_IO_IN();
switch(beishu)
{
case A_128:amp=1;break;
case B_32 :amp=2;break;
case A_64 :amp=3;break;
default :amp=1;break;
}
while(HX711_ADDO_IN)
{
HX711_Delay1ms();
chaoshi++;
if(chaoshi>10)
return 0;
}
for(i=0;i<24;i++)
{
HX711_ADSK=1;//最小0.2us
HX711_ADSK=0;
count<<=1;
if(HX711_ADDO_IN)
count++;
}
for ( i = 0; i < amp; i++)
{
HX711_ADSK=1;
HX711_ADSK=0;
}
if(count & 0x800000)//补码输出,需要还原
count=count | ((-1) << 24);
return(count);
}
你试试这样 断开应该返回的是0 |
|