can总线

CAN总线扩展数据帧介绍

我们两清 提交于 2020-04-01 01:04:08
在扩展CAN 数据帧中,紧随SOF 位的是32 位的仲裁字段。仲裁字段的前11 位为29 位标识符的最高有效位(Most Significant bit,MSb)(基本lD) 。紧随这11 位的是替代远程请求(Substitute Remote Request, SRR)位,定义为隐性状态。SRR位之后是lDE 位,该位为隐性状态时表示这是扩展的CAN 帧。 应该注意的是,如果发送完扩展帧标识符的前11 位后,总线仲裁无果,而此时其中一个等待仲裁的节点发出标准CAN 数据帧(11 位标识符),那么,由于节点发出了显性lDE 位而使标准CAN 帧赢得总线仲裁。另外,扩展CAN 帧的 SRR 位应为隐性,以允许正在发送标准CAN 远程帧的节点发出显性RTR 位。SRR和lDE位之后是标识符的其余18位(扩展lD)及一个远程发送请求位。 为使标准帧和扩展帧都能在共享网络上发送,应将29位扩展报文标识符拆成高11 位和低18 位两部分。拆分后可确保lDE 位在标准数据帧和扩展数据帧中的位置保持一致。仲裁字段之后是6 位控制字段。控制字段前两位为保留位,必须定义为显性位。其余4 位为DLC,用来指定报文中包含的数据字节数。扩展数据帧的其他部分(数据字段、CRC 字段、确认字段、帧结尾和间断)与标准数据帧的结构相同(见“标准数据帧”)。 数据帧部分 CRC校验及帧结束部分 版权所有权归

车载CAN总线网络数据访问及研究意义

耗尽温柔 提交于 2020-03-10 23:46:44
汽车是我们生活中不可缺少的代步工具,搭载先进的ECU控制单元、高精传感器、高性能的执行器,并融合现代4G/5G通讯与定位网络技术的智能网联汽车已经走向了我们的生活之中。通过TBOX终端实现了车与车、车与互联网、车与智能交通、车与智慧小区、景区之间的信息传输,实现了车载网络的多融合生态。 我国汽车保有量还在持续不断的增长,中国也会快速进入到汽车社会与发达国家拉近千人保有量的距离,智能汽车更是得到飞速的发展,虽然整车销售略有下滑,但是汽车出行需求一直欠饱和,无法覆盖全面。2020年国内智能汽车硬件市场预计规模为2000亿,其中安全系统和自主驾驶相应空间为1128亿、415亿。2020年全球智能硬件市场规模可达7000亿,以安全系统和自主驾驶为代表的智能驾驶系统占半壁江山。 计算机电子通信技术极大提高了人们的驾乘体验,信息技术在汽车上的运用越来越广,汽车将越来越变得智能。所有与智能相关的,随之而来的安全问题也愈发突出。如果随着汽车外部访问的接口增多,有OBD,有CAN,有网关等。车载总线的开放程度也越来越高,博世、维克多、中汽中心、速锐得可以通过这些接口轻易访问车载CAN网络,对CAN网络的数据进行采集和适配,生成新的DBC文件用于测试及仿真。 目前针对车载CAN总线了解的多,实战的少,基于大数据的智能网联汽车更是少之又少,平台和企业对于信息的缺乏和监管,显得掣肘。以前的汽车

CAN总线网络“负载率”计算

喜你入骨 提交于 2020-02-14 06:11:01
CAN总线网络“负载率”计算 “CAN总线负载率”表征的是单位时间内总线上的“位流”相对于总线带宽的占比。换就话说,总线实际数据传输速率与理论上能达到的数据传输速率的比值。 以景区的负载率为例,每个景区都有一个容纳游客负荷上限人数(比如说10000人),如果此时景区内只有1000人,则此时景区负载率是10%。景区负载率是一个空间上的概念,它说明在空间上的资源被使用情况,而“CAN总线负载率”则描述是时间维度上资源被使用的情况:波特率为500Kbps的总线上每秒钟能够传输500000个BIT,如果在某一秒中总线上只传输了100000个BIT,则总线负载率为20%。CAN负载率默认为在一秒的时间范围内位资源的使用情况。 在讲解CAN总线负载率之前,先就几个概念进行说明: 1、 波特率 :波特率表示每秒钟传送的码元符号的个数,是衡量数据传送速率的指标,它用单位时间内载波调制状态改变的次数来表示(单位为波特)。如“1个波特”指每秒传输1个码元的符号。 2、 比特率 :单位时间内,通信通道传送的二进制位数。单位为比特/秒(bit/s或bps) 3、 码元 :在数字通信中常常用时间间隔相同的符号来表示数字。这样的时间间隔内的信号称为码元,这个间隔称为码元长度。 由于CAN通信中的信号是二进制的,所以对CAN来说波特率和比特率相等,只是业界习惯用bps表示CAN的波特率。

