forked from achamaikin/CCSModuleSW30Web
Policy/executor hooks, event-driven OFF/ON state machine, and release binaries. Co-authored-by: Cursor <cursoragent@cursor.com>
22 lines
636 B
C
22 lines
636 B
C
#pragma once
|
|
|
|
#include <stdint.h>
|
|
|
|
#include "power_setpoint_policy.h"
|
|
|
|
typedef enum {
|
|
PSD_TRY_IDLE = 0,
|
|
PSD_TRY_APPLIED_NORMAL,
|
|
PSD_TRY_START_FAST_DISCHARGE,
|
|
} PowerSetpointTryResult_t;
|
|
|
|
void PowerSetpoint_Init(void);
|
|
void PowerSetpoint_OnCommand(uint16_t voltage_V, uint16_t current_0p1A);
|
|
void PowerSetpoint_UpdateDeliveryLatch(void);
|
|
uint8_t PowerSetpoint_HasPending(void);
|
|
uint8_t PowerSetpoint_IsBusy(void);
|
|
PowerSetpointTryResult_t PowerSetpoint_TryApply(void);
|
|
void PowerSetpoint_GetFastDischargeTarget(PowerSetpoint_t *target);
|
|
void PowerSetpoint_OnFastDischargeComplete(void);
|
|
void PowerSetpoint_OnFastDischargeAbort(void);
|