详解CAN总线信号传输位定时与位同步

发布者:skyhcg最新更新时间:2016-09-08 来源: ofweek关键字:CAN总线  信号传输  位定时  位同步 手机看文章 扫描二维码
随时随地手机看文章
CAN协议与其它现场总线协议的区别中有一个是:它使用同步数据传输而不是异步传输(面向字符)。这意味着传输性能得到更有效的发挥,但是另一方面,这需要更加复杂的位同步方法。

  在面向字符的协议中的位同步实现起来很简单,在接受每个字符的起始位时进行同步。但在同步传输协议中,只有一帧的开始才有一个起始位。这通常不足以使接收器的位采样和发送器保持同步。为了使接收器在帧结束时也能正确采样到接收的位流,就需要接收器不断进行重新同步。重新同步表示在位流中每个有效的信号边沿都可对接收信号的时钟周期进行检测。在信号边沿间的最大时间周期内,发送和接受振荡器之间最大可能的时间差必须在一个位间隔内的标称采样点之前和之后通过足够的空闲时间(“相位缓冲段”)来补偿。

  由于CAN协议使用非破坏性的位总线仲裁和显性应答位,信号从发送器传输到接收器再返回到接收器必须在一个位时间内完成。因此除了保留用于同步的时间外,还需要一个时间段(“传输延迟段”)对总线上的信号传输进行补偿以及用于发送和接收节点的内部信号延迟。

  一个位间隔的时间段的长度根据振荡器周期,被定义为一个基本时间单位(时间份额)的倍数。基本时间单位tq是表示同步机制时间分辨率的基本单位并且因为同步段而被引入到位时间中。同步段是位时间中CAN信号电平的边沿将要产生的那一部分。在同步段之后产生的边沿与同步段之间的距离称为该边沿的“相位误差e”。

  传输延迟段提供必要的时间用于处理网络中的最大信号传输延迟。该时间段必须两倍于两个节点之间的最大信号传输延迟时间加上发送和接收节点的内部延迟时间之和。

  需要区分两种类型的同步:帧起始处的“硬同步”和帧中间的“重新同步”。在硬同步之后,位时间在sync段结束时重新启动而不考虑相位的误差。这样硬同步强制产生硬同步的边沿延伸到重新启动的位时间的同步段中。重新同步导致位时间缩短或延长,从而使采样点产生移位。

  通过标称采样点之前和之后的相位缓冲段,在重新同步时为实际采样点的移位保留了空闲时间。同步只发生在隐性位转换到显性位电平的边沿。通过在每个时间量内对总线的实际电平进行采样并和前一次采样点的总线电平相比较可检测出边沿。如果在同步段内检测到边沿,那么该边沿可实现同步,否则信号边沿与同步段的结束之间的距离就是边沿相位误差(以时间量计算)。如果边沿发生在同步段之前,相位误差为负,否则为正。

  如果相位误差为正,相位缓冲段1将被延长。每次重新同步时,相位缓冲段缩短或延长的数量(“同步跳转宽度”,SJW)的最大值受到限制,它可编程为1和Min{4,Phase_Seg1}之间的值。

  当信号边沿相位误差的数值小于或等于SJW的编程值。硬同步和重新同步的值将是相同的。如果相位误差的数量大于SJW,重新同步将无法完全补偿相位误差,这样误差(相位误差-SJW)仍然存在。

  在两次采样点之间只允许执行一次同步。重新同步维持了边沿和采样点之间的最小距离,使总线电平的稳定和滤除尖峰的时间小于传输段和相位段1时间之和。

  一个位时间内不同的段可按照下面的限度进行编程:

  Sync_Seg:1时间份额

  Prop_Seg1:1...8或更多时间份额

  Phase_Seg1:1...8或更多时间份额

  Phase_Seg2:Max{Phase_Seg1,信息处理时间}

  波特率预分频器:1...32

  SJW:1...4,但是不大于Min{4,Phase_Seg1}

  在同步的时候,Phase_Seg1可以长于编程的标称时间而Phase_Seg2可以短于标称时间。

  “数据处理时间”从采样点之后开始,它是用于决定随后发送的位电平的时间(例如,数据位、CRC位、填充位、错误标志或空闲)。该时间不能大于2个时间量。其长度为Phase_Seg2编程值的下限。在同步时Phase_Seg2可以小于数据处理时间,这不会影响总线的时序。

  每个位时间的时间份额值必须设置为8到25的范围内。

  如果发送器的振荡器比接收器的慢(a),用于同步的信号边沿将延迟到达接收器。接收器可通过采样点的移位进行补偿。可补偿的最大累积“延迟”(边沿相位误差)由相位段1所保留的时间确定。在重新同步过程中,如果相位误差的值小于等于SJW,采样点则根据所发生的边沿相位误差e进行移位,并因此恢复与当前位位置相关的采样点的位置。

  当发送器的振荡器比接收器的快时(b),信号边沿的到达比接收器预期的要早,因此下一个位时间间隔必须提前启动。这通过缩短相位缓冲段2来实现。这种情况下,同步段被省略了,因此在重新同步之后,从信号边沿到采样点之间的距离和同步段到采样点之间的距离相等(如果没有检测到边沿)。在第一个例子中,该“提前”边沿的相位误差值小于SJW,因此可以实现完全补偿。

  相位缓冲段只是暂时改变,在下一个位时间里如果没有检测到相位误差,它们将恢复为标称值。接收器希望边沿出现在同步段当中。

  下面是应用于位同步的规则[ISO99-1]:

  在一个位时间内的两次采样点之间只有一次同步。

  只有在前一个采样点检测到的信号电平与后一个采样点的信号电平不同时,才能使用从隐性到显性的信号边沿进行同步。短暂的干扰脉冲是不起作用的。

  只要在总线空闲时出现一个隐性到显性的信号边沿,就会执行一个“硬同步”(新的位时间间隔的起始)。

  在帧间空间中(间歇场的第一位除外)隐性到显性的信号边沿会导致执行一个硬同步。

