共2条
1/1 1 跳转至页
,SJA1000,16MHz 在SJA1000电路中使用16MHz的晶振,

问
如何设置实际总线的通讯波特率?
SJA1000独立CAN控制器的CAN通讯波特率由寄存器BTR0、BTR1、晶振等参数共同决定。
计算一个在指定晶振频率下的SJA1000节点通讯波特率,实际上是计算SJA1000寄存器BTR0、BTR1的设置值,但手续非常繁琐,工作量很大,需要涉及计算CAN系统时钟周期(SYNC_SEG、TSEG1、TSEG2、SJW和NBT)。这是由CAN2.0基本规范所决定,主要是为了使在不同工作方式、通讯距离的CAN节点之间能够正常、可靠通讯。同时,计算得出的CAN通讯波特率也仅是针对一个具体数值范围内的通讯波特率;这意味着,标称通讯速率为100Kbps的CAN节点,一般可以与通讯速率为90Kbps-110Kbps的CAN节点正常通讯。
因此,我们建议直接采用国际CiA协会推荐的通讯波特率设置值。相关的设置值可以参考ZLGCAN产品的附录3内容;下表列出了部分CiA推荐的BTR0、BTR1设置值。
表 SJA1000标准波特率
Baudrate
( Kbps ) 晶振频率 = 16MHz 晶振频率 = 12MHz
BTR0 BTR1 BTR0 BTR1
10 31 1C 65 1C
20 18 1C 52 1C
50 09 1C 47 1C
100 04 1C 43 1C
125 03 1C 42 1C
250 01 1C 41 1C
500 00 1C 40 1C
800 00 16 40 16
1000 00 14 40 14
有关这一方面的理论资料,可以参考《确定SJA1000 CAN控制器的位定时参数》等相关文档;《单片机与嵌入式系统应用》等杂志也有相关的论文《CAN总线位定时参数的确定》等资料刊载。
答 1: 在LPC2294电路中使用11.0592 MHz的晶振在LPC2294电路中使用11.0592 MHz的晶振,
如何设置实际总线的通讯波特率?
答 2: re2*11.0592MHz的波特率
#define BPS_5K 0x1c0113UL
#define BPS_10K 0x1c0089UL
#define BPS_20K 0x1c0044UL
#define BPS_50K 0x1c001bUL
#define BPS_100K 0x1c000dUL
#define BPS_125K 0x1c000aUL
#define BPS_250K 0x1b0005UL
#define BPS_500K 0x1b0002UL
#define BPS_800K 0x1a0001UL
#define BPS_1000K 0x170001UL
SJA1000独立CAN控制器的CAN通讯波特率由寄存器BTR0、BTR1、晶振等参数共同决定。
计算一个在指定晶振频率下的SJA1000节点通讯波特率,实际上是计算SJA1000寄存器BTR0、BTR1的设置值,但手续非常繁琐,工作量很大,需要涉及计算CAN系统时钟周期(SYNC_SEG、TSEG1、TSEG2、SJW和NBT)。这是由CAN2.0基本规范所决定,主要是为了使在不同工作方式、通讯距离的CAN节点之间能够正常、可靠通讯。同时,计算得出的CAN通讯波特率也仅是针对一个具体数值范围内的通讯波特率;这意味着,标称通讯速率为100Kbps的CAN节点,一般可以与通讯速率为90Kbps-110Kbps的CAN节点正常通讯。
因此,我们建议直接采用国际CiA协会推荐的通讯波特率设置值。相关的设置值可以参考ZLGCAN产品的附录3内容;下表列出了部分CiA推荐的BTR0、BTR1设置值。
表 SJA1000标准波特率
Baudrate
( Kbps ) 晶振频率 = 16MHz 晶振频率 = 12MHz
BTR0 BTR1 BTR0 BTR1
10 31 1C 65 1C
20 18 1C 52 1C
50 09 1C 47 1C
100 04 1C 43 1C
125 03 1C 42 1C
250 01 1C 41 1C
500 00 1C 40 1C
800 00 16 40 16
1000 00 14 40 14
有关这一方面的理论资料,可以参考《确定SJA1000 CAN控制器的位定时参数》等相关文档;《单片机与嵌入式系统应用》等杂志也有相关的论文《CAN总线位定时参数的确定》等资料刊载。
答 1: 在LPC2294电路中使用11.0592 MHz的晶振在LPC2294电路中使用11.0592 MHz的晶振,
如何设置实际总线的通讯波特率?
答 2: re2*11.0592MHz的波特率
#define BPS_5K 0x1c0113UL
#define BPS_10K 0x1c0089UL
#define BPS_20K 0x1c0044UL
#define BPS_50K 0x1c001bUL
#define BPS_100K 0x1c000dUL
#define BPS_125K 0x1c000aUL
#define BPS_250K 0x1b0005UL
#define BPS_500K 0x1b0002UL
#define BPS_800K 0x1a0001UL
#define BPS_1000K 0x170001UL
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 | |
【我踩过的那些坑】电感选型错误导致的处理器连接不上被打赏50分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 | |
【我踩过的那些坑】DRC使用位置错误导致的问题被打赏100分 | |
我踩过的那些坑之混合OTL功放与落地音箱被打赏50分 | |
汽车电子中巡航控制系统的使用被打赏10分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏100分 | |
分享汽车电子中巡航控制系统知识被打赏10分 | |
分享安全气囊系统的检修注意事项被打赏10分 |