这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 【NUCLEO-U3C5ZI】FDCAN调试过程

共1条 1/1 1 跳转至

【NUCLEO-U3C5ZI】FDCAN调试过程

高工
2026-07-20 20:59:10     打赏

一:FDCAD 优势

FDCAN最核心的升级体现在两点:

更高的数据速率:传统CAN最高1Mbps,FDCAN在数据段最高可达8Mbps,适合传输大量数据。

更大的数据负载:传统CAN每帧最多8字节,FDCAN支持最多64字节的数据场。

二:配置与使用要点

硬件与时钟:除MCU外,需要外部CAN FD收发器(如MCP2562FD)。注意部分开发板的FDCAN引脚可能与USB等外设复用。

关键参数:需要分别配置标称速率(用于仲裁段,兼容传统CAN)和数据速率(用于数据段,可以更高)的采样点与分频系数。

消息RAM配置:这是FDCAN比较独特的配置。接收FIFO、发送缓冲区、过滤器的元素个数都在消息RAM中分配。

接收过滤器:FDCAN提供了独立的标准ID过滤器(最多128个)和扩展ID过滤器(最多64个)。可以灵活配置将特定ID的帧存入不同的Rx FIFO或直接拒绝,实现精准的消息过滤

三:STM32 cube MX软件配置:

四:软件代码:

4.1 初始化代码添加如下代码

  FDCAN_FilterTypeDef        sFilterConfig;
  sFilterConfig.IdType       = FDCAN_STANDARD_ID;
  sFilterConfig.FilterIndex  = 0U;
  sFilterConfig.FilterType   = FDCAN_FILTER_DUAL;
  sFilterConfig.FilterConfig = FDCAN_FILTER_TO_RXFIFO0;
  sFilterConfig.FilterID1    = 0x444;
  sFilterConfig.FilterID2    = 0x444; /* For acceptance, MessageID and FilterID1 must match exactly */
  if (HAL_FDCAN_ConfigFilter(&hfdcan1, &sFilterConfig) != HAL_OK)
  {
    Error_Handler();
  }
                txHeader.Identifier          = 0x444;
                txHeader.IdType              = FDCAN_STANDARD_ID;
                txHeader.TxFrameType         = FDCAN_DATA_FRAME;
                txHeader.DataLength          = FDCAN_DLC_BYTES_12;
                txHeader.ErrorStateIndicator = FDCAN_ESI_ACTIVE;
                txHeader.BitRateSwitch       = FDCAN_BRS_ON;
                txHeader.FDFormat            = FDCAN_FD_CAN;
                txHeader.TxEventFifoControl  = FDCAN_STORE_TX_EVENTS;
                txHeader.MessageMarker       = 0x52U;
          if (HAL_FDCAN_AddMessageToTxFifoQ(&hfdcan1, &txHeader, FdcanBuffer) != HAL_OK)
  {
    Error_Handler();
  }
        
                if (HAL_FDCAN_Start(&hfdcan1) != HAL_OK)
        {
                E

4.2 测试程序如下:

void FdcanTest(void)
{
    for(int i=0; i<64; i++)
    FdcanBuffer[i] = i;
  if (HAL_FDCAN_AddMessageToTxFifoQ(&hfdcan1, &txHeader, FdcanBuffer) != HAL_OK)
  {
    Error_Handler();
  }
}





关键词: NUCLEO-U3C5ZI     FDCAN    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]