初学CAN通信,被波特率搞晕了

[复制链接]
4295|1
 楼主| pbug 发表于 2010-7-24 14:26 | 显示全部楼层 |阅读模式
手上两块MC9S08DZ60的开发板,晶振是8Mhz,我想用250kbps的速度通信,但总不成功,我想我是不是哪里弄错了?我的CAN配置如下:

时钟源:外部时钟源(即8Mhz晶振)
CAN预分频器数值:2(fTQ=8/2=4M)
每Bit所需要的TQ数:4M/250k=16
时段2所占的TQ数:16*(1-75%)=2(我假设在75%处采样)
时段1所占的TQ数:16*75%-1=11 (减1是因为要将Sync_SEQ所占的1TQ减去)
根据时段1和时段2的数值,查表找到同步跳转宽度为1

根据上面的技术结果,得出的数值应该是:
CANBTR0_BRP=2-1=1
CANBTR0_SJW=0
CANBTR1_TSEG1=11-1=10
CANBTR1_TSEG2=0

但是,按照上面的来配置,两块板子总是通信不了,我快要疯了!!!我到底哪里错了?正确的配置应该是怎样?
bluehacker 发表于 2010-8-21 08:05 | 显示全部楼层
SJW应该等于min(时间段2,4}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

2

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部