打印

INA226的arduino的驱动代码

[复制链接]
4764|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mollylawrence|  楼主 | 2025-1-10 22:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
51xlf| | 2025-1-10 22:21 | 只看该作者
//INA226库: https://github.com/RobTillaart/INA226

#include "INA226.h"
#include "Wire.h"

INA226 INA(0x40);                             //I2C地址
//INA226 INA(0x44);

//电压电流采样
void VA(){
  float V = INA.getBusVoltage();              //VBUS电压V
  float mA = INA.getCurrent_mA();             //采样电阻电流mA
  float mW = INA.getPower_mW();               //功率
  float mV = INA.getShuntVoltage_mV();        //采样电阻分压            
  Serial.print( V);  Serial.print(" V  \t");
  Serial.print(mA);  Serial.print(" mA \t");
  Serial.print(mW);  Serial.print(" mW \t");
  Serial.print(mV);  Serial.print(" mV \t");
  Serial.println();  
}

//电压电流采样2
void VA2(){
  float V = INA.getBusVoltage();              //VBUS电压V
  float mV = INA.getShuntVoltage_mV();        //采样电阻分压
  float A = mV/5;                             //采样电阻分压/采样电阻值 = 电流
  Serial.print( V);  Serial.print(" V  \t");
  Serial.print(mV);  Serial.print(" mV \t");
  Serial.print( A, 4);  Serial.print(" A  \t");
  Serial.println();  
}


void setup(){
  Serial.begin(115200);
  Wire.begin();
  INA.setMaxCurrentShunt(8, 0.01);  //最大电流A,分流电阻值R
}

void loop(){
  VA2();
  delay(1000);
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

31

主题

1705

帖子

1

粉丝