ZYNQ学习之路7.CAN总线学习

点点圈 提交于 2020-01-31 03:40:48
CAN总线是控制器局域网(Controller Area Network)的简称,是国际上应用最广泛的现场总线之一,CAN总线协议已成为汽车控制系统和嵌入式工业局域网的标准总线。CAN总线有很多优秀的特点,比如:传输速度最高达1Mbps,通信距离最远到10Km,无损位仲裁机制,多主结构,理论上挂载到总线上的设备没有数量限制。 因此掌握CAN总线协议是很重要的,本文简要介绍CAN总线协议,以Linux驱动CAN网络为重点介绍。 一. CAN总线的物理特性 1.1 CAN总线的网络结构 CAN总线有CAN_H和CAN_L两根线组成,线上传输差分信号,为了避免信号的反射和不连续,需要在总线的两个端点接120欧姆电阻,不可不接或单接,因为双绞线的特性阻抗为120欧姆,在终端模拟无限远的传输线。CAN网络一般采用"T"型连接,如下图1-1所示,在波特率为1Mbps的情况下,分支长度最好不要超过0.3m。 图1-1: CAN总线T型网络结构 当然也可采用星型拓扑结构,如图1-2所示: 图1-2: CAN总线星型网络结构 如果图中节点采用等长接线连接,可以不使用CAN集线器设备,调节每个节点的终端电阻即可实现组网。终端电阻R=N*60Ω,N是分支节点的个数。注意网络中心不能加任何电阻。 在实际的应用中,我们几乎无法做到等长,在T型网络中也很难做到支线较短的情况

CAN FD协议分析

≡放荡痞女 提交于 2020-01-19 03:57:20
在汽车领域,随着人们对数据传输带宽要求的增加,传统的CAN总线由于带宽的限制难以满足这种增加的需求。此外为了缩小CAN网络(max. 1MBit/s)与FlexRay(max.10MBit/s)网络的带宽差距,BOSCH公司推出了CAN FD 。 CAN FD(CAN with Flexible Data rate)继承了CAN总线的主要特性。CAN总线采用双线串行通讯协议,基于非破坏性仲裁技术,分布式实时控制,可靠的错误处理和检测机制使CAN总线有很高的安全性,但CAN总线带宽和数据场长度却受到制约。CAN FD总线弥补了CAN总线带宽和数据场长度的制约,CAN FD总线与CAN总线的区别主要在以下两个方面: ? 可变速率 CAN FD采用了两种位速率:从控制场中的BRS位到ACK场之前(含CRC分界符)为可变速率,其余部分为原CAN总线用的速率。两种速率各有一套位时间定义寄存器,它们除了采用不同的位时间单位TQ外,位时间各段的分配比例也可不同。 ? 新的数据场长度 CAN FD对数据场的长度作了很大的扩充,DLC最大支持64个字节,在DLC小于等于8时与原CAN总线是一样的,大于8时有一个非线性的增长,所以最大的数据场长度可达64字节。 CAN FD介绍 1.CAN FD 数据帧帧格式 CAN FD 数据帧在控制场新添加EDL位、BRS位、ESI位,采用了新的DLC编码方式

CAN FD协议简介

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-30 09:47:38
在汽车领域,随着人们对数据传输带宽要求的增加,传统的CAN总线由于带宽的限制难以满足这种增加的需求。此外为了缩小CAN网络(max. 1MBit/s)与FlexRay(max.10MBit/s)网络的带宽差距,BOSCH公司2011年推出了CAN FD方案 。 CAN FD(CAN with Flexible Data rate)继承了CAN总线的主要特性。CAN总线采用双线串行通讯协议,基于非破坏性仲裁技术,分布式实时控制,可靠的错误处理和检测机制使CAN总线有很高的安全性,但CAN总线带宽和数据场长度却受到制约。CAN FD总线弥补了CAN总线带宽和数据场长度的制约,CAN FD总线与CAN总线的区别主要在以下两个方面: 可变速率 CAN FD采用了两种位速率:从控制场中的BRS位到ACK场之前(含CRC分界符)为可变速率,其余部分为原CAN总线用的速率,即仲裁段和数据控制段使用标准的通信波特率,而数据传输段时就会切换到更高的通信波特率,数据传输速率可大于。两种速率各有一套位时间定义寄存器,它们除了采用不同的位时间单位TQ外,位时间各段的分配比例也可不同。 新的数据场长度 CAN FD对数据场的长度作了很大的扩充,DLC最大支持64个字节,在DLC小于等于8时与原CAN总线是一样的,大于8时有一个非线性的增长,所以最大的数据场长度可达64字节。 CAN FD 介绍 1. CAN

CAN总线(一)

