//获得物体的真实重量
unsigned long Get_Weight(void )
{
HX711_Buffer = HX711_Read();
HX711_Buffer = HX711_Buffer/100;
if(HX711_Buffer > Get_plank())
{
True = HX711_Buffer;
True = True - Get_plank(); // 获取实物的 AD 采样数值。
True = (unsigned int)((float)True/4.257 +0.05); // 计 算 实 物 的 实际重量
// 因 为不同的传感器特性曲线不一样,因此,每一个传感器需要矫正这里的 4.30 这个除数。
// 当 发现测试出来的重量偏大时,增加该数值。
// 如 果测试出来的重量偏小时,减小改数值。
// 该 数值一般在 4.0-5.0 之间。因传感器不同而定。
//+0.05是为了四舍五入百分位
Buzzer = 1; // 关闭警报
}
// else if(HX711_Buffer < Weight_Maopi - 30)
// {
// Buzzer = 0; // 负重量报警
// }
// else if(HX711_Buffer > Weight_Maopi + 24970) // 大于 5Kg 的最大量程,报警
// {
// Buzzer = 0;
// }
// if(True > 5000 || HX711_Buffer < Get_plank() - 30)
// {
// Buzzer = 0;
// }
// else
// {
// Buzzer = 1;
// }
// True *=19.11;
// if(mode!=0) True-=76;
return True;
}
//****************************************************
// 获取上板的重量
//****************************************************
unsigned long Get_plank(void)
{
// unsigned long aa;
// HX711_Buffer=(HX711_Read()-8387600);
// HX711_Buffer=(unsigned long)((HX711_Buffer*50)/33490);
// HX711_Buffer=(HX711_Buffer-311)*10/11-9-aa;
HX711_Buffer = HX711_Read();
Plank = HX711_Buffer/100;
return Plank;
// return HX711_Buffer;
}
按照理解代码应该是这样的,但是在不加重量1602显示好大的数字,过千位。我的称重传感器是10kg 的。是程序哪里有问题吗?
//获得物体的真实重量
unsigned long Get_Weight(void )
{
HX711_Buffer = HX711_Read();
HX711_Buffer = HX711_Buffer/100;
if(HX711_Buffer > Get_plank())
{
True = HX711_Buffer;
True = True - Get_plank(); // 获取实物的 AD 采样数值。
True = (unsigned int)((float)True/4.257 +0.05); // 计 算 实 物 的 实际重量
// 因 为不同的传感器特性曲线不一样,因此,每一个传感器需要矫正这里的 4.30 这个除数。
// 当 发现测试出来的重量偏大时,增加该数值。
// 如 果测试出来的重量偏小时,减小改数值。
// 该 数值一般在 4.0-5.0 之间。因传感器不同而定。
//+0.05是为了四舍五入百分位
Buzzer = 1; // 关闭警报
}
// else if(HX711_Buffer < Weight_Maopi - 30)
// {
// Buzzer = 0; // 负重量报警
// }
// else if(HX711_Buffer > Weight_Maopi + 24970) // 大于 5Kg 的最大量程,报警
// {
// Buzzer = 0;
// }
// if(True > 5000 || HX711_Buffer < Get_plank() - 30)
// {
// Buzzer = 0;
// }
// else
// {
// Buzzer = 1;
// }
// True *=19.11;
// if(mode!=0) True-=76;
return True;
}
//****************************************************
// 获取上板的重量
//****************************************************
unsigned long Get_plank(void)
{
// unsigned long aa;
// HX711_Buffer=(HX711_Read()-8387600);
// HX711_Buffer=(unsigned long)((HX711_Buffer*50)/33490);
// HX711_Buffer=(HX711_Buffer-311)*10/11-9-aa;
HX711_Buffer = HX711_Read();
Plank = HX711_Buffer/100;
return Plank;
// return HX711_Buffer;
}
按照理解代码应该是这样的,但是在不加重量1602显示好大的数字,过千位。我的称重传感器是10kg 的。是程序哪里有问题吗?
举报