当前位置: 首页 > news >正文

CAN协议,系统结构和帧结构

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

CAN:Controller Area Network,控制器局域网

是一种能有效支持分布式控制和实时控制的串行通讯网络。

CAN-bus: Controller Area Network-bus,控制器局域网总线技术

 

CAN总线系统结构

  1. CAN 控制器

接收控制单元中微处理器发出的数据,处理数据并传给CAN收发器

  1. CAN收发器

将数据传到总线 or 从总线接收数据给控制器

  1. CAN数据传递终端

避免数据传输终了反射回来

  1. CAN数据总线

    传输数据的数据线,两根 CAN-high and CAN-low,差分信号

CAN总线系统的数据传输

 

CAN总线节点上的节点发送数据是以报文的形式广播给网络中所有节点。收发器接收到数据就把数据传送给控制器,再由控制器检查判断是不是所需数据。不是则忽略。

  • 网络上任何一个节点在任何时候都可以发送数据
  • 多个节点发送数据,优先级低主动退出发送
  • 短帧结构,每帧数据信息为0~8字节(具体用户定义),对数据编码而不是地址编码
  • CAN每帧都有CRC校验和其他检验措施,严重错误的情况下具有自动关闭输出的功能

 

CAN总线系统数据格式

CAN-bus通信帧共分为数据帧、远程帧、错误帧、过载帧和帧间隔

五种类型。

  • 数据帧

    结构上由7个段组成,其中根据仲裁段ID码长度的不同,分为标准帧(CAN2.0A)和扩展帧(CAN2.0B)。

帧起始、帧结束

仲裁段

显性隐性

总线仲裁

 

  • 从该分析过程得出结论是:帧ID值越小,优先级越高
  • 对于同为扩展格式数据帧、标准格式远程帧和扩展格式远程帧的情况同理。

    控制段

    数据段

    CRC段

    ACK段

     

    远程帧

    数据帧与远程帧的区别

     

    CAN-bus 错误类型

     

    过载帧

     

    帧间隔

     

转载于:https://my.oschina.net/yuyang/blog/1525639

相关文章:

  • New Concept English Two 11 28
  • centos 配置sudo记录日志
  • Android图文混排实现方式详解
  • crossdomain.xml解决跨域问题
  • git克隆远程项目并创建本地对应分支
  • compile FFMPEG under windows
  • gulp 和 Browsersync 的联合使用
  • 大数据计算框架与平台
  • 甲骨文推Oracle Exadata Cloud Machine 专有云产品线进一步完善
  • 全面解析光纤光缆、网线和电缆的区别
  • Java保留两位小数的方法
  • 想精准营销?神策分析无缝集成推送平台
  • 苹果花2亿美元买了家“暗数据”人工智能初创公司
  • MOSS中的计时器作业
  • ES5.4.0安装head插件
  • Android系统模拟器绘制实现概述
  • Brief introduction of how to 'Call, Apply and Bind'
  • iOS 系统授权开发
  • JavaScript类型识别
  • JavaScript中的对象个人分享
  • Markdown 语法简单说明
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • sessionStorage和localStorage
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • 安装python包到指定虚拟环境
  • 从伪并行的 Python 多线程说起
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 浮现式设计
  • 干货 | 以太坊Mist负责人教你建立无服务器应用
  • 解析 Webpack中import、require、按需加载的执行过程
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • #NOIP 2014# day.2 T2 寻找道路
  • (7)STL算法之交换赋值
  • (C语言)共用体union的用法举例
  • (ZT)一个美国文科博士的YardLife
  • (二)hibernate配置管理
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (十一)图像的罗伯特梯度锐化
  • (一)VirtualBox安装增强功能
  • (译)2019年前端性能优化清单 — 下篇
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • ***linux下安装xampp,XAMPP目录结构(阿里云安装xampp)
  • .bat批处理(九):替换带有等号=的字符串的子串
  • .net core使用RPC方式进行高效的HTTP服务访问
  • .net 打包工具_pyinstaller打包的exe太大?你需要站在巨人的肩膀上-VC++才是王道
  • .NET/C# 避免调试器不小心提前计算本应延迟计算的值
  • .NET导入Excel数据
  • .NET开源项目介绍及资源推荐:数据持久层
  • .NET开源项目介绍及资源推荐:数据持久层 (微软MVP写作)
  • .sdf和.msp文件读取
  • ;号自动换行
  • @html.ActionLink的几种参数格式
  • @JoinTable会自动删除关联表的数据
  • @Transactional 竟也能解决分布式事务?