HF Interface Wrapper 0.1.0-dev
Embedded C++ hardware abstraction layer
Loading...
Searching...
No Matches
StmCan.cpp File Reference

STM32 CAN implementation — bxCAN + FDCAN dual-variant support. More...

#include "StmCan.h"
#include <cstring>
Include dependency graph for StmCan.cpp:

Classes

struct  anonymous_namespace{StmCan.cpp}::BxCanTxHeader
 
struct  anonymous_namespace{StmCan.cpp}::BxCanRxHeader
 
struct  anonymous_namespace{StmCan.cpp}::BxCanFilterConfig
 
struct  anonymous_namespace{StmCan.cpp}::FdCanTxHeader
 
struct  anonymous_namespace{StmCan.cpp}::FdCanRxHeader
 
struct  anonymous_namespace{StmCan.cpp}::FdCanFilterConfig
 

Namespaces

namespace  anonymous_namespace{StmCan.cpp}
 

Functions

uint32_t HAL_CAN_Start (CAN_HandleTypeDef *hcan)
 
uint32_t HAL_CAN_Stop (CAN_HandleTypeDef *hcan)
 
uint32_t HAL_CAN_AddTxMessage (CAN_HandleTypeDef *hcan, const void *pHeader, const uint8_t aData[], uint32_t *pTxMailbox)
 
uint32_t HAL_CAN_GetRxMessage (CAN_HandleTypeDef *hcan, uint32_t RxFifo, void *pHeader, uint8_t aData[])
 
uint32_t HAL_CAN_GetRxFifoFillLevel (CAN_HandleTypeDef *hcan, uint32_t RxFifo)
 
uint32_t HAL_CAN_ConfigFilter (CAN_HandleTypeDef *hcan, const void *sFilterConfig)
 
uint32_t HAL_CAN_GetError (CAN_HandleTypeDef *hcan)
 
uint32_t HAL_CAN_ResetError (CAN_HandleTypeDef *hcan)
 
uint32_t HAL_FDCAN_Start (FDCAN_HandleTypeDef *hfdcan)
 
uint32_t HAL_FDCAN_Stop (FDCAN_HandleTypeDef *hfdcan)
 
uint32_t HAL_FDCAN_AddMessageToTxFifoQ (FDCAN_HandleTypeDef *hfdcan, const void *pTxHeader, const uint8_t *pTxData)
 
uint32_t HAL_FDCAN_GetRxMessage (FDCAN_HandleTypeDef *hfdcan, uint32_t RxLocation, void *pRxHeader, uint8_t *pRxData)
 
uint32_t HAL_FDCAN_GetRxFifoFillLevel (FDCAN_HandleTypeDef *hfdcan, uint32_t RxFifo)
 
uint32_t HAL_FDCAN_ConfigFilter (FDCAN_HandleTypeDef *hfdcan, const void *sFilterConfig)
 
uint32_t HAL_FDCAN_GetError (FDCAN_HandleTypeDef *hfdcan)
 
uint32_t HAL_GetTick (void)
 

Variables

constexpr uint32_t anonymous_namespace{StmCan.cpp}::kCanRxFifo0 = 0x00000000U
 

Detailed Description

STM32 CAN implementation — bxCAN + FDCAN dual-variant support.

Author
HardFOC
Date
2025

Function Documentation

◆ HAL_CAN_AddTxMessage()

uint32_t HAL_CAN_AddTxMessage ( CAN_HandleTypeDef * hcan,
const void * pHeader,
const uint8_t aData[],
uint32_t * pTxMailbox )
extern

◆ HAL_CAN_ConfigFilter()

uint32_t HAL_CAN_ConfigFilter ( CAN_HandleTypeDef * hcan,
const void * sFilterConfig )
extern

◆ HAL_CAN_GetError()

uint32_t HAL_CAN_GetError ( CAN_HandleTypeDef * hcan)
extern

◆ HAL_CAN_GetRxFifoFillLevel()

uint32_t HAL_CAN_GetRxFifoFillLevel ( CAN_HandleTypeDef * hcan,
uint32_t RxFifo )
extern

◆ HAL_CAN_GetRxMessage()

uint32_t HAL_CAN_GetRxMessage ( CAN_HandleTypeDef * hcan,
uint32_t RxFifo,
void * pHeader,
uint8_t aData[] )
extern

◆ HAL_CAN_ResetError()

uint32_t HAL_CAN_ResetError ( CAN_HandleTypeDef * hcan)
extern

◆ HAL_CAN_Start()

uint32_t HAL_CAN_Start ( CAN_HandleTypeDef * hcan)
extern

◆ HAL_CAN_Stop()

uint32_t HAL_CAN_Stop ( CAN_HandleTypeDef * hcan)
extern

◆ HAL_FDCAN_AddMessageToTxFifoQ()

uint32_t HAL_FDCAN_AddMessageToTxFifoQ ( FDCAN_HandleTypeDef * hfdcan,
const void * pTxHeader,
const uint8_t * pTxData )
extern

◆ HAL_FDCAN_ConfigFilter()

uint32_t HAL_FDCAN_ConfigFilter ( FDCAN_HandleTypeDef * hfdcan,
const void * sFilterConfig )
extern

◆ HAL_FDCAN_GetError()

uint32_t HAL_FDCAN_GetError ( FDCAN_HandleTypeDef * hfdcan)
extern

◆ HAL_FDCAN_GetRxFifoFillLevel()

uint32_t HAL_FDCAN_GetRxFifoFillLevel ( FDCAN_HandleTypeDef * hfdcan,
uint32_t RxFifo )
extern

◆ HAL_FDCAN_GetRxMessage()

uint32_t HAL_FDCAN_GetRxMessage ( FDCAN_HandleTypeDef * hfdcan,
uint32_t RxLocation,
void * pRxHeader,
uint8_t * pRxData )
extern

◆ HAL_FDCAN_Start()

uint32_t HAL_FDCAN_Start ( FDCAN_HandleTypeDef * hfdcan)
extern

◆ HAL_FDCAN_Stop()

uint32_t HAL_FDCAN_Stop ( FDCAN_HandleTypeDef * hfdcan)
extern

◆ HAL_GetTick()

uint32_t HAL_GetTick ( void )
extern