我正在使用具有HX711秤模块和cc2541蓝牙模块(Bluetooth 4.0)的Arduino Nano将数据发送到Android设备。
#define RX 11
#define TX 10
#include "HX711.h"
HX711 scale(A1, A0);
float scale_calibration = -13.5;
float mass,massround;
float units;
int out;
#include <SoftwareSerial.h>
SoftwareSerial bluetooth(TX, RX);
void setup()
{
bluetooth.begin(9600);
scale.set_scale();
scale.tare();
scale.set_scale(scale_calibration);
}
void loop()
{
for(int i = 0;i < 10; i ++) units =+ scale.get_units(), 1;
units / 10;
mass = units * 0.035274;
massround=mass;
out = round(massround);
out = abs(out);
if(out<0)
{
out=0;
scale.tare();
}
bluetooth.println(out);
}
如果我使用连接到PC的USB运行Arduino,则电子秤可以完美工作并通过蓝牙给出正确的结果。但是,当我使用电池(未连接到PC)运行Arduino时,我得到0到3克的重量,而秤上没有任何东西。因此,所有测量均不正确。我该如何解决这个问题?
答案 0 :(得分:0)
当您的Arduino由USB供电时,它和HX711的VCC和VDD可能都在+5伏特,因此“参考”电压(VDD)为5伏特。 用完电池时,硬件会接收约3伏特的电压,如果HX711上的VCC和VDD一起短路,它可能会“正常工作”,但会产生虚假的结果。
在arduino和称重传感器上可能都有跨接器或桥接器来设置VCC和VDD。警告!我只是在这里猜测,在更改电压设置之前,请务必先阅读技术文档,通过很小的电压变化即可轻松烹饪这些小电路。
这可能可以更好地以硬件或电气工程信道要求。