面对初学者的CAN总线入门教程(二)_CAN协议基本概念及其规格标准
目录
- 1. CAN协议的基本概念
- 2. CAN 协议及标准规格
- 2.1 ISO 标准化的 CAN 协议
- 2.2 ISO11898 和 ISO11519-2 的不同点
- 2.2.1 物理层的不同
- 2.2.2 驱动IC的不同
- 2.3 CAN 和标准规格
1. CAN协议的基本概念
CAN 协议如下表“ISO/OSI基本参照模型”所示,涵盖了 ISO 规定的 OSI基本参照模型中的传输层、数据链路层及物理层。
CAN 协议中关于 ISO/OSI 基本参照模型中的传输层、数据链路层及物理层,具体的定义如下图所示。
数据链路层分为 MAC 子层和 LLC 子层, MAC 子层是 CAN 协议的核心部分。数据链路层的功能是将物理层收到的信号组织成有意义的消息,并提供传送错误控制等传输控制的流程。具体地说,就是消息的帧化、仲裁、应答、错误的检测或报告。数据链路层的功能通常在 CAN 控制器的硬件中执行。
在物理层定义了信号实际的发送方式、位时序、位的编码方式及同步的步骤。但具体地说,信号电平、通信速度、采样点、驱动器和总线的电气特性、连接器的形态等均未定义。这些必须由用户根据系统需求自行确定。
2. CAN 协议及标准规格
2.1 ISO 标准化的 CAN 协议
CAN 协议经 ISO 标准化后有 ISO11898 标准和 ISO11519-2 标准两种。 ISO11898 和 ISO11519-2 标准对于数据链路层的定义相同,但物理层不同。
- 关于 ISO11898
ISO11898 是通信速度为 125kbps-1Mbps 的 CAN 高速通信标准。
目前, ISO11898 追加新规约后,成为 ISO11898-1 新标准。 - 关于 ISO11519
ISO11519 是通信速度为 125kbps 以下的 CAN 低速通信标准。
ISO11519-2 是 ISO11519-1 追加新规约后的版本。
下图表示 CAN 协议和 ISO11898 及 ISO11519-2 标准的范围。
2.2 ISO11898 和 ISO11519-2 的不同点
2.2.1 物理层的不同
如下图所示, ISO11898 和 ISO11519-2 在 CAN 协议中物理层的标准有所不同。
CAN 协议的物理层如下图所示,定义了三个子层, ISO11898 和 ISO11519-2 在物理层中的 PMA 层和 MDI 层有所不同。
在物理层(PMA 层、 MDI 层), ISO11898 和 ISO11519-2 的主要不同点如下表所示。
2.2.2 驱动IC的不同
ISO11898 与 ISO11519-2 的物理层的规格不同,每种规格需要有专门的驱动 IC 与之相对应。 ISO11898 及ISO11519-2 所对应的主要的驱动 IC 如下表所示。
2.3 CAN 和标准规格
不仅是 ISO, SAE等其它的组织、团体、企业也对 CAN 协议进行了标准化。
基于 CAN 的各种标准规格如下表所示。
如下图所示,面向汽车的通信协议以通信速度为准进行了分类。
面对初学者的CAN总线入门教程(二)_CAN协议基本概念及其规格标准相关推荐
- 面对初学者的CAN总线入门教程(三)_CAN通信中帧、优先级、位填充、错误、位时序以及同步的介绍
目录 1. 数据链路层中的帧 1.1 数据帧 1.1.1 帧起始(标准.扩展格式相同) 1.1.2 仲裁段 1.1.3 控制段 1.1.4 数据段(标准.扩展格式相同) 1.1.5 CRC 段(标准/ ...
- 【Cocos2d入门教程二】Cocos2d-x基础概念
上一章已经学习了环境的搭建.这一章对基础概念进行掌握.内容大概有: 1.导演 2.场景 3.节点 4.层 4.精灵 1.导演(Director) 导演存在的主要作用: 环境设定(帧率 初始化openG ...
- 微信小程序云开发 初学者入门教程二
微信小程序云开发 初学者入门教程二-前端操作数据库模块 如何操作数据库,作为一名前端,如果对数据的知识不够熟悉也没关系,从现在开始好好学习就行,数据库的操作内容差不多涉及增删改查四大模块,花一些业余的 ...
- python elasticsearch 入门教程(二) ---全文搜索
python elasticsearch 入门教程(二) ---全文搜索 截止目前的搜索相对都很简单:单个姓名,通过年龄过滤.现在尝试下稍微高级点儿的全文搜索--一项 传统数据库确实很难搞定的任务. ...
- R语言七天入门教程二:认识变量与运算符
R语言七天入门教程二:认识变量与运算符 一.什么是变量 1.变量 顾名思义,我们可以将变量理解为"可以改变的量",是计算机语言中能储存计算结果或能表示值的抽象概念.这里的值可以是数 ...
- (转)tensorflow入门教程(二十六)人脸识别(上)
https://blog.csdn.net/rookie_wei/article/details/81676177 1.概述 查看全文 http://www.taodudu.cc/news/show- ...
- Android WebRTC 入门教程(二) -- 模拟p2p本地视频传输
Android WebRTC 入门教程(一) – 使用相机 Android WebRTC 入门教程(二) – 模拟p2p本地视频传输 源码工程: https://github.com/LillteZh ...
- LittleVGL (LVGL)干货入门教程二之LVGL的输入设备(indev)API对接。
LittleVGL (LVGL)干货入门教程二之LVGL的输入设备(indev)API对接 前言: 阅读前,请确保你拥有以下条件: 你已经完成"显示API"的移植. 你已经实现了一 ...
- c语言类似于 n的标识符,C语言快速入门教程(二)
C语言快速入门教程(二) C语言的基本语法 本节学习路线图: 引言: C语言,顾名思义就是一门语言,可以类比一下英语; 你要说出一个英语的句子需要: 单词 + 语法! 将单词按照一定的语法拼凑起来就成 ...
- python爬虫入门教程(二):开始一个简单的爬虫
2019/10/28更新 使用Python3,而不再是Python2 转载请注明出处:https://blog.csdn.net/aaronjny/article/details/77945329 爬 ...
最新文章
- 【剑指offer-Java版】11数值的整数次方
- 基片集成波导原理_ETH研究人员开发微型红外光谱仪 可以集成到芯片当中
- 源代码解读Cas实现单点登出(single sign out)功能实现原理--转
- 《JavaScript面向对象的编程指南》--读书笔记
- 使用Java WebSockets,JSR 356和JSON映射到POJO的
- 2021-2025年中国一氧化碳烟雾报警器行业市场供需与战略研究报告
- 这波疫情,中国会弯道超车么?
- ffmpeg_struct: AVRational
- linux下包管理器
- 树莓派 —— 树莓派安装字体
- 输出流创建txt文件
- Android开发购买宠物装备
- 李白的诗-按时间顺序的创作
- 学前端是去培训班还是自学好?
- Canvas绘制五子棋棋盘
- 5G网络测速,实在是太快了!
- BZOJ1778: [Usaco2010 Hol]Dotp 驱逐猪猡
- 知道你的成绩单是怎么打印的吗?超长Excel表格1页打印,拯救A4纸
- PythonThinking_FOR、IF以及while
- 编写一个程序,检测标准IO的缓冲区的大小