浅谈CAN总线的位定时参数

来源:本站
导读:目前正在解读《浅谈CAN总线的位定时参数》的相关信息,《浅谈CAN总线的位定时参数》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《浅谈CAN总线的位定时参数》的详细说明。
简介:本文将通过一个CAN总线控制网络介绍CAN总线位定时参数的基本概念和计算设置方法。该网络采用AT89S52单片机、SJA1000 CAN控制器和PCA82C250总线收发器设计,并应用于楼宇自动化控制系统中,获得了良好的应用效果。

1.概述

CAN总线通信中,波特率、位周期内采样次数和采样位置都可以通过编程设置,这些设置为用户根据其应用优化网络通信性能提供了方便。优化位定时参数,能够保证信息同步、通信性能、传输延迟和晶振误差在极端条件下进行恰当的错误检测。

然而系统的有些性能是相互冲突的,例如,在位周期末端部分选择采样点可以使传播延迟有更大的容差,这时总线长度可以更长;如果在位周期的中点附近选择采样点,则系统的每个节点可以有更大的振荡器容差。可以明显地看出振荡器容差和总线长度是互相冲突的,它们只有通过优化位定时参数才能兼备。

2.CAN总线的位定时关系及相关概念

下面介绍的几个概念中有些与具体的器件有关,本网络中使用的CAN总线控制器件是SJA1000,因此,有关概念也都是针对SJA1000而言的。

振荡器时钟周期tclk tclk是CAN总线控制器外挂晶振频率的倒数,它是CAN总线系统中的最小时间单位。

系统时钟周期tSCL tSCL是系统将tSCL分频后得到的一个时间值,它在时间上就是一个时间份额TQ,分频数由SJA1000的波特率预设值(BRP)决定。tSCL可由下式来计算:tSCL=2×tclk×BRP (1)

位周期tBit位周期是一位数据在总线上的持续时间。使用Philips公司的独立CAN控制器,一个位周期由3个部分组成:同步段( tSYNC_SEG)、相位缓冲段1(tTSEG1)和相位缓冲段2( tTseg2)。如下式所示:tBit=tSYNC_SEG+tTSEG1+tTSEG2 (2)

CAN位定时控制寄存器BTR0和BTR1 SJA1000的地址6(BTR0)和地址7(BTR1)是位定时控制寄存器。

BTR0的高两位决定了同步跳转宽度的大小,低六位决定波特率预设值; BTR1的最高位决定了总线采样模式,低七位决定了TSEG1和TSEG2的大小。

提醒:《浅谈CAN总线的位定时参数》最后刷新时间 2024-03-14 01:13:01,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《浅谈CAN总线的位定时参数》该内容的真实性请自行鉴别。