1099|8

75

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

CAN多节点同时发送数据的问题 [复制链接]

 

邀请:@maychang   @return   参与回复

大家好!
目前正在做电源中的CAN通信,每个模块使用的单片机是MT006,程序逻辑如下:
1、CAN总线上有6个子模块,使用CAN分析仪连接到CAN总线;
2、CAN分析仪发送指令给模块,指令可以发给其中某个指定模块,子模块根据协议中的ID确认是不是发给自己的,如果是就回应,否则不回应,CAN分析仪也可以发送类似广播的方式要求所有模块都要回应,比如协议中的ID设置为0xFF就表示每个模块都要回复;

现在问题是这样的:
1、单独发给指定ID的模块,发送和接收都正常;
2、如果使用广播包的形式要求每个模块都要回应时,CAN分析仪偶尔出现接收丢包的现象,发送正常,例如:有两个模块挂接在CAN总线,ID分别为1和2,CAN分析仪在发送广播包,大部分时间都能收到两个模块的回应,有时出现模块1无回复或者模块2无回复,但没有出现两个模块都没有回复的现象。

按理说,ID不同,子模块在同时发送数据有CAN仲裁机制,各位能帮忙分析下可能的原因吗?谢谢!

最新回复

单独发送指定ID的模块正常‌:也仅仅是表明各个模块的基本通信功能是正常的,能够正确识别和处理针对自己的指令。   详情 回复 发表于 2024-9-26 19:16
点赞 关注
 
 

回复
举报

105

帖子

0

TA的资源

一粒金砂(中级)

沙发
 

1.ID是不是有重复

2.如果ID不重复,检查看看自动重发机制有没有打开

点评

我看了芯片手册,当出现仲裁丢失时会自动重试发送消息,应该就有重发机制,有没有可能是CAN分析仪的问题,到时我确认下模块有没有发出消息。  详情 回复 发表于 2024-9-26 17:57
你好!ID确认没有重复,这个自动重发我要看下那个单片机的技术手册,谢谢!  详情 回复 发表于 2024-9-26 17:45
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
flyaqiao 发表于 2024-9-26 17:21 1.ID是不是有重复 2.如果ID不重复,检查看看自动重发机制有没有打开

你好!ID确认没有重复,这个自动重发我要看下那个单片机的技术手册,谢谢!

 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(中级)

4
 
flyaqiao 发表于 2024-9-26 17:21 1.ID是不是有重复 2.如果ID不重复,检查看看自动重发机制有没有打开

我看了芯片手册,当出现仲裁丢失时会自动重试发送消息,应该就有重发机制,有没有可能是CAN分析仪的问题,到时我确认下模块有没有发出消息。

 
 
 

回复

105

帖子

0

TA的资源

一粒金砂(中级)

5
 

很多芯片的重发机制是可以开关的

点评

有没有可能是终端电阻匹配造成的?现在每个模块都并了120欧电阻,而并不是首尾两个节点才有终端电阻。  详情 回复 发表于 2024-9-27 15:54
 
 
 

回复

4856

帖子

3

TA的资源

版主

6
 

单独发送指定ID的模块正常‌:也仅仅是表明各个模块的基本通信功能是正常的,能够正确识别和处理针对自己的指令。

点评

你好!请问下在多个节点同时回复消息,CAN分析仪偶尔出现接收错误有可能的原因有哪些?但分析仪界面并没有显示任何总线错误,只是右下方接收错误计数会更新。  详情 回复 发表于 2024-9-27 08:45
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(中级)

7
 
led2015 发表于 2024-9-26 19:16 单独发送指定ID的模块正常‌:也仅仅是表明各个模块的基本通信功能是正常的,能够正确识别和处理针对自 ...

你好!请问下在多个节点同时回复消息,CAN分析仪偶尔出现接收错误有可能的原因有哪些?但分析仪界面并没有显示任何总线错误,只是右下方接收错误计数会更新。

 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(中级)

8
 

 

 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(中级)

9
 
flyaqiao 发表于 2024-9-26 18:17 很多芯片的重发机制是可以开关的

有没有可能是终端电阻匹配造成的?现在每个模块都并了120欧电阻,而并不是首尾两个节点才有终端电阻。

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表