make libCLS more independen of HW
goal is to reuse libCLS on an diffrent MCU
This commit is contained in:
53
Application/CLS_BSP/CLS_BSP.h
Normal file
53
Application/CLS_BSP/CLS_BSP.h
Normal file
@@ -0,0 +1,53 @@
|
||||
|
||||
|
||||
#define CLS_BSP_FDCAN
|
||||
|
||||
#ifdef CLS_BSP_FDCAN
|
||||
|
||||
#include "fdcan.h"
|
||||
|
||||
typedef FDCAN_TxHeaderTypeDef CLS_BSP_TxHeaderType;
|
||||
|
||||
#define CREATE_BSP_CAN_HEADER(identifier, datalength) \
|
||||
{ \
|
||||
.IdType = FDCAN_STANDARD_ID, \
|
||||
.Identifier = identifier, \
|
||||
.TxFrameType = FDCAN_DATA_FRAME, \
|
||||
.DataLength = datalength, \
|
||||
.ErrorStateIndicator = FDCAN_ESI_PASSIVE, \
|
||||
.BitRateSwitch = FDCAN_BRS_OFF, \
|
||||
.FDFormat = FDCAN_CLASSIC_CAN, \
|
||||
.TxEventFifoControl = FDCAN_NO_TX_EVENTS, \
|
||||
.MessageMarker = 0xCC, \
|
||||
}
|
||||
|
||||
#define CLS_BSP_DLC_BYTES_1 FDCAN_DLC_BYTES_1
|
||||
#define CLS_BSP_DLC_BYTES_2 FDCAN_DLC_BYTES_2
|
||||
#define CLS_BSP_DLC_BYTES_3 FDCAN_DLC_BYTES_3
|
||||
#define CLS_BSP_DLC_BYTES_4 FDCAN_DLC_BYTES_4
|
||||
#define CLS_BSP_DLC_BYTES_5 FDCAN_DLC_BYTES_5
|
||||
#define CLS_BSP_DLC_BYTES_6 FDCAN_DLC_BYTES_6
|
||||
#define CLS_BSP_DLC_BYTES_7 FDCAN_DLC_BYTES_7
|
||||
#define CLS_BSP_DLC_BYTES_8 FDCAN_DLC_BYTES_8
|
||||
|
||||
#define CLS_CAN_FILTER_DISABLE FDCAN_FILTER_DISABLE
|
||||
#define CLS_CAN_FILTER_TO_RXFIFO0 FDCAN_FILTER_TO_RXFIFO0
|
||||
#define CLS_CAN_FILTER_TO_RXFIFO1 FDCAN_FILTER_TO_RXFIFO1
|
||||
|
||||
#define CLS_BSP_CAN_FILTER_LIST FDCAN_FILTER_DUAL
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
typedef struct {
|
||||
uint32_t filterIndex;
|
||||
uint32_t filterDestination;
|
||||
uint32_t filterMode;
|
||||
uint16_t id0;
|
||||
uint16_t id1;
|
||||
} CLS_BSP_CAN_UniversalFilter;
|
||||
|
||||
|
||||
HAL_StatusTypeDef CLS_BSP_CAN_AddMessageToSend(CLS_BSP_TxHeaderType * header, uint8_t * data);
|
||||
|
||||
HAL_StatusTypeDef CLS_BSP_CAN_SetUniversalFilter(const CLS_BSP_CAN_UniversalFilter * filter);
|
||||
Reference in New Issue
Block a user