can总线位定时参数的研究

can总线位定时参数的研究

ID:5348782

大小:374.39 KB

页数:0页

时间:2017-12-08

can总线位定时参数的研究_第页
预览图正在加载中,预计需要20秒,请耐心等待
资源描述:

《can总线位定时参数的研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、http://www.paper.edu.cnCAN总线位定时参数的研究廖传书,张涛武汉理工大学信息工程学院,武汉(430070)E-mail:echoxyt@163.com摘要:在CAN网络通信中,如果能够很好的设置波特率、位周期内取样点数和位置,可以很大程度优化网络通信性能,这就归结到对位定时参数的设置上。本文详细描述了CAN总线位定时参数设置的规则、步骤,并举出具体的例子对CAN位定时参数的设置进行了说明。关键词:CAN总线;同步;位定时;传输延时中图分类号:TP3361.CAN总线概述控制器局域网C

2、AN(ControllerAreaNetwork)是德国Bosch公司为汽车应用而开发的一种能有效支持分布式控制的和实时控制的、多主的异步串行通讯网络,属于现场总线(区别于办公室总线)的范畴。其总线规范已被ISO国际标准组织制定为国际标准。CAN是基于ISO/OSI的网络层定义的,但其主要是采用OSI底层的物理层、数据链路层和应用层。在器[1]件方面与物理层对应的是收发器(Transceiver),主要功能是位定时、位编码解码及同步等。CAN协议最大的特点就是位率、位取样点和每位的取样数都是可编程的,这就为

3、工程师提供了使网络性能最优化的机会。CAN总线数据传输、接收、错误检测和纠错等均是通过控制器的硬件完成的,用户组建这样的2线网络,仅需要极少的软件开销,非常经济。2.位定时的相关定义尽管CAN总线具有较强的纠错能力,支持差分收发,适合高噪声环境,具有较远的传输距离,并且很多半导体公司都有支持CAN通信协议的集成器件。但在实际应用中,硬件电路设计方面有许多不可避免的影响因素限制了CAN总线的一些优越特性。最为突出的是CAN节点内的晶体振荡器容差和硬件电路所带来的传输数据的延迟。这两方面的因素对通信网络的正常运

4、行都会带来不利影响。若在设计中不予以充分考虑,就可能使通信节点获得错误的数据位采样值或者造成仲裁失效现象,最终导致通信的错误、中断,甚至通信网络的瘫痪。因此要分析、解决这样的错误就需要对CAN总线位定时中的位同步和CAN节点的工作过程有一个深入的了解。下面本文以Philips公司的独立通信控制器SJA1000为例,进行研究。2.1位周期波特率(fbit)是指单位时间内所传输的数据位的数量,一般取单位时间为1s。波特率由通信线上传输的一个数据位周期的长度(tbit)决定,如下式所示。fbit=1/tbit(1

5、)[2]图1是Philips公司给出的位周期结构图,可见一个位周期由:同步段(SYNC_SEG)、相位缓冲段1TSEG1)和相位缓冲段2(TSEG2)三个互不重叠的段组成。这3个时间段分别是tSYNC_SEG,tTSEG1和tTSEG2,所以算术上额定位周期tbit是3个时间段的和:tbit=tSYNC_SEG+tTSEG1+tTSEG2(2)1http://www.paper.edu.cn位周期中的这些段都是可以编程设置的,且都可以用整数个基本时间单位(时间份额)TQ来表示。时间份额的持续时间是CAN系统

6、时钟的一个周期tSCL,是从振荡器时钟周期(tCLK)取得的(见图1)。用户通过编程预分频因数(波特率预设值,BRP)可以调整CAN系统时钟(见方程3)。tSCL=BRP·2tCLK=2BRP/fCLK(3)具体到SJA1000,有2个总线时序寄存器,即总线时序寄存器0(BTR0)和总线时序寄存器1(BTR1)。这2个寄存器有自己不同的功能定义,共同作用决定总线的通信波特率。tCLKXTALtSCL波特率预设值(BRP):(用户定义)SystemClock预计的位时间(NBT,tbit)SYNC_SEG同步

7、段(固定值)相位缓冲段2(用户定义)相位缓冲段1(用户定义)TSEG1TSEG2图1位周期的总体结构图2.1.1总线时序寄存器0总线时序寄存器0定义了波特率预设值BRP和同步跳转宽度SJW的值。BRP共六位,取值区间为[1,64]。同步跳转宽度SJW共两位,取值区间为[1,4]。位功能说明如表1所列。表1总线时序寄存器0MSBLSBBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0SJW.1SJW.0BRP.5BRP.4BRP.3BRP.2BRP.1BRP.0SJWBRP可以由BRP的数值来决

8、定CAN的系统时钟周期tSCL,计算公式如下:tSCL=2tCLK×(32BRP.5+16BRP.4+8BRP.3+4BRP.2+2BRP.1+BRP.0+1)(4)这里tCLK=XTAL的频率周期=1/fXTAL同步跳转宽度定义了每一位周期可以被重新同步缩短或延长的时钟周期的最大数目:tSJW=tSCL×(2×SJW.1+SJW.0+1)(5)需要注意的是同步跳转宽度不能大于相位缓冲段1和2中的任何一个。2.1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。