打印

请教个CAN总线的问题

[复制链接]
1971|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xood|  楼主 | 2007-12-4 17:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在做CAN总线,控制器用的MPC2510,收发器是82C250,现在遇到一个问题,我的主机发送一包数据出去(数据长度8个字节,标准桢格式),从机收到2包,而我的主机接收都是正常的,现在我已经换了新的2510和收发器,但是问题依然没有解决,我的程序应该是没有问题的,因为已经在ARM7的板子上调试通过了,但是我移植到这块板子上就不行了,请教坛子里有哪位大虾遇到过这种情况吗?我在这里先谢谢了。。如果有必要的话我可以将原理图也发上来,本来这次想发的,但是不知道怎么发。。。

相关帖子

沙发
chunyang| | 2007-12-4 23:13 | 只看该作者

一包变两包肯定是程序问题

发送部分,仔细检查吧。

使用特权

评论回复
板凳
xood|  楼主 | 2007-12-5 09:03 | 只看该作者

re:chunyang

先谢谢chunyang,一开始我也是以为程序的问题,但是程序我已经仔细检查不知道多少遍了,其实现在这种情况我认为应该是总线错误或该报文总线仲裁失败,也就是第一包的数据2510没有收到应答桢,所以2510会自动重新发送一次,但是现在我不明白究竟是何种原因造成。。。郁闷中。。继续去查。。

使用特权

评论回复
地板
xood|  楼主 | 2007-12-5 14:32 | 只看该作者

。。。

刚才我试着改动了CAN的波特率,发现波特率125K以下收发均是正常的,也没有出现一包变两包的情况,但是波特率到250K以上的时候就是一包变两包了。。。。。

使用特权

评论回复
5
chunyang| | 2007-12-5 15:03 | 只看该作者

是否加了终端电阻?

接口片的输出对地要加两个小电容。

使用特权

评论回复
6
xood|  楼主 | 2007-12-5 15:58 | 只看该作者

re:

加不加终端电阻我都试过了。效果是一样的。
chunyang版主的意思是应该在CAN收发器的CANH和CANL两管脚加电容然后接地吗?

使用特权

评论回复
7
chunyang| | 2007-12-6 10:57 | 只看该作者

是的,可以试试

终端电阻是一定要加的,一边一个。

使用特权

评论回复
8
xood|  楼主 | 2007-12-6 17:54 | 只看该作者

re:

先谢谢chunyang版主。
今天白天一直有好多别的事,刚才才有时间继续调CAN,按照版主的意思我已经试验过了,但是还是没有什么效果,真想静下来把这个问题先调通,但是时间上不允许,每天别的事情也好多,现在觉得好像是板子的问题了。。。。

使用特权

评论回复
9
chunyang| | 2007-12-6 18:44 | 只看该作者

如果你的系统噪声过大也可能导致问题的发生

使用特权

评论回复
10
jmu2001| | 2007-12-10 00:03 | 只看该作者

呵呵

   找个示波器测测呀

使用特权

评论回复
11
wacke| | 2007-12-19 12:34 | 只看该作者

通讯距离有多远?

太长了不能用太高的波特率的。

使用特权

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

本版积分规则

4

主题

35

帖子

1

粉丝