你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32H7 CANFD过滤问题  

[复制链接]
oujisang 提问时间:2018-9-22 17:02 /
阅读主题, 点击返回1楼
1 收藏 2 评论78 发布时间:2018-9-22 17:02
78个回答
oujisang 回答时间:2019-10-25 20:12:57
vanaua 发表于 2019-10-25 10:45
你好,楼主,请帮忙看一下,我是跟你一样设置的,只不过就是发送的id和接收的id有变化,这样的话,在回环测 ...

不能发送是什么错误提示???用什么设备接收你的CAN发送的数据!
wuhero 回答时间:2019-11-23 15:26:17
oujisang 发表于 2018-10-19 11:07
代码上传上来了,需要的参考看看!!!

怎么看程序啊
qqzhaozzm 回答时间:2020-1-8 15:13:38
shouhong829 发表于 2019-1-24 15:54
帮我看看吧
u8 FDCAN1_Mode_Init(u8 tnsjw,u16 tseg1,u8 tseg2,u16 tnbrp,u8 mode)
{

请问你这个程序配置是多少M的
qqzhaozzm 回答时间:2020-4-8 14:58:01
oujisang 发表于 2018-10-19 11:07
代码上传上来了,需要的参考看看!!!

为什么四个压缩包
xjmnanek 回答时间:2020-4-15 11:24:45
你这是can吧 哪里是canfd
ch531112311 回答时间:2020-4-21 10:59:35
大兄弟,代码对应的芯片手册能共享一下么
oujisang 回答时间:2020-4-24 17:19:55
ch531112311 发表于 2020-4-21 10:59
大兄弟,代码对应的芯片手册能共享一下么

STM32H743的芯片手册,官网上就能下载到,手册有点大,上传不到这里来,如果你需要留个邮箱,我发给你!
oujisang 回答时间:2020-4-24 17:20:21
xjmnanek 发表于 2020-4-15 11:24
你这是can吧 哪里是canfd

看程序就知道了!!!
oujisang 回答时间:2020-4-24 17:21:05
qqzhaozzm 发表于 2020-4-8 14:58
为什么四个压缩包

单个压缩包不能超过限定值,单个压缩包太大了,只能分成4个压缩包
oujisang 回答时间:2020-4-24 17:23:58
qqzhaozzm 发表于 2020-1-8 15:13
请问你这个程序配置是多少M的

仲裁域:1Mbps
数据域:5Mbps
李康1202 回答时间:2020-4-25 17:16:55
顶一下
ch531112311 回答时间:2020-4-28 09:29:19
oujisang 发表于 2020-4-24 17:19
STM32H743的芯片手册,官网上就能下载到,手册有点大,上传不到这里来,如果你需要留个邮箱,我发给你! ...

非常感谢
等待明天22 回答时间:2020-5-24 10:40:27
楼主,配置stm32h750vb的canfd,使用你的程序,无法接收canfd报文,发送数据 canfd报文,接收端报crc错误,发远程帧正常。普通can的收发均正常。后来使用官方的代码,也是一样的问题。can收发器已切换多个支持canfd的,现象均一样。楼主能否留个联系方式,交流一下。
jackqzw 回答时间:2020-6-6 09:59:13
正需要CAN配置的相关代码。发现接收会丢帧。发送也会丢帧。
xiaoduduysu 回答时间:2020-6-30 16:27:30
楼主的程序能发过来参考下吗?按照你的设置怎么还是不行啊?
void FDCAN_Config(uint32_t msgtxid, uint32_t msgrxid, uint32_t lam,uint32_t msgframe,uint32_t datalength)
{
  FDCAN_FilterTypeDef sFilterConfig;

  /* Configure extended ID reception filter to Rx FIFO 1 */
  sFilterConfig.IdType = msgframe;                  // EXTEND ID
  sFilterConfig.FilterIndex = 0;
  sFilterConfig.FilterType = FDCAN_FILTER_MASK;
  sFilterConfig.FilterConfig = FDCAN_FILTER_TO_RXFIFO0;
  sFilterConfig.FilterID1 = msgrxid;                    //Filter ID
  sFilterConfig.FilterID2 = lam;                        //Filter ID LAM
if (HAL_FDCAN_ConfigFilter(&hfdcan2, &sFilterConfig) != HAL_OK)
  {
    Error_Handler();
  }
  
  /* Configure global filter:
     Filter all remote frames with STD and EXT ID
     Reject non matching frames with STD ID and EXT ID */
  if (HAL_FDCAN_ConfigGlobalFilter(&hfdcan2, FDCAN_REJECT, FDCAN_REJECT, ENABLE, ENABLE) != HAL_OK)
  {
    Error_Handler();
  }

  /*##-2 Start FDCAN controller (continuous listening CAN bus) ##############*/
  if (HAL_FDCAN_Start(&hfdcan2) != HAL_OK)
  {
    Error_Handler();
  }

  if (HAL_FDCAN_ActivateNotification(&hfdcan2, FDCAN_IT_RX_FIFO0_NEW_MESSAGE, 0) != HAL_OK)
  {
    Error_Handler();
  }

  /* Prepare Tx Header */
  TxHeader.Identifier = msgtxid;//0x1801F456U;
  TxHeader.IdType = msgframe;//FDCAN_EXTENDED_ID;
  TxHeader.TxFrameType = FDCAN_DATA_FRAME;
  TxHeader.DataLength = datalength;
  TxHeader.ErrorStateIndicator = FDCAN_ESI_ACTIVE;
  TxHeader.BitRateSwitch = FDCAN_BRS_ON;
  TxHeader.FDFormat = FDCAN_CLASSIC_CAN;
  TxHeader.TxEventFifoControl = FDCAN_NO_TX_EVENTS;
  TxHeader.MessageMarker = 0;
  if (HAL_FDCAN_AddMessageToTxFifoQ(&hfdcan2, &TxHeader, TxData) != HAL_OK)
  {
    Error_Handler();
  }
}
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版