写个笔记,如果你不喜欢看,可以不看
#include <ESP8266WiFi.h>
#include <Arduino.h>
#include <U8g2lib.h>
#include <INA226.h>
#include <Wire.h>
#define INA_COUNT 4
U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE); // All Boards without Reset of the Display
INA226 INA(0x40);
void setup() {
u8g2.begin();
u8g2.setFont(u8g2_font_fur11_tr);
Wire.begin();
if (!INA.begin() )
{
u8g2.setCursor(0, 15);
u8g2.print("ina226 Fial!!");
u8g2.sendBuffer();
while (1);
}
INA.setMaxCurrentShunt(1, 0.002);
}
int i = 0;
void loop() {
u8g2.clearBuffer();
// 获取电压、电流和功率
float busVoltage = INA.getBusVoltage(); // 总线电压
float current_mA = INA.getCurrent(); // 电流 (mA)
float power_mW = INA.getPower(); // 计算功率 (mW)
// // 显示总线电压
u8g2.setCursor(0, 15);
u8g2.print("Voltage: ");
u8g2.print(busVoltage);
u8g2.print(" V");
// 显示电流
u8g2.setCursor(0, 30);
u8g2.print("Current: ");
u8g2.print(current_mA);
u8g2.print(" mA");
// 显示功率
u8g2.setCursor(0, 45);
u8g2.print("Power: ");
u8g2.print(power_mW);
u8g2.print(" mW");
u8g2.setCursor(0, 60);
u8g2.printf("Time: %d", i);
u8g2.sendBuffer();
i++;
if (i >= 100)
i = 0;
}