OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7748|回复: 5

CAN控制器同时出现发送和接收时怎么处理?

[复制链接]

190

主题

401

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1289
金钱
1289
注册时间
2014-6-15
在线时间
143 小时
发表于 2015-5-11 10:33:30 | 显示全部楼层 |阅读模式
5金钱

假设现在两个MCU(A和B)之间进行CAN通信

假设 
当A给B发送数据的同时B也给A发送了另一帧数据,
那么A的数据能发出去吗? 
如果能发出去, 那B发给A的数据会丢失吗?还是B会重新发送?

最佳答案

查看完整内容[请看2#楼]

看芯片文档参考意义不明显,CAN协议文档倒是说得很明确。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2015-5-11 10:33:31 | 显示全部楼层
看芯片文档参考意义不明显,CAN协议文档倒是说得很明确。
于20150522停用该账号:http://www.microstar.club
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-5-12 00:29:18 | 显示全部楼层
CAN有总线仲裁机制,通过ID来决定优先级。
楼主很明显,我们光盘给的CAN资料就没读。。。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

190

主题

401

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1289
金钱
1289
注册时间
2014-6-15
在线时间
143 小时
 楼主| 发表于 2015-5-12 08:06:39 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
我知道CAN有仲裁机制

但是我有疑问的是仲裁过程中失败的那一帧数据是否能够重发 或者是直接丢失?
回复

使用道具 举报

3

主题

197

帖子

0

精华

高级会员

Rank: 4

积分
538
金钱
538
注册时间
2012-7-19
在线时间
63 小时
发表于 2015-5-12 08:27:47 | 显示全部楼层
回复【3楼】wang12zhe:
---------------------------------
这个也有机制,所谓避退。。。资料上应该也有,至少stm32的参考手册是有提到的吧

还是看看资料吧
回复

使用道具 举报

48

主题

135

帖子

0

精华

高级会员

Rank: 4

积分
561
金钱
561
注册时间
2017-8-29
在线时间
89 小时
发表于 2018-11-19 14:50:56 | 显示全部楼层
wang12zhe 发表于 2015-5-12 08:06
回复【2楼】正点原子:
---------------------------------
我知道CAN有仲裁机制

根据自己实际遇到的现象谈一下。主设备A与从设备B通过CAN通信,正常情况下主设备A周期性询问B设备运行情况(即A周期发送命令,B收到后打包回复。此包信息远远大于8字节),与此同时,其他即时性命令也需要通过该CAN发送,接收后也需回报。这种情况下就会发现,B设备偶尔会丢失1个询问命令。猜测,可能是由于即时性命令产生的回包与周期询问命令同时发出,根据优先级判断,只有一个操作能够实现,另一个操作会被丢失。
没有想到比较好的测试方法,我是根据猜测反推CANID是符合优先级判定的。
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-22 01:34

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表