hii;
我正在使用INA219模块测试LED项目的电压和电流感应。
唯一的问题是Arduino IDE的串行监视器上不显示任何电压或电流(即0.00V和0.00mA)。
我使用I2C扫描器代码检查了i2c通信是否正确。
我有没有遗漏的东西? 请帮帮我。
注:这是我的第二个模块,两个模块都不工作
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
是的,我正在使用上述链接中的Adafruit Arduino代码。
这是库中包含的示例代码。
注意:由于无法上传.ino文件,我将粘贴下面的代码
#include <Wire.h>
#include <Adafruit_INA211.h>
Adafruit_INA219 INA219;
作废设置(作废)
{
Serial.begin(11.52万);
同时(!Serial){
//将暂停Zero,Leonardo等,直到串行控制台打开
延迟(1);
}
UINT32_t当前频率;
serial.println ("Hello!");
//初始化INA219。
//默认情况下,初始化将使用最大范围(32V,2A)。 但是
//您可以调用setCalibration函数来更改此范围(参见注释)。
ina219.begin();
//要使用略低的32V,1A范围(安培精度更高):
ina219.setCalibration_32V_1A();
//或要使用较低的16V,400mA范围(电压和电流的精度更高):
ina219.setCalibration_16V_400mA();
serial.println ("使用INA219测量电压和电流...");
}
void循环(void)
{
浮子释放电压= 0;
浮子总线电压= 0;
浮点电流mA = 0;
浮子放电压= 0;
浮子POWER_mW = 0;
shuntvoltage = INA211.getShuntVoltage_mV();
总线电压= INA211.getBusVoltage_V();
current_mA = INA219.getCurrent_mA();
POWER_mW = INA219.getPower_mW();
放电压=母线电压+(shuntvoltage / 1000);
serial.print ("总线电压:");Serial.print (busvoltage);Serial.println (" V");
serial.print ("并联电压:");serial.print (shuntvoltage);serial.println (" mV");
serial.print ("加载电压:");Serial.print (logoltage);Serial.println (" V");
serial.print ("电流:");Serial.print (current_mA);Serial.println (" mA");
serial.print ("功率:");Serial.print (POWER_mW);Serial.println (" mW");
serial.println ("");
迟延(2000年);
}