CAN笔记(4) 协议基本概念
CAN笔记(4) 协议基本概念
- 1. 基本参照模型
- 2. 基本参照模型的定义
1. 基本参照模型
CAN 协议涵盖了 ISO 规定的 OSI 1 基本参照模型中的传输层、数据链路层及物理层
层数 | ISO/OSI 基本参照模型 | 各层定义的主要项目 |
---|---|---|
7 层 | 应用层 | 由实际应用程序提供可利用的服务 |
6 层 | 表示层 | 进行数据表现形式的转换,如:文字设定、数据压缩、加密等的控制 |
5 层 | 会话层 | 为建立会话式的通信,控制数据正确地接收和发送 |
4 层 | 传输层 | 控制数据传输的顺序、传送错误的恢复等,保证通信的品质,如:错误修正、再传输控制 |
3 层 | 网络层 | 进行数据传送的路由选择或中继,如:单元间的数据交换、地址管理 |
2 层 | 数据链路层 | 将物理层收到的信号(位序列)组成有意义的数据,提供传输错误控制等数据传输控制流程,如:访问的方法、数据的形式、通信方式、连接控制方式、同步方式、检错方式、应答方式、包(帧)的构成位的调制方式(包括位时序条件) |
1 层 | 物理层 | 规定了通信时使用的电缆、连接器等的媒体、电气信号规格等,以实现设备间的信号传送,如:信号电平、收发器、电缆、连接器等的形态 |
1 和 2 层为硬件控制,其余为软件控制
2. 基本参照模型的定义
CAN 协议中关于 ISO/OSI 基本参照模型中的传输层、数据链路层及物理层,具体有哪些定义如图
层数 | 定义事项 | 功能 |
---|---|---|
4层(传输层) | 再发送控制 | 永久再尝试 |
2层(逻辑链路控制LLC) | 接收消息的选择(可接收消息的过滤) | 可点到点连接、广播、组播 |
过载通知 | 通知接收准备尚未完成 | |
错误恢复功能 | 再次发送 | |
2层(媒介访问控制MAC) | 消息的帧化 | 有数据帧、遥控帧、错误帧、过载帧4种帧类型 |
连接控制方式 | 竞争方式(支持多点传送) | |
数据冲突时的仲裁 | 根据仲裁, 优先级高的ID可继续被发送 | |
故障扩散抑制功能 | 自动判别暂时错误和持续错误,排除故障节点 | |
错误通知 | CRC错误、 填充位错误、 位错误、 ACK错误、 格式错误 | |
错误检测 | 所有单元都可随时检测错误 | |
应答方式 | ACK、 NACK两种 | |
通信方式 | 半双工通信 | |
1层(物理信令子层PLS) | 位编码方式 | 不归零码NRZ方式编码, 6个位的插入填充位 |
1层(物理介质连接PMD) | 位时序 | 位时序、位的采样数(用户选择) |
1层(介质相关接收MDI) | 同步方式 | 根据同步段(SS)实现同步( 并具有再同步功能) |
数据链路层分为
- 逻辑链路控制 MAC(Logical Link Control)子层
- 媒介访问控制 LLC (Medium Access Control)子层
MAC 子层是 CAN 协议的核心部分
数据链路层的功能是将物理层收到的信号组织成有意义的消息,并提供传送错误控制等传输控制的流程
具体地说,就是消息的帧化、仲裁、应答、错误的检测或报告
数据链路层的功能通常在 CAN 控制器的硬件中执行
在物理层定义了信号实际的发送方式、位时序、位的编码方式及同步的步骤
但具体地说,信号电平、通信速度、采样点、驱动器和总线的电气特性、连接器的形态等均未定义2
这些必须由用户根据系统需求自行确定
参考:
《CAN入门书》
相关推荐:
CAN笔记(3) 错误状态
CAN笔记(2) CAN特点
CAN笔记(1) CAN简介
谢谢!
OSI: Open Systems Interconnection (开放式系统间互联) ↩︎
驱动器及总线的电气特性等在博世公司的 CAN 规格书中没有定义
但在 CAN 的 ISO 标准( ISO11898、 ISO11519-2 等)中分别定义了总线及驱动器的电气特性等 ↩︎
CAN笔记(4) 协议基本概念相关推荐
- Wireshark文档阅读笔记-WebSocket协议基本概念
WebSocket WebSocket是基于TCP的全双工协议.WebSocket是2011年IETF RFC6455中定义的标准,他的API是W3C定义的. WebSocket不仅适用于浏览器.服务 ...
- 【转】医疗业务学习笔记--DICOM协议的基础内容!!!!!!!!!!
转自:医疗业务学习笔记--DICOM协议的基础内容 - 知乎 本文首发于"雨夜随笔"公众号,欢迎关注. DICOM协议是医疗领域对如何处理.存储.打印和传输医疗图片的一系列标准.D ...
- tensorflow笔记:流程,概念和简单代码注释
tensorflow是google在2015年开源的深度学习框架,可以很方便的检验算法效果.这两天看了看官方的tutorial,极客学院的文档,以及综合tensorflow的源码,把自己的心得整理了一 ...
- 创建web服务器||HTTP协议的概念||报文||HTTP请求与响应处理——未完待续
HTTP协议的概念 超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)规定了如何从网站服务器传输超文本到本地浏览器, 它基于客户端服务器架构工作,是客户端( ...
- MySQL学习笔记01【数据库概念、MySQL安装与使用】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- 计算机网络的体系结构与协议基本概念,计算机网络技术基础-第3章网络体系结构与协议.ppt...
<计算机网络技术基础-第3章网络体系结构与协议.ppt>由会员分享,可在线阅读,更多相关<计算机网络技术基础-第3章网络体系结构与协议.ppt(19页珍藏版)>请在装配图网上搜 ...
- 网络基础一(协议的概念,网络应用程序设计模式)
协议的概念 什么是协议? 从应用的角度出发,协议可理解为"规则",是数据传输和数据的解释的规则. 假设,A.B双方欲传输文件.规定: 第一次,传输文件名,接收方接收到文件名,应答O ...
- vue学习笔记-03-浅谈组件-概念,入门,如何用props给组件传值?
vue学习笔记-03-浅谈组件-概念,入门,如何用props给组件传值? 文章目录 vue学习笔记-03-浅谈组件-概念,入门,如何用props给组件传值? 什么是组件? 为什么要使用组件? 如何使用 ...
- java 协议这个概念_java网络协议概念是什么?
网络协议 对于需要从事网络编程的程序员来说,网络协议是一个需要深刻理解的概念.那么什么是网络协议呢? 网络协议是指对于网络中传输的数据格式的规定.对于网络编程初学者来说,没有必要深入了解TCP/IP协 ...
- 轻松认识HTTP协议的概念和工作原理
轻松认识HTTP协议的概念和工作原理 当我们想浏览一个网站的时候,只要在浏览器的地址栏里输入网站的地址就可以了,例如:www.microsoft.com,但是在浏览器的地址栏里面出现的却是:http: ...
最新文章
- JHipster开发环境安装
- 用 Python 制作酷炫的可视化大屏,特简单!
- 数据库的查询,添加,修改,删除
- Java除法不精确引入BigDecimal
- python【数据结构与算法】从一个例子引入动态规划❤️
- Java的synchronized关键字:同步机制总结
- 游戏行业的人工智能设计:AI的设计和实施
- 解决 【xshell 5 不能使用退格键和Delete建】的问题
- 冒泡法排序c语言函数模板,使用模板技术的冒泡排序
- js计算浮点数出现小数;解决js计算小数问题;js数组相加出现小数;
- 第九章 隐马尔科夫模型HMM
- Mysql 中Sql控制流语句_DCL语句/控制流语句
- 十八般武艺玩转GaussDB(DWS)性能调优(二):坏味道SQL识别
- 201671010128 2017-10-08《Java程序设计》之接口与内部类
- linux vi 替换字符串,Linux vi编辑器如何查找与替换关键字
- oracle exadata效果,exadata成功案例与性能测试-oracle.pdf
- vue 倒计时 插件_vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
- layui富文本编辑器,使用第三方插件Kz.layedit上传文件时自定义文件域字段名和请求参数
- HTB靶机01-Blue-WriteUp
- 四、两个三层交换机互联