打印
[应用相关]

同时接收多个ID的can消息

[复制链接]
3545|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Soraka|  楼主 | 2016-3-23 20:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用stm32怎样接收上位机几乎同时发送过来的4个ID的can消息,需要怎样配置,有哪些关键的地方,求高人指点。用cantools监测过了,就是上位机点击发送,cantools上几乎同时接收到了4个ID号不同的can消息,怎样配置才可以让stm32也能接收到呢?
沙发
Brand2| | 2016-3-23 20:45 | 只看该作者
CAN里面有过滤机制的把,可以设置下看行不行

使用特权

评论回复
板凳
Garen2| | 2016-3-23 21:11 | 只看该作者
STM32互联型产品中,CAN1和CAN2分享28个过滤器组,其它STM32F103xx系列产品中有14个过滤器组,用以对接收到的帧进行过滤

使用特权

评论回复
地板
xmshao| | 2016-3-23 22:27 | 只看该作者
CAN有过滤器,哪些能过哪些不能过你在过滤器那里配置就好;
对于同一个CAN同时来的信息它会仲裁一个个来收;

使用特权

评论回复
5
huangqi412| | 2016-3-24 09:08 | 只看该作者
can总线不可能同时发送2帧数据。。。也不可能同时收发一帧数据。微观上必须是挨个排队的,为什么?因为所有设备都串在一根差分线上,收发都就这一根,一个人发,其他所有人都得等着发完,边收边发也不行。 同时发是错误说法,应该是连续发。  
假设是差不多一刻不停的连续发,CAN理论波特率才1M,纯数据还得打折,再换成字节假设1000/8=125K. F103虽然没有CAN_DMA,但是人家72M速度啊,这125K其中还包括了ID段等,多个字节才一帧,一帧一个接收中断。 中断数量可能才10K, 这点量逐个中断响应不要太容易把。       简直是杀蚊子用大**轰。         

使用特权

评论回复
6
huangqi412| | 2016-3-24 09:09 | 只看该作者
xmshao 发表于 2016-3-23 22:27
CAN有过滤器,哪些能过哪些不能过你在过滤器那里配置就好;
对于同一个CAN同时来的信息它会仲裁一个个来收 ...

根本没有仲裁一个个收, 因为总线上根本不可能同时来。。。  就一根线CAN又不能频分复用,只能时分复用。不能同一时间多个的。。。

使用特权

评论回复
7
huangqi412| | 2016-3-24 09:13 | 只看该作者
F103表示实在不想被楼主侮辱,我是跑车好不好,你居然问我能不能跟单车比赛。

使用特权

评论回复
8
huangqi412| | 2016-3-24 09:20 | 只看该作者
huangqi412 发表于 2016-3-24 09:09
根本没有仲裁一个个收, 因为总线上根本不可能同时来。。。  就一根线CAN又不能频分复用,只能时分复用。 ...

网线 USB线都这样 一根线通信

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

178

主题

865

帖子

5

粉丝