打印
[CAN-bus/DeviceNet]

can接收多消息

[复制链接]
2038|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
clj368|  楼主 | 2011-4-8 00:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 clj368 于 2011-4-8 09:02 编辑

我用的是c8051f040,主控单元每隔100ms向地址板发一条查询指令,地址板接收到以后,返回4个消息,我测试时经常有一条消息接收不到,不知道为什么,是不是地址板接收与发送冲突了,请高手帮忙解答,十分感谢!

相关帖子

沙发
lnskngdc| | 2011-4-10 09:45 | 只看该作者
返回的4个报文没有发送完成就被覆盖了,估计波特率不是很高吧?
建议在每个回复报文后加上5ms延时或者查询总线空闲再发送。

使用特权

评论回复
板凳
stycx| | 2011-4-10 23:33 | 只看该作者
多数是第几条没收到?

使用特权

评论回复
地板
clj368|  楼主 | 2011-4-11 09:02 | 只看该作者
3# stycx
发送四条消息时,经常有一条收不到,还经常是同一条

使用特权

评论回复
5
clj368|  楼主 | 2011-4-11 09:05 | 只看该作者
2# lnskngdc
波特率1Mbps,我加上延时试试,不知道怎样查询总线是否空闲呢

使用特权

评论回复
6
lnskngdc| | 2011-4-11 09:34 | 只看该作者
1M有点高了,建议调试的时候用200k或500k,加上短暂延时,基本不会有错.
当总线上有11个连续的隐性位的时候,总线即为空闲.
040好像是有个状态寄存器,读txok位,若为1,发送成功;0为发送未完成或发送失败.

使用特权

评论回复
7
clj368|  楼主 | 2011-4-12 15:42 | 只看该作者
本帖最后由 clj368 于 2011-4-12 15:44 编辑

6# 非常感谢我延时几ms后,接收正常了

使用特权

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

本版积分规则

0

主题

12

帖子

1

粉丝