当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]CAN报文传送当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的n位字符

CAN报文传送

当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的n位字符为标识符(扩展帧格式为29位),定义了报文的优先级。在同一系统中,标识符是唯一的,不可能有两个站发送具有相同标识符的报文 1241。当几个站同时竞争总线读取时,这种配置十分重要。当一个站要向其他站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN 芯片,并处于准备状态;当他收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其他站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收处理它。CAN总线以报文为单位进行数据传送,报文的优先级结合在标识符(n位或29位)中,具有最低二进制数的标识符有最高的优先级。总线读取中的冲突可通过位仲裁解决。当几个站同时发送报文时,发送优先级最高的报文的站将获得总线控制权。这种非破坏性位仲裁方法的优点在于,在网络最终确定哪一个站的报文被传送以前,报文的起始部分己经在网络上传送了。所有未获得总线读取权的站都成为具有最高优先权报文的接收站,并且不会在总线再次空闲前发送报文。

在进行数据传送时,发出报文的单元称为该报文的发送器。该单元在总线空闲或丢失仲裁前恒为发送器。如果一个单元不是报文发送器,并且总线不处于空闲状态,则该单元为接收器。对于报文发送器和接收器,报文的实际有效时刻是不相同的。对于发送器而一言,如果直到帧结束末尾一直未出错,则对于发送器报文是有效的,o如果报文受损,将允许按照优先权顺序自动重发送。为了能同其他报文进行总线访问竞争,总线一旦空闲,重发送立即开始。对于接收器而言,如果知道帧结束的最后一位一直未出错,则对于接收器的报文是有效的。构成一帧的帧起始、总裁场、控制场、数据场CRC序列均借助位填充规则进行编码。当发送器在发送的位流中检测到5位连续的相同数值时,将自动地在实际发送位流中插入一个补码位。数据帧和远程帧的其余位场采用固定格式,不进行填充。出错帧和超载帧同样是固定格式,也不进行位填充。报文中的位流按照非归零(NRz)码方法编码,这意味着一个完整位的位电平要么是“0”要么是“1”。报文传送由4种不同类型的帧表示和控制:数据帧携带数据由发送器送至接收器;远程帧通过总线单元发送,以请求发送具有相同标识符的数据帧;出错帧由检测出总线错误的任何单元发出;超载帧用于提供当前的和后续的数据帧的附加时间延迟。

2.2.6CAN的帧结构

CAN2.OB建立了两种不同的帧格式(适用于数据帧和远程帧):一种是具有n位标识符的 Bas1cCAN(标准帧格式),另一种是具有29位标识符的 PeliCAN。

报文传输有以下4种不同类型的帧:

数据帧 (dataframe):数据帧将数据从发送器传输到接收器;

远程帧 (remoteframe):总线单元发出远程帧,请求发送具有同一标识符的数据帧;

错误帧 (errorframe):任何单元检测到总线错误就发出错误帧;

过载帧 (overioadframe):过载帧用在相邻数据帧或远程帧之间提供附加的延时。

1.数据帧

数据帧由7个不同的位场组成:即帧起始、仲裁场、控制场、数据场、CRC

场、应答场、帧结束。结构如图2一4所示

 

标准帧格式与扩展帧格式中仲裁和控制域结构不同,其结构分别如下:

 

图2一5标准格式的帧结构

 

图2一6扩展格式的帧结构

(1)帧起始 (sOF)标志数据帧和远程帧的起始,它仅由一个“1”构成。只有在总线处于空闲状态时,才允许节点开始发送。所有节点都必须同步于首先开始发送的那个节点的帧起始前沿。

(2)仲裁场由标识一符和远程发送请求位(RTR)组成。仲裁场如图2一7所示:

 

标识符:标识符的长度为11位,这些位以从高位到低位的顺序发送,发送位为ID.0,其中最高7位(ID.10一ID.4)不能全为“1”。RTR位为“O”代表是数据帧,为“1”代表远程帧。为“0”还是为“1”是由用户填写的。

(3)控制场由6位组成,如下图2一8所示:

 

(4)数据场由数据帧中被发送的数据组成,它包括O一8个字节,每个字节8位。首先发送的是最高有效位。

(5)CRC场包括CRC序列,后随CRC界定符,CRC场结构如下图2一9所示

 

(6)应答场(AC均为两位,包括应答间隙和应答界定符,结构如下图2一10

 

(7)帧结束:每个数据帧和远程帧均由“1111111”7个隐性位组成的标志序列界定

2.远程帧
需要获得数据的节点可以借助于发送一个远程帧来请求对应的节点发送数据给它。远程帧同样存在标准的和扩展的两种格式。在两种格式下,均由6个不同的位场组成:帧起始、仲裁场、控制场、CRC场、应答场和帧结束。同数据帧相比较,不同的是:远程帧的RTR位是“1”(这须由用户用程序填充)。远程帧不存在数据场。DLC的数据值是独立的,它可以是0一8中的任何数值。远程帧的组成如下图2一11所示:[!--empirenews.page--]

 



3、出错帧
出错帧由两个不同场组成,第一个场由来自个站的错误标志叠加得到,后随的第二个是出错界定符。出错帧的组成如下图2一12所示:

 



4、超载帧
超载帧包括两个位场;超载标志和超载界定符,其组成如下图2一13所示

 



5、帧间空间

数据帧和远程帧同前面的帧相同,不管是何种帧(数据帧、远程帧、出错
帧和超载帧)均被称为帧间空间的位场分开。帧间空间包括间歇场和总线空闲
场,对于“错误认可”节点还有暂停发送场。对于非”错误认可“的接收器,
其帧空间如下图2一14所示:

 



对于“错误认可”节点,其帧空间如下图2-15所示:



2.2.7CAN数据错误监测


CAN协议可使用五种检查错误的方法,其中前三种为基于报文内容检查。


1.循环冗余检查(CRC):在一帧报文中加入冗余检查位可保证报文正确。接收站通过cRc可判断报文是否有错【25]。其工作原理如下:



(5).根据R(x)和R‘(x)是否相等来判断传输是否出错,如果计算余数多项式和接收余项多项式相等,则数据传输无差错,如果不等,则表明出现了错误,由发送方重新发送数据,知道数据传送正确为止。

2.帧检查:这种方法通过位场检查帧的格式和大小来确定报文的正确性,用于检查格式上的错误。
3.应答错误:被接收到的帧由接收站通过明确的应答来确认。如果发送站未收到应答,那么表明接收站发现帧中有错误,也就以错误类型和界定是说,ACK场己损坏或网络中的报文无站接收。
4.总线检测:CAN中的一个节点可监测自己发出的信号。因此,发送报文的站可以观测总线电平并探测发送位和接收位的差异。
5.位填充:如果在一帧报文中有太多相同电平的位,就有可能失去同步。为保证同步,在五个连续相等位后,发送站自动插入一个与之互补的补码位;接收时,这个填充位被自动去掉。例如,五个连续的低电平位后,CAN自动插入一个高电平位。CAN过这种编码规则检查错误,如果在一帧报文中有6个相同位,CAN就知道发生了错误。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