BAIYI/UDS/uds_api.h

53 lines
1.2 KiB
C

#ifndef _UDS_API_H
#define _UDS_API_H
#include "sys.h"
#include "stdbool.h"
#include "uds_can_interface.h"
typedef enum
{
UNDER_VOLT=0,
LOW_VOLT=1,
NORM_VOLT=2,
HIGH_VOLT=3,
OVER_VOLT=4,
VOLT_STATE_NUM,
}PWR_BATT_VOLT_STATE_ENUM;
typedef struct
{
uint16_t VMin_Cfg;/*mv*/
uint16_t VMax_Cfg;
uint16_t MinTimeCfg;
uint16_t MaxTimeCfg;
}PWR_Volt_State_Config_Type;
void UdsApi_1ms_task(void);
void UdsApi_10ms_task(void);
void UdsApi_MsgQueueIn(CanRxMsg msg);
void UdsApi_MsgQueueOut(can_msg_t uds_msg);
void UdsApi_ParaInit(void);
uint32_t UdsApi_GetRandom(void);
void UdsApi_HardwareFault_ForceClear(void);
uint8_t UdsApi_EE_WriteBytes(uint8_t *_pWriteBuf, uint16_t _usAddress, uint16_t _usSize);
uint8_t UdsApi_EE_ReadBytes(uint8_t *_pReadBuf, uint16_t _usAddress, uint16_t _usSize);
void UdsApi_NVM_Init(void);
int8_t IsAppCanID(CanTxMsg *TxMessage);
bool UdsApi_Is_UdsEnableNCMTx(void);
bool UdsApi_Is_UdsEnableNWMCMTx(void);
bool UdsApi_Is_UdsEnableNCMRx(void);
bool UdsApi_Is_UdsEnableNWMCMRx(void);
bool UdsApi_Is_UdsOnline(void);
bool UdsApi_Is_UdsIdle(void);
bool UdsApi_Is_UdsResponeMsg(uint16_t msg_id);
void UdsApi_BootSwAddr_Get(void);
void Pwr_BatVoltRangeMonitor(void);
#endif