CAN双FIFO,只找到FIFO_Rx0的中断入口,Rx1的找不到!求助!

2019-07-21 07:37发布

本帖最后由 db520136 于 2018-11-20 16:12 编辑

因为节点比较多,有5个,有可能会出现4个节点都会发大量的数据到第5个节点上!
为了在保证不溢出(丢包)的情况下,尽可能的快速,我开启了双FIFO
void CAN1_RX0_IRQHandler(void) 这是FIFO_Rx0的中断入口函数
但是翻遍了各种手册以及"stm32f103xe.h"文件都没有找到FIFO_Rx1的中断入口函数!
这个是就是没有该中断入口函数的,还是我没找对??

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
正点原子
1楼-- · 2019-07-21 08:04
帮顶
哆啦A萌
2楼-- · 2019-07-21 08:56
RX0不是区分哪个FIFO,读取函数CAN_Receive(CANx,CAN_FIFO0,&msg);在这里选择FIFO,读取前判断是哪个FIFO接收到数据然后读取对应的FIFO,我现在做的一个设备,有15个CAN节点,不过我只用一个FIFO,中断触发时先将消息存入缓存区,然后对应的任务去读取缓存区数据进行处理
db520136
3楼-- · 2019-07-21 13:12
哆啦A萌 发表于 2018-11-21 11:09
RX0不是区分哪个FIFO,读取函数CAN_Receive(CANx,CAN_FIFO0,&msg);在这里选择FIFO,读取前判断是哪个FIFO接 ...

不区分的吗?倒是我用FIFO1的时候,CAN接收到数据,不来中断啊;用FIFO0的时候就来中断- -~!
问下15个CAN节点,就单5个节点,同时发多包数据给第6个节点,就开一个FIFO0,最多也就存3条,就算中断只保存信息;哥你是怎么保证不溢出的??是每发一帧都加延时吗?

一周热门 更多>