云途HA系列 接收140个ID离散的CANFD报文 filters配置
-
可以参考yct工具里的demo来修改:
当使能enhance fifo时,legacy fifo无效,enhance fifo和legacy fifo不能同时开启。
即当.is_enhance_rx_fifo_needed = true时,.num_id_filters = FLEXCAN_RX_FIFO_ID_FILTERS_8参数无用途,enhance fifo的配置参数包含以下:bool is_enhance_rx_fifo_needed; /*!< 1 if needed; 0 if not. This controls whether the use legecy Rx FIFO or enhance Rx FIFO. */ uint32_t num_enhance_rx_fifo_filters; /*!< The number of enhance rx fifo filters needed */ uint32_t num_enhance_rx_fifo_extid_filters; /*!< The number of enhance rx fifo filters needed for extended id */ uint32_t num_enhance_rx_fifo_min_messages;~
如果是140个不连续的标准帧ID,可以配置如下:
.is_enhance_rx_fifo_needed=true, .num_enhance_rx_fifo_filters=140, .num_enhance_rx_fifo_extid_filters=0, .num_enhance_rx_fifo_min_messages=10,
另外图片中的配置.max_num_mb有错误
应该配置为.max_num_mb = 128,这里需要填写该路CAN具备的最大的mailbox个数 -
yt0069 大佬你好,请教一下。.num_enhance_rx_fifo_filters值设的140.这个filters的范围是什么。我看YCT工具中似乎只能设置成最大128
.num_enhance_rx_fifo_filters=140,
还有如果我使用filters的值是140,是不是filterScheme可以直接选传统Filter+MASK组合FLEXCAN_ENAHNCE_RXFIFO_FSCH_FILTER_MASK
即.filterScheme = FLEXCAN_ENAHNCE_RXFIFO_FSCH_FILTER_MASK,
我的理解是.num_enhance_rx_fifo_filters是不是设为72.然后filterScheme选用两个固定的ID Fliter
即.num_enhance_rx_fifo_filters=72, ~~~ .filterScheme = FLEXCAN_ENAHNCE_RXFIFO_FSCH_DOUBLE_FILTER,
还是说是我理解错了
发帖前请查看
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...