feat: KT mBMS 펌웨어 3종(HW1/2/3) 및 통합 빌드 환경 초기 커밋 (V4.0.0.1)
This commit is contained in:
98
APP_R3323/App/Source/calc_soc.h
Normal file
98
APP_R3323/App/Source/calc_soc.h
Normal file
@@ -0,0 +1,98 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* @file calc_soc.h
|
||||
* @author AMG Energy Solution Team
|
||||
* @version V1.0.0
|
||||
* @date 07-Feb-2022
|
||||
* @brief This file provides all the headers of calculation SOC functions.
|
||||
******************************************************************************
|
||||
* @attention
|
||||
*
|
||||
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
|
||||
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
|
||||
* TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
|
||||
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
|
||||
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
|
||||
*
|
||||
* <h2><center>© COPYRIGHT 2022 AMG</center></h2>
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||
#ifndef _CALC_SOC_H_
|
||||
#define _CALC_SOC_H_
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include "hc32_ddl.h"
|
||||
|
||||
/* Exported types ------------------------------------------------------------*/
|
||||
typedef struct {
|
||||
int32_t Capacity; // 4
|
||||
uint32_t LifeCycle; // 4
|
||||
int32_t ChargeCapacity; // 4
|
||||
int32_t DischargeCapacity; // 4
|
||||
uint32_t LifeCycleCapacity; // 4
|
||||
int32_t bakChargeCapacity; // 4
|
||||
int32_t bakDischargeCapacity; // 4
|
||||
} TCalcSOC, *PCalcSOC;
|
||||
|
||||
typedef struct {
|
||||
uint16_t CountPer10msec;
|
||||
uint16_t CountPer1min;
|
||||
uint16_t CountPer1hour;
|
||||
int16_t CurrPer10msec;
|
||||
} TCalculationSOC, *PCalculationSOC;
|
||||
|
||||
typedef struct {
|
||||
uint32_t CurrPerSecBuf;
|
||||
uint32_t CurrPerSec;
|
||||
uint32_t CurrPerMinBuf;
|
||||
uint32_t CurrPerMin;
|
||||
uint32_t CurrPerHourBuf;
|
||||
uint32_t CurrPerHour;
|
||||
} TCurrent, *PCurrent;
|
||||
|
||||
typedef struct {
|
||||
TCurrent Charge;
|
||||
TCurrent Discharge;
|
||||
} TManageSOC, *PManageSOC;
|
||||
|
||||
typedef struct {
|
||||
TCalcSOC CalcSOC;
|
||||
uint32_t initdata; // 4
|
||||
} TStoreSOC, *PStoreSOC;
|
||||
|
||||
/* Exported constants --------------------------------------------------------*/
|
||||
/* Exported macro ------------------------------------------------------------*/
|
||||
/* Exported extern variables -------------------------------------------------*/
|
||||
extern TCalculationSOC CalculationSOC, disCalculationSOC;
|
||||
extern TManageSOC ManageSOC, disManageSOC;
|
||||
extern TStoreSOC StoreSOC, disStoreSOC;
|
||||
|
||||
/* Exported functions ------------------------------------------------------- */
|
||||
|
||||
void SOC_Init(void);
|
||||
void SaveStoreSOC(void);
|
||||
void dec_soc_tick(uint32_t tick);
|
||||
|
||||
void App_TaskSOC(void);
|
||||
|
||||
void ProcessSOC(void);
|
||||
void UpdateSocStatus(void);
|
||||
|
||||
void LoadStoreSOC(void);
|
||||
void SetStoreSOC(uint16_t soc);
|
||||
void InitLifeCycleCount(uint16_t cycle);
|
||||
|
||||
void Calculation_10ms_Current(uint16_t tick_ms);
|
||||
uint16_t GetBatteryRemind(uint16_t id, uint16_t c_current, uint16_t d_current, uint16_t volt);
|
||||
|
||||
#ifdef CONSOLE_DEBUG
|
||||
void SDisplayCurrentStatus(uint8_t p);
|
||||
int8_t Process_DataCcModeSet(uint8_t *text, uint16_t size);
|
||||
#endif /* CONSOLE_DEBUG */
|
||||
|
||||
#endif
|
||||
|
||||
/*******************(C)COPYRIGHT 2022 AMG ********************END OF FILE******/
|
||||
Reference in New Issue
Block a user