Board logo

标题: [经验之谈]9S12的MSCAN速率配置及错误帧故障的解决 [打印本页]

作者: fish1330    时间: 2009-5-30 10:38     标题: [经验之谈]9S12的MSCAN速率配置及错误帧故障的解决

CAN模块的时钟配置,取决于TQ数,还有分频数。


但是不少新手还漏掉了一个重要的参数:那就是时钟源。


请查看下图:

[attach]6905[/attach]

CAN模块的时钟源可以选择为 晶振或者总线时钟。默认是晶振
配置寄存器为 CANCTL1 <6>:CLKSRC 位。
MSCAN Clock Source—This bit de?nes the clock source for the MSCAN module
0 MSCAN clock source is the oscillator clock
1 MSCAN clock source is the bus clock

然后配置分频系数:
CANBTR0<5..0>: 预分频因子=1+CANBTR0<5:0>

然后配置TESG1和TSEG2:
TSEG1=CANBTR1<3..0> +1
TSEG2=CANBTR1<6..4> +1

位速度=(预分频因子) * (1+TSEG1+TSEG2) / CAN模块时钟

---------------------------------------------------------------------------------------
近期在调试MSCAN功能中,发现速率升至250Kbps的时候,用周立功CAN调试器测试,部分线路板存在收发上百帧数据即无法收发数据。用VECTOR CAN调试,发现错误帧累积过多,自动被总线上其他节点屏蔽。而速率在125Kbps则无此现象。
此时,配置CAN如下:
CAN0CTL1 = 0x80;/* 进入初始化阶段,CAN时钟采用晶振源输入 */
CAN0BTR0 = 0xc1; /* 预分频因子 1+1 = 2 */
CAN0BTR1 = 0x3A; /*采样数,TSEG1及TSEG2 */
以上已经初步设定CAN速率为 250KBps。
如果是125Kbps,则修改预分频因子CAN0BTR0 = 0xc3;

因此现象不普遍,基本存在于 1/3左右,所以一直在排查硬件问题。CAN线路上相关元器件全部换了一遍,故障依旧。
后来,稍微修改了一下程序,把CAN0BTR0 = 0xc1;改为 0x81;现象略有好转。
经过多次试验,终于发现MSCAN原来存在一个潜在的大问题。

本帖隐藏的内容需要回复才可以浏览

[此贴子已经被作者于2009-7-26 14:52:59编辑过]


作者: fish1330    时间: 2009-5-30 10:44

帖子配置错误。
原先要设定成回复可见,结果设成 获赠金币帖 了。
回复可见是正常了,不过获赠金币不能改了。
就这样吧


作者: shxwait    时间: 2009-5-30 11:47

另一个是选择时钟源吗?
作者: shxwait    时间: 2009-5-30 11:48

怎么回复后也看不到啊


作者: WXEV    时间: 2009-5-30 13:43

我试试看看。。回复后可以看到的

[此贴子已经被作者于2009-5-30 13:43:28编辑过]


作者: serapha    时间: 2009-6-2 12:00

[em03][em03][em03]
作者: modelfly    时间: 2009-6-8 17:16

我试试看看。。回复后可以看到的
作者: strayroc    时间: 2009-6-10 21:19

怎么回复后也看不到啊


作者: hejianqian    时间: 2009-6-12 10:43

[em01]
作者: lxclxc    时间: 2009-6-12 14:23

我试试看看。。回复后可以看到的

作者: maryshuang    时间: 2009-6-12 16:22

应该是时钟的配置!


作者: jaky0    时间: 2009-6-13 06:15

狂顶,先看看
作者: da-zhaozhuang    时间: 2009-6-19 15:09

我正在学习CAN中,谢谢楼主分享。
作者: lissddd    时间: 2009-6-25 20:14     标题: dddddddddddddddddddddd

sgfgdfdfgdfgdfgdfdfgdfdf
作者: pangfei007    时间: 2009-6-26 01:38

我回复了,谢谢!!

[em01]
作者: yazouren    时间: 2009-6-27 18:32

学习一下


