打印

stm32 can总线多节点通信丢包严重求救

[复制链接]
13185|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
churchill357|  楼主 | 2012-1-16 13:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
目前在用stm32f103RB的片子做一个用到CAN的项目,用周立功的CANET-200T调试。
      现象是总线上只挂一个设备是完全OK的,挂2个设备就丢包很严重了(只有一个设备在发送)。通信的过程是 设备A与PC,或者设备B与PC通信,AB之间没有数据通信。

      如果把一个设备A的CAN接收中断关掉,另外一个设备B通信就OK。但是用JLINK对A进行调试,B进行发送时,A也不会进到接受中断里面去。用JLINK对B进行调试,数据发送出去没有错误发生,PC接受这边总是会有数据包丢失。

      纠结中啊。:dizzy:
沙发
churchill357|  楼主 | 2012-1-16 14:16 | 只看该作者
自己顶自己一个。
用stm32 的CAN的有碰到这个问题的吗?

使用特权

评论回复
板凳
IJK| | 2012-1-16 15:09 | 只看该作者
不要用JLINK进行调试,都脱机跑试试看。

使用特权

评论回复
地板
churchill357|  楼主 | 2012-1-16 15:11 | 只看该作者
都试过。不用jlink也会丢包

使用特权

评论回复
5
churchill357|  楼主 | 2012-1-16 15:26 | 只看该作者
设备端都开了过滤器,所以 B设备不会接收到 A设备的数据包。可以排除掉B把A发送给PC的数据接收掉。

猜测是打开接收中断的CAN设备对总线上的数据有影响。

使用特权

评论回复
6
IJK| | 2012-1-16 16:52 | 只看该作者
最好用示波器来查看,看单端的CAN_TX、CAN_RX。
可以考虑:是否波特率差异偏大? 是否采样点设置得不合适?

使用特权

评论回复
7
lost1421| | 2012-1-16 16:58 | 只看该作者
是不是周立功的CANET-200T的问题?
以前有一工程师用周立功的CAN调试,连接两个CAN接口,就丢包。

使用特权

评论回复
8
churchill357|  楼主 | 2012-1-16 17:24 | 只看该作者
A,B 2个设备是一样的程序,单独接A和单独接B都不会有丢包。
用的是10K波特率,不同的配置也换了几个,没有改善。

上周打了周立功的技术支持电话,按照他们推荐的配置,也不行。
周立功公司放假了,
准备自己改一个CAN转usart调试一下看看是不是canet-200T的问题:dizzy:

使用特权

评论回复
9
LMMCU| | 2012-1-16 17:48 | 只看该作者
M32邮箱太小属天生缺陷。

使用特权

评论回复
10
churchill357|  楼主 | 2012-1-16 18:05 | 只看该作者
对我来说够用了

使用特权

评论回复
11
churchill357|  楼主 | 2012-1-17 11:40 | 只看该作者
:funk:
还真是CANET-200T的问题

使用特权

评论回复
12
shiper| | 2012-7-1 17:47 | 只看该作者
11# churchill357
具体是什么原因?那canet200T还能用吗

使用特权

评论回复
13
yxkun316| | 2014-7-28 10:32 | 只看该作者
我也遇到CAN通信丢帧的问题,请问下着这跟设置波特率有关

使用特权

评论回复
14
zhang81ab| | 2015-8-14 17:13 | 只看该作者
我也遇到了你这个问题,两个节点同时向第三个节点发数据就出问题了。单独都可以的。你这个解决没?

使用特权

评论回复
15
zhang81ab| | 2015-8-14 17:15 | 只看该作者
zhang81ab 发表于 2015-8-14 17:13
我也遇到了你这个问题,两个节点同时向第三个节点发数据就出问题了。单独都可以的。你这个解决没? ...

TI的VP230

使用特权

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

本版积分规则

1

主题

8

帖子

0

粉丝