OpenEdv-开源电子网

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

STM32 CAN发送问题

[复制链接]

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
发表于 2016-8-16 19:30:19 | 显示全部楼层 |阅读模式
10金钱
用战舰的板子,下载CAN例程。在正常模式下,通过CAN分析仪接收数据,只能接收到16帧数据,就再也接收不到了,波特率为1M。但,我把波特率调低,调为200K,就能用CAN分析仪一直接收到。而且,我用别的开发板接收时,就也可以一直接收到波特率1M时候的数据。同事1M波特率,用CAN分析仪是可以的。求大神,谢谢

最佳答案

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

原子哥,问题找到了,在我设置波特率的时候,如果我设置成SJW_1,BS2_8,BS1_3,分频系数为3这样是不行的,当我把BS2_3,BS1_8其他不变就可以了。这几个参数在设置时需要遵循什么原则吗。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-16 19:30:20 | 显示全部楼层
正点原子 发表于 2016-8-17 21:04
别的开发板,1M和 CAN分析仪通信,一直正常?

原子哥,问题找到了,在我设置波特率的时候,如果我设置成SJW_1,BS2_8,BS1_3,分频系数为3这样是不行的,当我把BS2_3,BS1_8其他不变就可以了。这几个参数在设置时需要遵循什么原则吗。
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-16 19:31:22 | 显示全部楼层
自己顶! 描素的可能不是很清楚,欢迎来提问解答。
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-16 19:40:48 | 显示全部楼层
大神们,看一眼嘛
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-16 20:21:13 | 显示全部楼层
自己顶!!!!!!!!!!!!!!!!!!!!!!
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-16 20:47:00 | 显示全部楼层
求大神
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2016-8-17 21:04:54 | 显示全部楼层
别的开发板,1M和 CAN分析仪通信,一直正常?
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-18 08:23:46 | 显示全部楼层
正点原子 发表于 2016-8-17 21:04
别的开发板,1M和 CAN分析仪通信,一直正常?

是的,原子哥,在1M波特率的时候,和别的开发板通讯是没问题的。在和CAN分析仪通讯的时候,1M是不能一直发的,降低波特率是可以的,表示很费劲,因为别的人也是这样发的,和CAN分析仪通讯是没问题的,为什么啊原子哥。
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-18 08:27:44 | 显示全部楼层
正点原子 发表于 2016-8-17 21:04
别的开发板,1M和 CAN分析仪通信,一直正常?

说错了一点原子哥,就是我用战舰的,和用探索者的开发板1M通讯都是不能一直发的。而且,在环回模式下1M是没问题的,就是在正常模式下,不能一直发。一开始我还改了改例程,后来我直接没改,就改成1M波特率,然后按按键一直发就只能发16帧数据。我自己也做了一个小板子,也是不行的。
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-18 08:48:20 | 显示全部楼层
正点原子 发表于 2016-8-17 21:04
别的开发板,1M和 CAN分析仪通信,一直正常?

还有就是原子哥,在例程1M波特率发送的时候,我修改了CAN.C里面这句话 CAN_InitStructure.CAN_ABOM=DISABLE;修改成了ENABLE,就可以连续发了,但是出现的问题就是,他发送的都是一样的数(例程里面的canbuf不是一直在更新嘛),但他发送的就是1-7
回复

使用道具 举报

11

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2016-4-25
在线时间
31 小时
 楼主| 发表于 2016-8-18 10:36:13 | 显示全部楼层
正点原子 发表于 2016-8-17 21:04
别的开发板,1M和 CAN分析仪通信,一直正常?

原子哥,刚才我改了下例程,让它在正常模式一直发送数据,看到CAN分析仪接收16帧数据,就卡一下,然后在接收,然后在卡,就好像有延时一样(可我已经把例程除了发送没挂,其他都挂起来了)。而环回模式下就很顺畅的一直在发
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2016-8-18 22:26:02 | 显示全部楼层
小牛试大刀 发表于 2016-8-18 10:36
原子哥,刚才我改了下例程,让它在正常模式一直发送数据,看到CAN分析仪接收16帧数据,就卡一下,然后在 ...

这个没有特别说明哦
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-2 20:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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