OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3014|回复: 0

关于F4的can通讯接收函数相关问题

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2019-11-1
在线时间
3 小时
发表于 2020-1-18 16:53:41 | 显示全部楼层 |阅读模式
各位大佬好,我想请问一个问题。
1.,如果图一绿色部分不返回0的话,意味着报文已经进入FIFO0邮箱,就意味着,报文是正确的,并且已经通过了过滤器,是这么理解吧。
2.
[url=][/url]
,成功接收之后,进入图二的CAN_Receive函数。
3.我点开CAN_Receive函数之后,跳到这里,
[url=][/url]
图三中的RxMessage->IDE = (uint8_t)0x04 & CANx->sFIFOMailBox[FIFONumber].RIR,检测是标准格式还是拓展格式,在这里检测有啥意义么?
还有,RxMessage->StdId = (uint32_t)0x000007FF & (CANx->sFIFOMailBox[FIFONumber].RIR >> 21);令接收到的ID等于邮箱中的报文ID有什么意义呢?
既然报文已经能通过筛选器进入到了邮箱,不就意味着ID已经在筛选器筛选过了么?我只需要在
CAN_Receive读取数据不就可以了么?这是我疑惑的地方,希望大神可以帮我解答!十分感激!

图三

图三

图二

图二

图一

图一
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-11 09:10

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表