OpenEdv-开源电子网

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

CAN接收不正确

[复制链接]

13

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
104
金钱
104
注册时间
2014-12-23
在线时间
0 小时
发表于 2015-5-25 23:17:19 | 显示全部楼层 |阅读模式
5金钱
。发现CAN的通信过程中,发现CAN接收的数据前面都是对的。。。只有DATA[6]和DATA[7]永远是错的。。不知道为什么。。求助。。
我看了发送端。发送的是正确的值,CAN如果不管那两位都是正常的。。。。

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-5-26 00:02:39 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

13

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
104
金钱
104
注册时间
2014-12-23
在线时间
0 小时
 楼主| 发表于 2015-5-26 15:48:45 | 显示全部楼层
求助啊!!没想通
回复

使用道具 举报

1

主题

192

帖子

0

精华

高级会员

Rank: 4

积分
597
金钱
597
注册时间
2014-4-14
在线时间
104 小时
发表于 2015-5-27 12:12:22 | 显示全部楼层
看看帧里的数据长度定义。
回复

使用道具 举报

13

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
104
金钱
104
注册时间
2014-12-23
在线时间
0 小时
 楼主| 发表于 2015-5-27 12:20:02 | 显示全部楼层
回复【4楼】翼间:
---------------------------------
我一直给的8.。。没关系吧
回复

使用道具 举报

15

主题

69

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2015-3-20
在线时间
5 小时
发表于 2015-5-27 14:02:29 | 显示全部楼层
是初始化配置有问题吧
回复

使用道具 举报

1

主题

192

帖子

0

精华

高级会员

Rank: 4

积分
597
金钱
597
注册时间
2014-4-14
在线时间
104 小时
发表于 2015-5-27 14:44:49 | 显示全部楼层
回复【5楼】53299621:
---------------------------------
你需要传的这一帧数据是多长就设多长啊,长度一直是8,给8才没问题,只有6个字节你给8后面两个字节肯定就不对了,是上次8个字节的报文的后两个字节,CAN发送的时候不会管你数据有没有超范围的,你假如只填了6个数据,发送长度却写了8,CAN是不会管你只填了6个的,他会发满8个字节为止,也就是那个结构体的整个数据部分8字节不管你填了几个,全部发出去。
回复

使用道具 举报

1

主题

192

帖子

0

精华

高级会员

Rank: 4

积分
597
金钱
597
注册时间
2014-4-14
在线时间
104 小时
发表于 2015-5-27 14:48:06 | 显示全部楼层
一般这种情况都是数据长度设错了或者用指针但指向的地址不对,比如指向一个6字节数组却忘了长度,结果发送的时候指针累加了8次指针指的已经超出数组范围指到别的地方去了……
回复

使用道具 举报

13

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
104
金钱
104
注册时间
2014-12-23
在线时间
0 小时
 楼主| 发表于 2015-5-29 21:19:33 | 显示全部楼层
回复【8楼】翼间:
---------------------------------
谢谢大神的指导。。。长度问题我改回来了。。。发多少我给的多少。。。。但是如果我发送7或者8个字节。。最后两个字节还是出错。。前面的还是都是正确的。。要纠结了死了。。。

楼上有说是初始化的问题。。。初始化有这些方面配置吗??我都是复制的历程。。记得没有哪个地方的初始化会出这种问题吧。。。

可能回事硬件的问题吗?
回复

使用道具 举报

13

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
104
金钱
104
注册时间
2014-12-23
在线时间
0 小时
 楼主| 发表于 2015-5-29 21:20:11 | 显示全部楼层
回复【6楼】runfan:
---------------------------------
请问下。。初始化哪里会出这个问题。。我实在没想通。。谢谢了。。大神。。。
回复

使用道具 举报

1

主题

192

帖子

0

精华

高级会员

Rank: 4

积分
597
金钱
597
注册时间
2014-4-14
在线时间
104 小时
发表于 2015-6-2 08:38:47 | 显示全部楼层
回复【9楼】53299621:
---------------------------------
一般不会,CAN硬件要么不通,要么全通,很少说部分出错的,更别说专门错在固定的两个字节上的,这很明显是软件上出的问题,你把初始化和发送部分的代码截出来看看吧。
回复

使用道具 举报

15

主题

69

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2015-3-20
在线时间
5 小时
发表于 2015-6-2 13:57:30 | 显示全部楼层
回复【10楼】53299621:
---------------------------------
你把你初始化的代码发上来
回复

使用道具 举报

0

主题

77

帖子

0

精华

初级会员

Rank: 2

积分
144
金钱
144
注册时间
2014-6-7
在线时间
7 小时
发表于 2015-6-2 14:07:20 | 显示全部楼层
做好这几点:
1、确定被发送的数据是准确无误的
2、有多少发多少
3、发送与读取过程中寄存器都不会因为时间冲突而被改变
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-21 23:20

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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