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

[复制链接]
15614|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也会丢包
 楼主| churchill357 发表于 2012-1-16 15:26 | 显示全部楼层
设备端都开了过滤器,所以 B设备不会接收到 A设备的数据包。可以排除掉B把A发送给PC的数据接收掉。

猜测是打开接收中断的CAN设备对总线上的数据有影响。
IJK 发表于 2012-1-16 16:52 | 显示全部楼层
最好用示波器来查看,看单端的CAN_TX、CAN_RX。
可以考虑:是否波特率差异偏大? 是否采样点设置得不合适?
lost1421 发表于 2012-1-16 16:58 | 显示全部楼层
是不是周立功的CANET-200T的问题?
以前有一工程师用周立功的CAN调试,连接两个CAN接口,就丢包。
 楼主| churchill357 发表于 2012-1-16 17:24 | 显示全部楼层
A,B 2个设备是一样的程序,单独接A和单独接B都不会有丢包。
用的是10K波特率,不同的配置也换了几个,没有改善。

上周打了周立功的技术支持电话,按照他们推荐的配置,也不行。
周立功公司放假了,
准备自己改一个CAN转usart调试一下看看是不是canet-200T的问题:dizzy:
LMMCU 发表于 2012-1-16 17:48 | 显示全部楼层
M32邮箱太小属天生缺陷。
 楼主| churchill357 发表于 2012-1-16 18:05 | 显示全部楼层
对我来说够用了
 楼主| churchill357 发表于 2012-1-17 11:40 | 显示全部楼层
:funk:
还真是CANET-200T的问题
shiper 发表于 2012-7-1 17:47 | 显示全部楼层
11# churchill357
具体是什么原因?那canet200T还能用吗
yxkun316 发表于 2014-7-28 10:32 | 显示全部楼层
我也遇到CAN通信丢帧的问题,请问下着这跟设置波特率有关
zhang81ab 发表于 2015-8-14 17:13 | 显示全部楼层
我也遇到了你这个问题,两个节点同时向第三个节点发数据就出问题了。单独都可以的。你这个解决没?
zhang81ab 发表于 2015-8-14 17:15 | 显示全部楼层
zhang81ab 发表于 2015-8-14 17:13
我也遇到了你这个问题,两个节点同时向第三个节点发数据就出问题了。单独都可以的。你这个解决没? ...

TI的VP230
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

8

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部