在STM32CubeMX中进行以下配置: 时钟配置:确保为CAN FD模块配置了合适的时钟源和频率。 CAN FD配置: 选择并激活CAN FD模块(如FDCAN1、FDCAN2)。 配置波特率:使用公式波特率 = CAN时钟频率 / 预分频器 / (1 + TS1 + TS2)计算并设置仲裁域和数据域的波特率。 配置帧格式:选择CAN FD帧格式,并配置数据长度...
FDCAN_HandleTypeDef hfdcan1;FDCAN_HandleTypeDef hfdcan2;/* FDCAN1 init function */voidMX_FDCAN1_Init(void){/* USER CODE END FDCAN1_Init 1 */// CAN波特率 = 时钟频率 / 时钟分频 / 预分频系数 / (1 + TSG1 + TSG2)// 仲裁段波特率 = 64M / 1 / 8 / (1 + 10 + 5) = 500k...
hfdcan1.Init.ExtFiltersNbr = 1; hfdcan1.Init.TxFifoQueueMode = FDCAN_TX_FIFO_OPERATION; if (HAL_FDCAN_Init(&hfdcan1) != HAL_OK) { Error_Handler(); } } 上面只是进行了CAN基本初始化,直接用CubeMX默认额配置肯定是不能进行CAN数据的接收,为此,我们还需要配置过滤器,过滤器的配置可以参考...
将筛选器配置、全局过滤器配置、FDCAN外设使能合为一体。 uint32_t FDCAN1_Receive_Msg(uint8_t *buf)通过FDCAN1接收标准id数据帧(查询方式)。返回接收到的字节数量代码,格式是 @ref FDCAN_data_length_code,如FDCAN_DLC_BYTES_8,FDCAN_DLC_BYTES_32,FDCAN_DLC_BYTES_64,要注意该宏定义的值和字节数并...
STM32配置FDCAN 总线上有的设备可能不支持FDCAN,FDCAN配置为传统CAN。 配置外部时钟 配置FDCAN1 GPIO配置 定义变量 FDCAN_RxHeaderTypeDef RxHeader; FDCAN_TxHeaderTypeDef TxHeader; uint8_t RxData[8]; uint8_t TxData[64] = {0x24,0x47,0x4E,0x47,0x53,0x41,0x2C,0x41,0x2C,0x31,0x2C,0x...
STM32配置FDCAN通讯 由于总线上有设备不支持FDCAN,为了保持兼容性,将本机FDCAN配置为传统CAN运行。 CubeMX配置 开启SW调试接口 开启FDCAN2 开启外部时钟 外部晶振为12M,主频480M,FDCAN时钟来自PLL1Q FDCAN2参数设置,参数设置的说明,在代码中有注释,
92.3.3 FDCAN支持的最高速度 经典CAN是1Mbps,CAN FD最高2Mbps,CAN FD-SiC是5-8Mbps,CAN XL是10Mbps。 92.3.4 FDCAN的主时钟选择 FDCAN1和FDCAN2支持三种时钟源HSE,PLL1Q和PLL2Q,我们这里选择的PLL2Q输出20MHz。 92.3.5 FDCAN仲裁阶段和通信阶段波特率配置(重要) ...
FrameFormat:配置传统can模式还是canfd模式,建议canfd,因为canfd兼容can模式(可以收发传统can报文)Auto...
1.使用STM32G0的MCU进行FDCAN的发送配置 主要将FDCAN配置成经典CAN来进行数据的发送,同时通过PCAN的上位机来显示发送的结果。CubeMx目前使用的最新版本V6.1.2,不同版本相差较远的话会有较大差异。 其他基本配置类似串口、外部时钟,烧录等就可以不用管。