can协议
❶ 请问一般我们常用的can协议有哪些
感谢题主的邀请,我来说说这个问题:
CAN总线也叫控制器局域网,是德国博世内公司开发出来为汽车容电子产品升级而服务的。CAN总线的运行要遵循专门的CAN协议,就如同我们在说话的时候要循序特定的语法一样,如果违背了相关协议,CAN总线是无法进行数据的传输的。一般我们常用的CAN总线协议有三种,分别是CANopen,device net和J 1939,它们的侧重点是不同的,具体的大家可以去网络分别查询,希望我的回答令您满意。
❷ CAN通信协议
控制器局域网(CAN)为串行通讯协议,能有效地支持具有很高安全等级的分布实时控制。CAN的应用范围很广,从高速的网络到低价位的多路接线都可以使用CAN。在汽车电子行业里,使用CAN连接发动机控制单元、传感器、防刹车系统、等等,其传输速度可达1 Mbit/s。同时,可以将CAN安装在卡车本体的电子控制系统里,诸如车灯组、电气车窗等等,用以代替接线配线装置。
为了达到设计透明度以及实现柔韧性,CAN被细分为以下不同的层次:
• CAN对象层(the object layer)
• CAN传输层(the transfer layer)
• 物理层(the phyical layer)
对象层和传输层包括所有由ISO/OSI模型定义的数据链路层的服务和功能。
对象层的作用范围包括:
查找被发送的报文。
确定由实际要使用的传输层接收哪一个报文。
为应用层相关硬件提供接口。
在这里,定义对象处理较为灵活。传输层的作用主要是传送规则,也就是控制帧结构、执行仲裁、错误检测、出错标定、故障界定。总线上什么时候开始发送新报文及什么时候开始接收报文,均在传输层里确定。位定时的一些普通功能也可以看作是传输层的一部分。理所当然,传输层的修改是受到限制的。 物理层的作用是在不同节点之间根据所有的电气属性进行位信息的实际传输。当然,同一网络内,物理层对于所有的节点必须是相同的。尽管如此,在选择物理层方面还是很自由的。
CAN具有以下的属性:
• 报文的优先权
• 保证延迟时间
• 设置灵活
• 时间同步的多点接收
• 系统宽数据的连贯性
• 多主机
• 错误检测和标定
• 只要总线一处于空闲,就自动将破坏的报文重新传输
• 将节点的暂时性错误和永久性错误区分开来,并且可以自动关闭错误的节点
❸ 51单片机运用can总线的通信协议 急!!!!!!!!!!
首先canbus是问答式的通讯方式报文最大长度11char
1仲裁场(共12位)
bit10 bit9 bit8 bit7 bit6
功能编码
bit5 bit4 bit3
目的地址
bit2 bit1 bit0
源插地址
RTR
远程帧
2.控制场
IDE r0 DL3 DL2 DL1 DL0
0 0 数据长度
3.数据场
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
数据帧数据(最长8组)
应答时仲裁场目的地址源地址交换,就是目的地址就是你回答的询问报文中的原地址,当然原地址就是你地址 485总线的通讯距离也在300m以上!485的通讯协议比较灵活!可以自己定值问答式协议!可参考通讯中常用的同步头+数据长度+效验的格式自己设计,
例如:采用0xeb 0x90 同步头
可以给你一份我做过的协议!自己分析一下!不明白给我发邮件[email protected]
❹ can总线通讯协议
首先canbus是问答式的通讯方式报文最大长度11char
1仲裁场(共12位)
bit10 bit9 bit8 bit7 bit6
功能编码
bit5 bit4 bit3
目的地址
bit2 bit1 bit0
源插地址
RTR
远程帧
2.控制场
IDE r0 DL3 DL2 DL1 DL0
0 0 数据长度
3.数据场
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
数据帧数据(最长8组)
❺ CAN总线的通讯协议是什么
首先canbus是问答式的通讯方式报文最大长度11char
1仲裁场(共12位)
bit10 bit9 bit8 bit7 bit6
功能编码
bit5 bit4 bit3
目的地址版
bit2 bit1 bit0
源插地址
RTR
远程帧
2.控制场
IDE r0 DL3 DL2 DL1 DL0
0 0 数据长度权
3.数据场
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
数据帧数据(最长8组)
❻ 下面的CAN通信协议中各部分是什么意思
这应该是自定义的一个通信协议吧,从字面理解:
PRI:保留位,占3位;
SegFlag:分段传输的标志,占1位;
GROUP ID:帧所在组的ID,占4位;
DMAC:上面写着本机地址,我认为可能是目的地址Destination
SMAC:上面写着设备地址,我认为可能是源地址Source
CID:命令代码(Command ID)或者用户代码(Customer ID);
ACK:响应,占1位;
只是猜测,仅供参考。
❼ 所有 汽车can总线 和LiN总线 都是一种标准吗
车can总线和LiN总线不是一种标准。
汽车can总线和LiN总线的区别:
(1)LIN(LocalInterconnectNetwork)是一种低成本的串行通讯网络,专用于实现属汽车中的分布式电子控制系统。LIN的目标是为现有汽车网络(例如CAN总线)提供辅助功能,因此LIN总线是一种辅助的总线网络。在不需要CAN总线的带宽和多功能的场合,比如智能传感器和制动装置之间的通讯使LIN总线可大大节省成本。
(2)CAN是ControllerAreaNetwork的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。
(7)can协议扩展阅读:
1、can总线:已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。
2、LiN总线:采用终端匹配的总线型结构。即采用一条总线将各个节点串接起来,不支持环形或星型网络。
❽ 破解汽车CAN协议有没有什么好方法
其实这个问题很简单,可以用致远电子的USBCAN-2E-U
1、打开CANtest通用测试软件,选择USBCAN-2E-U接口卡,并且选定总线的波特率,点击确定并启动,启动CAN接口卡。如图 2所示;
小技巧:运用分类显示功能时,软件会将有变化的数据标红,这样对于破解未知协议时,可以帮助用户快速完成变量识别工作。比如,要想知道方向盘所对应CANID和数据段,即可使用此方法运行,转动方向盘,观察变红的变量,即对应。
❾ can总线协议当中的错误(错误主动)帧和过载帧怎么区别
有相关详细讲解。错误主动就是自己检测到错误了,发到总线上告知总线错误,一般是总线硬件原因产生的。而过载帧一般是由于没及时的收取数据产生的,是软件问题。