/*
 * psu_struct.h
 *
 *  Created on: Jul 24, 2024
 *      Author: colorbass
 */

#ifndef INC_METER_H_
#define INC_METER_H_

#include "main.h"
#include "charger_config.h"


typedef struct {
	uint32_t meterLastTick; // Время последнего пакета Alive
    uint8_t  online;
    uint32_t lastTick;  // Время последнего вызова для каждого коннектора
    uint64_t EnergyPSU_Ws;  // Энергия для каждого коннектора (расчет по силовым модулям)
    uint32_t AbsoluteEnergy;  // Абсолютная энергия каждого счетчика (ватт*час)
    uint32_t EnergyOffset; // смещение энергии по счетчикам (если 0, значит не успели захватить Offset) (ватт*час)
    uint32_t EnergyOffset1; // смещение энергии по счетчикам относительно PSU

    uint8_t enable; //если 0, то счетчик обнуляется
}METER_t;

extern METER_t METER;

void METER_CalculateEnergy();

#endif /* INC_METER_H_ */