作者: caigogo    时间: 2009-7-1 15:08

看看,呵呵!
作者: shengbo_2003    时间: 2009-7-2 14:46

谢谢


作者: hooter    时间: 2009-7-3 12:48

为什么必须回复才能看啊!!以前不这样的啊


作者: flower314    时间: 2009-7-9 14:20

[em01]正好要用到,支持下
作者: liujuan3669151    时间: 2009-7-12 15:28

还没做过,先谢了
作者: phoibos    时间: 2009-7-16 22:26

看看


作者: fayefayehoo    时间: 2009-7-20 13:40

[em60]看帖
作者: xiongxiong26    时间: 2009-7-21 20:13

回复看看


作者: mayong0626    时间: 2009-7-27 17:47

我试试看看。。
作者: bruceho    时间: 2009-7-28 09:46

看看吧[em05]
作者: bruceho    时间: 2009-7-28 09:47

看不到
作者: hooter    时间: 2009-7-29 11:51

kankan


作者: bwsh    时间: 2009-7-30 10:24

[em02] 回复收看


作者: chenjake    时间: 2009-7-30 13:51

看看~

[em01]
作者: xyklon    时间: 2009-7-30 16:47

刚把can调试通过,关注下


作者: ademaomao    时间: 2009-7-30 21:51

先看看


作者: xmyhome    时间: 2009-8-7 16:05

xiang kan
作者: shengds    时间: 2009-8-7 22:39

我也过来学习一下


作者: modelfly    时间: 2009-8-10 10:48

怎么回复后也看不到啊


作者: zcreat    时间: 2009-8-15 15:19

看不到啊
作者: kingforestwang    时间: 2009-8-19 21:39

我遇到了,老出错误。晕了


作者: applespine    时间: 2009-9-15 16:17

比较关注CAN方面的帖子
作者: wjma198310    时间: 2009-9-24 21:05

应该是时钟的配置
作者: whc1223    时间: 2009-9-25 09:02

en ghhhhhhhhhhhhhhhhhhhhh
作者: jaky0    时间: 2009-9-26 05:38

我试试看看。。
作者: ljwtwb2005    时间: 2009-9-27 11:22

正在学习CAN中,谢谢楼主分享
作者: shangmingli    时间: 2009-9-29 09:55

支持一下。希望学习。
作者: daixiaoke    时间: 2009-10-9 20:23

老是感觉MSCAN的波特率设置部分比较奇怪,部分按照英文手册上说的非法的设置值在运行时,竟然也能通行,不知楼主有没有遇到这个问题?
作者: fsystem    时间: 2009-10-12 17:09

顶顶 看看
学习了!!!!!!!!!!
作者: tx007007    时间: 2009-10-15 10:52

一定要看看
作者: lileibmw    时间: 2009-10-15 11:35

瞅瞅,谢谢
作者: SCYOU2000    时间: 2009-10-16 16:42

一定要看看
作者: Rodger_roy    时间: 2009-10-20 16:38

好帖子,谢谢.!
作者: laoli_eccn    时间: 2009-10-23 23:46

回复看看,谢谢
作者: sd5717806    时间: 2009-10-27 16:16

回复!谢谢
作者: javahan1    时间: 2009-10-28 08:28

好东西,研究研究
作者: glose    时间: 2009-10-28 10:55

看下CCCCCCCCCCCCC
作者: pengkily    时间: 2009-11-4 19:29

原先要设定成回复可见,结果设成 获赠金币帖 了。
回复可见是正常了,不过获赠金币不能改了。
作者: whut_wj    时间: 2009-11-6 23:24

时钟源,应该是最首先关心的东西。
作者: jmuauto    时间: 2009-11-8 20:10

thanks you
作者: lmh-dsp    时间: 2009-11-8 21:06

看看啊看卡啊啊卡按阿科技阿卡啊阿卡
作者: hutu0043    时间: 2009-11-10 13:32

多谢楼主~学习一下~
作者: nowaydoso    时间: 2009-11-10 13:59

