2024-12-06 09:38:25 +00:00
|
|
|
|
|
|
|
#include "bl_chargControl.h"
|
|
|
|
#include "parameter.h"
|
|
|
|
#include "comm_types.h"
|
|
|
|
|
|
|
|
static void stopChargWork(void);
|
2024-12-06 13:23:28 +00:00
|
|
|
static BOOL stopChargConditions(void);
|
|
|
|
static BOOL floatChargConditions(void);
|
|
|
|
static BOOL mpptChargConditions(void);
|
|
|
|
static BOOL constantVChargConditions(void);
|
2024-12-06 09:38:25 +00:00
|
|
|
static void mpptCharge(void);
|
|
|
|
static void constantVoltageCharge(void);
|
|
|
|
static void floatCharge(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 停止充电
|
|
|
|
* @param
|
|
|
|
* @retval
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void stopChargWork(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 判断达到停止充电的条件
|
|
|
|
* @param
|
|
|
|
* @retval TRUE 达到停止充电
|
|
|
|
* FALSE 未达到
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
BOOL stopChargConditions(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 判断达到浮充充电的条件
|
|
|
|
* @param
|
|
|
|
* @retval TRUE 达到
|
|
|
|
* FALSE 未达到
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
BOOL floatChargConditions(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 判断达到最大功率充电的条件
|
|
|
|
* @param
|
|
|
|
* @retval TRUE 达到
|
|
|
|
* FALSE 未达到
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
BOOL mpptChargConditions(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 判断达到恒压充电的条件
|
|
|
|
* @param
|
|
|
|
* @retval TRUE 达到
|
|
|
|
* FALSE 未达到
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
BOOL constantVChargConditions(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 判断充电控制的模式
|
|
|
|
* @param
|
2024-12-06 13:23:28 +00:00
|
|
|
* @retval
|
2024-12-06 09:38:25 +00:00
|
|
|
*
|
|
|
|
*/
|
2024-12-06 13:23:28 +00:00
|
|
|
void chargControlMode(void)
|
2024-12-06 09:38:25 +00:00
|
|
|
{
|
|
|
|
if (stopChargConditions()) {
|
|
|
|
stopChargWork();
|
2024-12-07 09:52:46 +00:00
|
|
|
setMPPT_Mode(noWork);
|
2024-12-06 09:38:25 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
if (floatChargConditions()) {
|
2024-12-07 09:52:46 +00:00
|
|
|
setMPPT_Mode(floatCharg);
|
2024-12-06 09:38:25 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
if (mpptChargConditions()) {
|
2024-12-07 09:52:46 +00:00
|
|
|
setMPPT_Mode(MPPT);
|
2024-12-06 09:38:25 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
if (constantVChargConditions()) {
|
2024-12-07 09:52:46 +00:00
|
|
|
setMPPT_Mode(constantVoltage);
|
2024-12-06 09:38:25 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 得到充电控制器控制所需的电流电压
|
|
|
|
* @param
|
|
|
|
* @retval
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void getCVData(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 判断有无电池
|
|
|
|
* @param
|
|
|
|
* @retval
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void judgeYNBattery(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 无电池时控制
|
|
|
|
* @param
|
|
|
|
* @retval
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void noBatteryChargControl(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 最大功率充电
|
|
|
|
* @param
|
|
|
|
* @retval
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void mpptCharge(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 恒压充电
|
|
|
|
* @param
|
|
|
|
* @retval
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void constantVoltageCharge(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 浮充充电
|
|
|
|
* @param
|
|
|
|
* @retval
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void floatCharge(void)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 有电池时控制
|
|
|
|
* @param
|
|
|
|
* @retval
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
void BatteryChargControl(void)
|
|
|
|
{
|
2024-12-07 09:52:46 +00:00
|
|
|
switch(getMPPT_Mode()) {
|
2024-12-06 09:38:25 +00:00
|
|
|
|
2024-12-06 13:23:28 +00:00
|
|
|
case MPPT:
|
2024-12-06 09:38:25 +00:00
|
|
|
mpptCharge();
|
|
|
|
break;
|
|
|
|
|
2024-12-06 13:23:28 +00:00
|
|
|
case constantVoltage:
|
2024-12-06 09:38:25 +00:00
|
|
|
constantVoltageCharge();
|
|
|
|
break;
|
|
|
|
|
2024-12-06 13:23:28 +00:00
|
|
|
case floatCharg:
|
2024-12-06 09:38:25 +00:00
|
|
|
floatCharge();
|
|
|
|
break;
|
|
|
|
|
|
|
|
default:
|
2024-12-07 09:52:46 +00:00
|
|
|
setMPPT_Mode(noWork);
|
2024-12-06 09:38:25 +00:00
|
|
|
stopChargWork();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|