16#if (STM32_PCLK1 == 144000000)
23#define CAN_BTR_50 (CAN_BTR_BRP(160 - 1) | CAN_BTR_SJW(18 - 1) | CAN_BTR_TS1(15 - 1) | CAN_BTR_TS2(2 - 1))
24#define CAN_BTR_83 (CAN_BTR_BRP(96 - 1) | CAN_BTR_SJW(18 - 1) | CAN_BTR_TS1(15 - 1) | CAN_BTR_TS2(2 - 1))
25#define CAN_BTR_100 (CAN_BTR_BRP(80 - 1) | CAN_BTR_SJW(18 - 1) | CAN_BTR_TS1(15 - 1) | CAN_BTR_TS2(2 - 1))
26#define CAN_BTR_125 (CAN_BTR_BRP(64 - 1) | CAN_BTR_SJW(18 - 1) | CAN_BTR_TS1(15 - 1) | CAN_BTR_TS2(2 - 1))
27#define CAN_BTR_250 (CAN_BTR_BRP(32 - 1) | CAN_BTR_SJW(18 - 1) | CAN_BTR_TS1(15 - 1) | CAN_BTR_TS2(2 - 1))
28#define CAN_BTR_500 (CAN_BTR_BRP(16 - 1) | CAN_BTR_SJW(18 - 1) | CAN_BTR_TS1(15 - 1) | CAN_BTR_TS2(2 - 1))
29#define CAN_BTR_1k0 (CAN_BTR_BRP(8 - 1) | CAN_BTR_SJW(18 - 1) | CAN_BTR_TS1(15 - 1) | CAN_BTR_TS2(2 - 1))
32#define STM32FxMCR (CAN_MCR_ABOM | CAN_MCR_AWUM | CAN_MCR_TXFP)
97#if STM32_CAN_USE_CAN1 || STM32_CAN_USE_FDCAN1
101#if STM32_CAN_USE_CAN2 || STM32_CAN_USE_FDCAN2
static bool isValidCan2RxPin(brain_pin_e pin)
CANDriver * detectCanDevice(brain_pin_e pinRx, brain_pin_e pinTx)
static const CANConfig canConfig125
bool isValidCanRxPin(brain_pin_e pin)
static const CANConfig canConfig250
static const CANConfig canConfig50
static const CANConfig canConfig1000
static bool isValidCan1RxPin(brain_pin_e pin)
bool isValidCanTxPin(brain_pin_e pin)
static const CANConfig canConfig500
static const CANConfig canConfig83
static bool isValidCan2TxPin(brain_pin_e pin)
const CANConfig * findCanConfig(can_baudrate_e rate)
void canHwInfo(CANDriver *cand)
static bool isValidCan1TxPin(brain_pin_e pin)
static const CANConfig canConfig100
const char * hwPortname(brain_pin_e brainPin)