邮差的信 提交于 2019-12-26 19:14:02
原文出处: http://www.cnblogs.com/jacklu/p/4729638.html 嵌入式的工程师一般都知道CAN总线广泛应用到汽车中,其实船舰电子设备通信也广泛使用CAN,随着国家对海防的越来越重视,对CAN的需求也会越来越大。这个暑假,通过参加苏州社会实践,去某船舶电气公司实习几周,也借此机会,学习了一下CAN总线。 概述 CAN(Controller Area Network)即控制器局域网,是一种能够实现 分布式实时控制的 串行 通信网络 。 想到CAN就要想到德国的Bosch公司,因为CAN就是这个公司开发的(和Intel) CAN有很多优秀的特点,使得它能够被广泛的应用。比如:传输速度最高到 1Mbps ,通信距离最远到 10km ,无损位仲裁机制, 多主结构 。 近些年来,CAN控制器价格越来越低,很多MCU也集成了CAN控制器。现在每一辆汽车上都装有CAN总线。 一个典型的CAN应用场景: CAN总线标准 CAN总线标准只规定了 物理层 和 数据链路层 ,需要 用户自定义应用层 。不同的CAN标准仅物理层不同。 CAN收发器负责逻辑电平和物理信号之间的转换。 将逻辑信号转换成物理信号(差分电平),或者将物理信号转换成逻辑电平。 CAN标准有两个,即 IOS11898 和 IOS11519 ,两者 差分电平特性不同 。 高低电平幅度低

CAN通信帧ID如何设定? (转载)

假如想象 提交于 2019-12-05 18:57:41
https://www.cnblogs.com/isAndyWu/p/10298695.html这个文章解答了我的一个id使用的疑惑,因此谢谢作者,转载。 CAN总线ID是包含在报文帧中的。 1、主要用作CAN总线的仲裁使用,所以一般来说网络上的每个节点(向总线上发送)的ID应该有所不同。ID值越低,报文优先级越高,在两组不同ID报文同时上线时候,仲裁机制使得ID值低的占用总线,ID值高的退出。 2、ID域可以是11位和29位,其值和含义可以由用户自定义,可以用作高层协议的管理,比如CANopen等协议中把ID的部分做为“源地址”,部分作为“目的地址”,这样CAN报文从哪来到哪去都清晰了。 3、ID的另一个作用是配合接收方滤波使用,就是说一般接收的滤波器可以设定接收ID的范围等,用于过滤掉不需要接收的信息,减轻CPU的处理负担。 ID是赋给帧的,不是直接给节点的,只是某节点知道自己要接收某个ID的帧。总线上的节点来说它只管取总线上他应该取的ID的帧,并不管是谁发的。 即使是远程帧,发出请求的节点在获得相应时也仅仅是根据帧ID判定,并不影响其他节点的接收。 我们要从总线的角度去看待CAN,不要从节点的角度出发 1、主要用作CAN总线的仲裁使用,所以一般来说网络上的每个节点(向总线上发送)的ID应该有所不同。ID值越低,报文优先级越高,在两组不同ID报文同时上线时候

can总线学习网上资料汇总

北战南征 提交于 2019-12-05 10:55:22
https://zhuanlan.zhihu.com/p/30247549?utm_source=wechat_session&utm_medium=social&utm_oi=28054357278720(如何学习CAN总线?) 致远电子 知乎文章https://www.zhihu.com/people/gong-ye-hu-lian-wang/posts 最近用到了msp2515和CTM8251KT进行can总线的数据收发,前者是can控制器,负责can数据解析滤波等功能,后者是an收发器,负责电平转换,网上有泥人can模块及学习资料,stm32也有例程(是韩国的,github上面挺多的)。 can总线比rs485总线更加强大,数据帧的格式也比rs485多,485仅仅是电平协议,而can协议不仅有电平协议,还有上册的应用协议,因此更加复杂,学习成本更加高。 can总线和modbus总线一样,都需要好好学习的,好好深入的,通信知识在工业领域是不可或缺的。 来源: https://www.cnblogs.com/CodeWorkerLiMing/p/11921489.html

can总线的远程帧(遥控帧)—说的很形象

可紊 提交于 2019-12-05 09:39:35
所谓“远程帧”是一个传统翻译上的误区。Remote Frame实际上它的意义是“遥控帧”,发起方发起特定ID的远程帧,并且只发送ID部分,那么与其ID相符的终端设备就有义务在后半段的数据部分接管总线控制权并发送自己的数据。 打个比方,中控机需要定时获取某个节点的数据(例如转速计的实时转速、油量计的实时油量等),可以向总线发送远程帧;相应节点在接收判断帧ID与自己相符、并且是远程帧的情况下,就可以将自己的实时数据发送到总线上;这样中控机就获取到了相关节点的实时数据。 远程帧最大的好处就是只需要一帧的时间就能完成一次双向交互。 转载自:https://www.cnblogs.com/yzl050819/p/8991184.html 来源: https://www.cnblogs.com/CodeWorkerLiMing/p/11919492.html