版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CAN总线位定时和同步的研究与设计引 言 控制器局域网CAN是一种用于连接汽车和工业场合中电子控制模块、传感器和执行器的串行、多主通信规范。由于CAN总线具有很强的纠错能力、支持差分收发、传输距离远等特点,因此CAN总线用途非常广泛,现已成为工业数据通信领域的主流技术、基础技术,目前比较流行的TTCan,DeviceNet,CANo-pen,SAE J1939等规范均是以CAN为基础的,因此对CAN总线的深入研究是十分必要的。在CAN规范中,位定时和同步机制是既重要又难于理解的环节之一,它不仅关系到对波特率、总线长度等相关内容的理解,甚至对节点开发的成功与否
2、产生直接的影响。然而,目前相关文献均缺乏针对CAN总线位定时和同步机制的详细分析和探讨。在此以CAN技术规范为基础,深入分析CAN总线的位定时和同步机制,给出硬同步和重同步的定义,并给出相应的图解解释方式,对位时间的组成与结构、同步的发生时刻、同步是如何进行的等关键内容给出了明确而又具体的分析。这里的工作对理解位定时和同步机制的本质、指导位时间参数的设置均具有较高的参考价值。1 位定时1.1 位时间的组成 位时间(位周期)tB即1位的持续时间。正常位时间tNBT是正常位速率fNBT(在非重同步的情况下,借助理想发送器每秒发送的位数)的倒数,即tNBT=1/f
3、NBT。正常位时间可划分为几个互不重叠的时间段,这些时间段包括:同步段(SYNC-SEG)、传播时间段(PROP-SEG)、相位缓冲器段1(PHASE-SEG1)、相位缓冲器段2(PHASE-SEG2)。每个时间段由整数个被称为时间份额tQ的基本时间单位组成。tQ是由振荡器周期tCLK派生出的一个固定时间单元。一个时间份额的持续时间通常便是CAN的一个系统时钟周期tSCL。tSCL可通过可编程的预引比例因子进行调整。每个位时间必须由825个时间份额组成。位时间的组成如图1所示。 位时间的各个时间段均有其特定的用途: (1)
4、同步段用于使总线上的各个节点同步,要求有1个跳变沿位于此段内,该段长度为1个时间份额; (2)传播时间段用于补偿网络内的物理延时,它是信号在总线上传播时间、输入比较器延时和输出驱动器延时之和的2倍,该段长度为18个时间份额; (3)相位缓冲器段1和相位缓冲器段2用于补偿沿的相位误差,通过重同步,相位缓冲器段1可被延长或相位缓冲器段2可被缩短。 这些时间段的长度均是可编程的。在常用的通信控制器(SJA1000)或PAC82C200中,合并传播时间段和相位缓冲器段1,称为时间段1(TSEGl
5、),相位缓冲器段2称为时间段2(TSEG2),如图1所示。 采样点是这样一个时刻:在此时刻上,总线电平被读取并被理解为其自身的数值。它位于相位缓冲器段1的终点。在重同步期间,采样点的位置被移动整数个时间份额,该时间份额被允许的最大值称为重同步跳转宽度(SJW),它可被编程为14个时间份额。值得注意的是,重同步跳转宽度并不是位时间的组成部分。12 位定时的作用 位定时是由节点自身完成的(可编程),节点进行位定时的作用为: (1)确定位时间,以便确定波特率(位速率),从而确定总线的网络速度;
6、或在给定总线的网络速度的情况下确定位时间; (2)确定1位的各个组成部分同步段、传播时间段、相位缓冲器段1和相位缓冲器段2的时间长度,其中同步段用于硬同步,位于相位缓冲器段1终点的采样点用于保证正确地读取总线电平; (3)确定重同步跳转宽度以用于重同步。2 CAN总线同步机制分析 CAN规范定义了自己独有的同步方式:硬同步和重同步。同步与位定时密切相关。同步是由节点自身完成的,节点将检测到来自总线的沿与其自身的位定时相比较,并通过硬同步或重同步适配(调整)位定时。在一般情况下,引起硬同步
7、和重同步发生的、来自总线的沿如图2所示。21 硬同步 CAN技术规范给出了硬同步和重同步的结果,但没有给出硬同步和重同步的定义。这里首先给出硬同步和重同步的定义,然后对其进行分析。 所谓硬同步,就是由节点检测到的,来自总线的沿强迫节点立即确定出其内部位时间的起始位置(同步段的起始时刻)。硬同步的结果是,沿到来时刻的前一时刻(以时间份额tQ量度),即成为节点内部位时间同步段的起始时刻,并使内部位时间从同步段重新开始。这就是规范中所说的“硬同步强迫引起硬同步的沿处于重新开始的位时间同步段之内”。硬同步一般用于帧的开始,即总线上
8、的各个节点的内部位时间的起始位置(同步段)是由来自总线的一个报文帧的帧起始的前沿决定的。 同步段的时间长度为1个时间份额。如图3所示来自总线的引起硬同步的沿在t1时刻到来,则节点检测到该沿。将t1时刻的前一时刻t0(以tQ为周期)作为内部位时间同步段的起始时刻。22 重同步 所谓重同步,就是节点根据沿相位误差的大小调整其内部位时间,以使节点内部位时间与来自总线的报文位流的位时间接近或相等。作为重同步的结果,PHASE-SEG1可被延长或PHASE-SEG2可被缩短,从而使节点能够正确地接收报文。重同步一般用于帧的位流发送期
9、间,以补偿各个节点振荡器频率的不一致。这里涉及到沿相位误差的概念。沿相位误差由沿相对于节点内部位时间同步段的位置给定,以时间份额量度,沿相位误差的符号为e,其定义如下: (1)若沿处于SYNCSEG之内,则e=0; (2)若沿处于采样点之前(TSEG1内),则e>0; (3)若沿处于前一位的采样点之后(TSEG2内),则e<0。 CAN技术规范中也给出了重同步跳转宽度,重同步策略与同步规则,但比较抽象、不易理解。为深入理解节点是如何进行重同
10、步的,图4给出了重同步的图解。在图4中,SY,PR,PS1和PS2分别表示同步段、传播段、相位缓冲段1和相位缓冲段2。假定总线位流的第一位(帧起始,为“0”)起始于t1时刻、终止于t2时刻,总线位流的第2位为“1”;从第2位开始,总线位流的“隐性”(“1”)至“显性”(“0”)和“显性”(“0”)至“隐性”(“1”)的跳变沿均用于重同步。在t1时刻,节点检测到总线的跳变沿,便进行硬同步,使t1时刻的跳变沿处于节点内部第1位位时间的同步段内。节点从第1位的同步段开始启动内部位定时,即根据系统要求的波特率给出内部位时间。现假定由于各节点振荡器频率的不一致,在t2时刻的跳变沿未处于节点第2位位时间的
11、同步段SY内,而是处于PS1内,即有e>0。这表明节点内部的位时间小于总线位流的位时间。为了使节点能从总线上通过采样得到正确的位数值,需使节点内部的位时间延长,以使节点内部位时间与总线位流位时间接近或相等。因此,在这种情况下节点应采取的重同步策略为:使PS1延长一定宽度(图4中PS1延长2个时间份额,即同步跳转宽度为大于等于2个时间份额,如为3个时间份额)。e<0的情况与之类似,只是PS2会相应地缩短一定宽度。这与CAN技术规范中的重同步策略是一致的。 这里需要注意的是,相位缓冲段只在当前的位时间内被延长或缩短,在接下来的位时间内,只
12、要没有重同步,各时间段将恢复编程预设值。3 控制器中位定时参数设置的一般方法 在典型的独立CAN控制器(SJA1000或PCA82C200)中,负责位定时的寄存器为总线定时寄存器0(BTR0)和总线定时寄存器1(BTR1),其结构如图5所示。 寄存器中有关参数的计算公式如下: 这些参数的范围在CAN中有较严格的规定,具体如表1所示。 在有些情况中为了优化网络性能,这些参数的设置往往需要考虑传输延迟、时钟偏频等因素。然而,对于一般的开发或工程
13、实际,完全可以根据经验对其进行计算和设置。这里以一个时钟频率为20 MHz、通信波特率为250Kb/s(位时间为4s)的系统为例,介绍与位定位有关的各参数的计算方法和步骤。 (1)确定时间份额。 由表1可知,在1个位周期中时间份额的数量必须是825之间的一个整数值,在满足这个前提下,应使tQ的时间值尽可能小一些,即让一个位周期中tQ的数量更多。这样做的目的是为了使采样点位置的选择具有更好的分辨率。考虑到以上两个因素,故将tQ的数量设为20,于是有 (2)设置时间段和采样点。由于tQ的数量
14、已经确定,再根据 这样看来,时间段1和2似乎有多个配置可供选择。但有一点值得注意,时间段1和2的确定同样关系着采样点在位周期中的位置,这是非常关键的,因为若采样点选择得不适当,在有些情况中会直接导致错误的出现。与普通的串行通信端口或UART在中间位置(50)的采样不同,CAN总线的采样点最好靠近位时间的末端。根据工程经验,一般将采样点时间比设置在80tB的位置是最佳的,于是有 (3)确定同步跳转宽度和采样次数。 为完成位定时参数的设置,最后还要确定同步跳转宽度和采样次数。同步
15、跳转宽度的一般设置原则是在允许的范围内应尽可能的大一些,这样更有利于在重同步时对沿相位误差的补偿,在这里可将该参数设置为3。采样次数的设置比较容易和直接,对于高速总线,建议将SAM置为“0”,此时总线被采样1次;而对于低/中速总线,建议将SAM置为“1”,此时总线被采样3次。250Kb/s属于高速总线,所以在这里SAM应置为0。通过以上方法和步骤所确定的各参数值,再结合式(2)、式(3)、式(5)、式(6)可直接得出寄存器BTR0和BTR1的设置值。4 结 语 (1)结合图解的方式对CAN总线位定时、硬同步和重同步等关键技术的深入探讨和分析,反映了CAN总线位定时和同步机制的本质、清晰地表明了它们在CAN技术规范中的地位与作用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 挖掘机拆迁安全协议书
- 《水分析化学》重点笔记
- 2024-2025学年六年级上册数学北师大版期中模拟检测卷(1-3单元)(含答案)
- 气体储存技术新进展
- 高考数学复习:三角函数的概念与三角公式应用
- 合伙企业的账务处理-做账实操
- 2024年煤层气(煤田)项目资金需求报告代可行性研究报告
- 【北京】期中模拟卷【18-19章】
- 公司生产设备购买合同(3篇)
- 左传读书心得体会三篇
- 2024年国家公务员考试《行测》真题卷(行政执法)答案和解析
- 生猪屠宰兽医卫生检验人员理论考试题库及答案
- 《陆上风电场工程设计概算编制规定及费用标准》(NB-T 31011-2019)
- 2023年春江苏开放大学《江苏红色文化》过程性考核作业一二和综合大作业+参考答案
- 图案—国外现代图案ppt课件
- 高中数学 第二章 空间向量与立体几何 2.3.3 空间向量运算的坐标表示课件2 北师大版选修2-1
- 中国南阳介绍PPTppt
- (高三化学试卷)--北京四中高三上学期期中测验化学试题
- 温州市第十四高级中学化学学科课程建设纲要
- 输煤运行专业危险点及防范措施
- 一年级下册语文课件-第13课《画家乡》|北京版(2016)1 (共14张PPT)
评论
0/150
提交评论