学习了,谢谢
作者: xiaotianli    时间: 2009-11-17 11:11

是不是真的啊?看一下啊
作者: sdlczl    时间: 2009-11-17 16:21

学习学习学习学习学习学习
作者: wuyaplane    时间: 2009-11-18 10:35

看看到底是啥好东西
作者: iouzjl    时间: 2009-11-22 23:59

学习了。谢谢。。
作者: jjh_joshua    时间: 2009-11-25 16:40

xiexie,,,,,test OK
作者: Milani    时间: 2009-11-30 22:44

学习学习~~
作者: hualang0929    时间: 2009-12-1 13:09

看看~~~~~~~~~~~
作者: wjdmorals    时间: 2009-12-1 22:35

呵呵,学习学习,谢谢!
作者: applex_ww    时间: 2009-12-2 14:52

werwerwerwer
作者: zxiangru    时间: 2009-12-4 15:07

看看,看看,看看
作者: zhanghl45    时间: 2009-12-8 09:31

时钟源会不会被改了?
原先要设定成回复可见,结果设成 获赠金币帖 了。
回复可见是正常了,不过获赠金币不能改了。
就这样吧
作者: zhaoxyz486    时间: 2009-12-10 13:08

kankhhhhhhhhhhhhhh
作者: zps_grin    时间: 2009-12-10 14:17

谢谢分享,ddddddddd
作者: dicke-dunkun    时间: 2009-12-12 09:00

支持一个,看看怎么样排除故障的!
作者: thl0971    时间: 2009-12-17 13:26

看看分享 谢谢
作者: songhg_detc    时间: 2009-12-18 00:14

学习一下。。。。。
作者: haiyanfreescale    时间: 2009-12-22 12:08

也在研究,看看
作者: dannyfeng    时间: 2009-12-28 19:46

我也出现了类似问题
作者: dew0119    时间: 2009-12-29 19:12

试试,能不能看啊
作者: zel5532063    时间: 2009-12-29 23:15

我来试试看看
作者: dannyfeng    时间: 2009-12-30 16:52

楼主辛苦,不顶不行
作者: wq925110    时间: 2010-1-3 10:00

hao dongd ong
作者: jimmycc    时间: 2010-1-6 21:02

顶一个........
作者: hujieqiang    时间: 2010-1-8 15:44

还搞那么神秘啊
作者: crazy2008    时间: 2010-1-13 15:15

参考一下
用过HZ256,好像只有只有一个时钟源,就是晶振,不能用总线频率
作者: denghaibo    时间: 2010-1-15 12:24

看看怎么回事,我就老调试不成功
作者: ponygame    时间: 2010-1-15 14:35

我也来看看
作者: mingxia    时间: 2010-1-15 16:41

只是路过^_^
作者: toumingse    时间: 2010-2-6 20:45

一起来看看到底是什么问题
作者: toumingse    时间: 2010-2-6 20:48

我们一直用的是总线时钟,看来以后的注意了,谢谢斑竹啊。
作者: xulei2002    时间: 2010-2-28 18:15

look,thank..............
作者: ffery    时间: 2010-3-7 16:00

非常感谢楼主的分享!!!!!
作者: mgsqty    时间: 2010-3-30 13:09

正在学习 看看学习下!
作者: hhh5355    时间: 2010-4-7 19:53

我试试看看。。
作者: lesok    时间: 2010-4-7 20:48


作者: mcu2007    时间: 2010-4-7 23:33

lkugtyszgskjjhf
作者: xiaoqi050222    时间: 2010-4-12 13:00

先看一下 1# fish1330
作者: yujiechen8611    时间: 2010-4-12 15:47

我也遇到过这样的问题,原以为总线时钟和晶振时钟相等,CLKSRC为0或1没关系
作者: mingtain    时间: 2010-4-15 16:11

谢谢!!!!!!!!!!11
作者: baishaohua    时间: 2010-4-19 09:59

Thanks.

I'm now busy doing some work about CAN communicaiton.
作者: chaos_fy    时间: 2010-4-29 10:49

kaknaknakna




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0