目录

  • 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 标准对于数据链路层的定义相同,但物理层不同。

  1. 关于 ISO11898
    ISO11898 是通信速度为 125kbps-1Mbps 的 CAN 高速通信标准。
    目前, ISO11898 追加新规约后,成为 ISO11898-1 新标准。
  2. 关于 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协议基本概念及其规格标准相关推荐

  1. 面对初学者的CAN总线入门教程(三)_CAN通信中帧、优先级、位填充、错误、位时序以及同步的介绍

    目录 1. 数据链路层中的帧 1.1 数据帧 1.1.1 帧起始(标准.扩展格式相同) 1.1.2 仲裁段 1.1.3 控制段 1.1.4 数据段(标准.扩展格式相同) 1.1.5 CRC 段(标准/ ...

  2. 【Cocos2d入门教程二】Cocos2d-x基础概念

    上一章已经学习了环境的搭建.这一章对基础概念进行掌握.内容大概有: 1.导演 2.场景 3.节点 4.层 4.精灵 1.导演(Director) 导演存在的主要作用: 环境设定(帧率 初始化openG ...

  3. 微信小程序云开发 初学者入门教程二

    微信小程序云开发 初学者入门教程二-前端操作数据库模块 如何操作数据库,作为一名前端,如果对数据的知识不够熟悉也没关系,从现在开始好好学习就行,数据库的操作内容差不多涉及增删改查四大模块,花一些业余的 ...

  4. python elasticsearch 入门教程(二) ---全文搜索

    python elasticsearch 入门教程(二) ---全文搜索 截止目前的搜索相对都很简单:单个姓名,通过年龄过滤.现在尝试下稍微高级点儿的全文搜索--一项 传统数据库确实很难搞定的任务. ...

  5. R语言七天入门教程二:认识变量与运算符

    R语言七天入门教程二:认识变量与运算符 一.什么是变量 1.变量 顾名思义,我们可以将变量理解为"可以改变的量",是计算机语言中能储存计算结果或能表示值的抽象概念.这里的值可以是数 ...

  6. (转)tensorflow入门教程(二十六)人脸识别(上)

    https://blog.csdn.net/rookie_wei/article/details/81676177 1.概述 查看全文 http://www.taodudu.cc/news/show- ...

  7. Android WebRTC 入门教程(二) -- 模拟p2p本地视频传输

    Android WebRTC 入门教程(一) – 使用相机 Android WebRTC 入门教程(二) – 模拟p2p本地视频传输 源码工程: https://github.com/LillteZh ...

  8. LittleVGL (LVGL)干货入门教程二之LVGL的输入设备(indev)API对接。

    LittleVGL (LVGL)干货入门教程二之LVGL的输入设备(indev)API对接 前言: 阅读前,请确保你拥有以下条件: 你已经完成"显示API"的移植. 你已经实现了一 ...

  9. c语言类似于 n的标识符,C语言快速入门教程(二)

    C语言快速入门教程(二) C语言的基本语法 本节学习路线图: 引言: C语言,顾名思义就是一门语言,可以类比一下英语; 你要说出一个英语的句子需要: 单词 + 语法! 将单词按照一定的语法拼凑起来就成 ...

  10. python爬虫入门教程(二):开始一个简单的爬虫

    2019/10/28更新 使用Python3,而不再是Python2 转载请注明出处:https://blog.csdn.net/aaronjny/article/details/77945329 爬 ...

最新文章

  1. 【剑指offer-Java版】11数值的整数次方
  2. 基片集成波导原理_ETH研究人员开发微型红外光谱仪 可以集成到芯片当中
  3. 源代码解读Cas实现单点登出(single sign out)功能实现原理--转
  4. 《JavaScript面向对象的编程指南》--读书笔记
  5. 使用Java WebSockets,JSR 356和JSON映射到POJO的
  6. 2021-2025年中国一氧化碳烟雾报警器行业市场供需与战略研究报告
  7. 这波疫情,中国会弯道超车么?
  8. ffmpeg_struct: AVRational
  9. linux下包管理器
  10. 树莓派 —— 树莓派安装字体
  11. 输出流创建txt文件
  12. Android开发购买宠物装备
  13. 李白的诗-按时间顺序的创作
  14. 学前端是去培训班还是自学好?
  15. Canvas绘制五子棋棋盘
  16. 5G网络测速,实在是太快了!
  17. BZOJ1778: [Usaco2010 Hol]Dotp 驱逐猪猡
  18. 知道你的成绩单是怎么打印的吗?超长Excel表格1页打印,拯救A4纸
  19. PythonThinking_FOR、IF以及while
  20. 编写一个程序,检测标准IO的缓冲区的大小

热门文章

  1. 基于同义词词林的词语间相似度计算
  2. 机器视觉之表面缺陷检测
  3. T400 系统安装过程
  4. 多媒体计算机网络机房方案,学校多媒体教室及计算机机房方案1.doc
  5. 配置javaw.exe双击运行jar包
  6. python矩阵乘法分治算法_详解矩阵乘法中的Strassen算法
  7. Html查看dcm,DICOM图像浏览器(.dcm图像查看器)
  8. 蓝牙耳机连接macbook无声音
  9. 三级流域空间分布图_水资源空间分布模型及GIS分析应用.pdf
  10. 商业分析的50个网站和分析方法