Microchip
直播中

苏旭

7年用户 174经验值
私信 关注
[问答]

使用带有所有八个缓冲区的CAN中断作为Rx缓冲区,是否顺序扫描它们以捕获数据?

如果我使用ECAN模式2,我可以分配6x Rx/Tx缓冲区添加到现有的Rx缓冲区,给我一个8缓冲区深度FIFO堆栈。文档上说,在模式2中,如果fifo堆栈中的任何一个有数据等待,CANSTAT中的EICODE位将变成0b10000,而CANCON中的WIN位将指向最后一个消息缓冲区数据。数据仍然会进入到它看到的第一个空缓冲区,然后有效地失去FIFO序列吗?我猜我真正的问题是,如果我使用带有所有八个缓冲区的CAN中断作为Rx缓冲区,我是否顺序扫描它们以捕获数据?如果我这样做了,然后新的数据进入第一个Rx缓冲区,那么中断条件可以保持活跃,或者我是否使事情变得过于复杂,并且应该对所有Rx缓冲区进行一次遍历,并接受数据不会处于FIFO模式。

回帖(1)

李翰肃

2019-9-17 15:01:30
我是类似的情况,你有没有找到解决的办法?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分