关键字:CAN总线  信号传输  位定时  位同步 引用地址:详解CAN总线信号传输位定时与位同步

上一篇:USB数字电视接收棒的设计与实现
下一篇:HDMI、USB 2.0等高速端口的ESD保护(一)

推荐阅读最新更新时间:2024-05-03 00:38

基于CAN总线的城市客车信息集成控制系统
1 引言 随着电子技术的不断发展,汽车电子技术也迅速的发展了起来,汽车上各种电子控制单元的数目也不断地增加,连接导线显著增多,因而提高控制单元间通信的可靠性和降低导线成本已成为迫切需要解决的问题。 在20世纪80年代,以研发和生产汽车电子产品著称的德国bosch 公司针对此问题开发了can总线协议,这种多主网络协议,它的基础是无破坏性仲裁机制,使得总线能以最高优先权访问报文而没有任何延时。can作为标准车载网络技术,其在汽车网络化应用的进程中起着桥梁和纽带的作用,将城市客车信息集成采集提高到一个新的层次。 2 城市客车信息集成控制系统概述 城市客车信息集成控制系统是建立在汽车网络控制技术的基础上,从控制对象分,可以将城市客车
[嵌入式]
NEC单片机 UPD78F9234 16定时器使用例程
NEC单片机 UPD78F9234 16位定时器使用例程(汇编) ;************************************************* ; Lable def ;************************************************* LED8_MODE EQU PM2.1 LED7_MODE EQU PM2.0 LED6_MODE EQU PM12.0 LED5_MODE EQU PM0.3 LED4_MODE EQU PM0.2 LED3_MODE EQU PM0.1 LED2_MODE EQU PM0.0 LED
[单片机]
CAN总线基础知识(二)
CAN协议和标准规范 1 由ISO标准化的CAN协议       CAN协议已经由ISO标准化,有2个版本,如ISO11898和ISO11519-2,它们之间在数据链路层没什么不同,但是在物理层有些区别。       (1)      关于ISO11898:这个标准用于高速CAN通讯。开始的时候,数据链路层和物理层都在标准ISO11898中规定,后来被拆分为ISO11898-1(仅涉及数据链路层)和ISO11898-2(仅涉及物理层)       (2)      关于ISO11519:这个标准用于低速(最高125kbps)CAN通讯 2   ISO11898和ISO11519-2之间的不同     
[嵌入式]
CAN总线定时同步的研究与设计
控制器局域网CAN是一种用于连接汽车和工业场合中电子控制模块、传感器和执行器的串行、多主通信规范。由于CAN总线具有很强的纠错能力、支持差分收发、传输距离远等特点,因此CAN总线用途非常广泛,现已成为工业数据通信领域的主流技术、基础技术,目前比较流行的TTCan,DeviceNet,CANopen,SAE J1939等规范均是以CAN为基础的,因此对CAN总线的深入研究是十分必要的。在CAN规范中,位定时和同步机制是既重要又难于理解的环节之一,它不仅关系到对波特率、总线长度等相关内容的理解,甚至对节点开发的成功与否产生直接的影响。然而,目前相关文献均缺乏针对CAN总线位定时和同步机制的详细分析和探讨。在此以CAN技术规范为基础,深入
[嵌入式]
编程点滴:8AVR定时器比较匹配中断测试程序
程序实现以Timer0比较匹配中断方式控制LED以500ms为间隔产生亮灭变化。 TCCR0寄存器的WGM0位配置为CTC模式时,当比较匹配发生时会自动清除计数器,无需对TCNT0手动置零。 文件组成:测试程序 main.c ,定时器配置程序 timer_8bit_test2.c 和头文件 timer_8bit_test2.h 。 main.c /* ******************************************* * File name: main.c * Function: 8位定时器比较匹配中断方式测试程序 * Description: 定时器控制LED以500ms间隔闪烁 * Author
[单片机]
M16的T1 16定时器一共有15种工作模式,其他2个8定时
分5种工作类型 1 普通模式 WGM1=0 跟51的普通模式差不多,有TOV1溢出中断,发生于TOP时 1 采用内部计数时钟 用于 ICP捕捉输入场合---测量脉宽/红外解码 (捕捉输入功能可以工作在多种模式下,而不单单只是普通模式) 2 采用外部计数脉冲输入 用于 计数,测频 其他的应用,采用其他模式更为方便,不需要像51般费神 2 CTC模式 WGM1=4,12 跟51的自动重载模式差不多 1 用于输出50%占空比的方波信号 2 用于产生准确的连续定时信号 WGM1=4时, 最大值由OCR1A设定,TOP时产生OCF1A比较匹配中断
[单片机]
基于CAN总线多视觉传感器测控系统的设计
    1 引言       视觉检测技术是以机器视觉为基础的新型测试技术,因其具有测量非接触、速度快、信息量大、应用领域宽广等特点而受到欢迎。结构光传感器是应用较早、发展较成熟的视觉传感器,因此本系统采用结构光传感器来采集图像并经图像采集卡送给计算机处理。由于视觉传感器在视觉测量中担负着视频图像信号(测量数据)的采集、切换与传输。因此,如何让视觉传感器测控系统快速、精确地获得理想的视频图像信息,进而为后期的图像处理提供可靠的支持,亦即视觉传感器的测控系统的设计显得尤为重要。       2 视觉系统的概述       视觉检测系统中采集被测物体图像的视觉传感器有单目和双目两种之分,本测控系统可以使用单目视觉传感器也可以使用双目视
[嵌入式]
基于CAN总线接口的红外检测系统的设计思路
    1 引言        一氧化碳(CO)是剧毒性气体,人体吸人后造成人体组织和细胞缺氧,导致引起中毒窒息。在煤矿井下,CO也是引起瓦斯爆炸的主要气体之一。CO无论是对工业生产还是人类都造成巨大的损害,因此,CO检测尤为重要,特别在煤矿井下,《煤矿安全规程》规定,井下作业场所的CO浓度应控制在0.002 4%以下。因此,实时、准确地测出井下CO气体浓度,对保障煤矿工业安全生产具有重要意义。 目前检测CO的方法主要有化学法、电化学法、气相色谱法等。这些方法普遍存在价格高、普适性差等问题,且测量精度较低。这里设计一种新的检测系统,选用红外CO传感器和 MSP430 单片机作为核心信号处理电路,结合数字滤波、温度补偿运算.
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved