CAN总线学习记录之一:CAN简介
CAN 是 Controller Area Net 的缩写,即控制器局部网,是一种有效支持分布控制或实时控制的串行通信网络。CAN 是德国 Bosch 公司为汽车的监测、控制系统而设计的,如控制发动机点火、注油及复杂的加速、刹车、抗锁定刹车系统等,已用于各种汽车上。由于 CAN 具有卓越的特性及的可靠性,因而非常适合工业过程监控设备互连。在自动化电子领域的汽车发动机控制部件、传感器、抗滑系统等应用中,CAN 的速率可达到 1Mbps 。CAN 的信号传输介质为双绞线,具有现场总线的特点;目前,在国内的电力、石化、航天、冶金、空调等不同行业均有应用。用 CAN 做工程最大的特点就是启动成本低。
CAN 总线的特点如下:
1. CAN 总线接口芯片支持8位、16位等 CPU,许多嵌入式微处理器都集成了 CAN 通信控制器;
2. CAN 总线具有国际标准,即 ISO-11898;
3. CAN 可以多主方式工作,网络上任意一个节均可以在任意时刻、主动地向网络上其它节点发送信息而不分主从,通信方式灵活。利用这一特点,也可方便地构成(容错)多机备份系统;
4. CAN 网络上的节点可分成不同的优先级,满足不同的实时要求;
5. CAN 采用非破坏性总线仲裁技术。当两个节点同时向网络上传送信息时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响地继续传输数据,有效避免了总线冲突;
6. CAN 可以点对点、一点对多点及全局广播的方式传送和接收数据;
7. CAN 直接通信距离最远可达 10km/5kbps,通信速率最高可达 1Mbps/40m。CAN-BUS 上节点数理论为2000个,实际可达110个;
8. CAN 采用短帧结构,每一帧的有效字节为8个。这样短的传输时间,受干扰的概率低,重新发送时间短;
9. CAN 节点在错误严重的情况下,具有自动关闭总线的功能,即切断它与总线的联系,以使总线上的其它操作不爱影响;
10. CAN 每帧信息都有 CRC 校验及其它检错措施,保证了数据的出错率极低。
11. 通信介质采用廉价的双绞线,无特殊要求。
以上信息源自 --- 《CAN 总线技术》
CAN总线学习记录之一:CAN简介的更多相关文章
- CAN总线学习记录之三:总线中主动错误和被动错误的通俗解释
首先建议把广泛使用的"主动错误"和"被动错误"概念换成"主动报错"和"被动报错". 1. 主动报错站点 只要检查到错误, ...
- CAN总线学习记录之四:位定时与同步
一.位定时 1.1 比特率和波特率 1)位速率:又叫做比特率(bit rata).信息传输率,表示的是单位时间内,总线上传输的信息量,即每秒能够传输的二进制位的数量,单位是bit per second ...
- CAN总线学习记录之二:系统结构与帧结构
CAN总线系统结构 CAN 控制器 接收控制单元中微处理器发出的数据,处理数据并传给 CAN 收发器 CAN 收发器 将数据传到总线 or 从总线接收数据给 CAN 控制器 CAN 数据传递终端 避 ...
- Spring学习记录6——ThreadLocal简介
Spring通过各种模板类降低了开发者使用各种数据持久化技术的难度.这些模板类是线程安全的,所以 多个DAO可以复用同一个模板实例而不会发生冲突.在使用模板类访问底层数据时,模板类需要绑定数据连接或者 ...
- hibernate学习一(hibernate简介与准备)
一.hibernate简介 Hibernate是一个开放源代码的对象-关系映射(Object/Relational Mapping 即 ORM)框架,它对JDBC进行了非常轻量级的对象封装,它将POJ ...
- UWP学习记录4-设计和UI之控件和模式1
UWP学习记录4-设计和UI之控件和模式1 1.控件和事件简介 在 UWP 应用开发中,控件是一种显示内容或支持交互的 UI 元素. 控件是用户界面的构建基块. 我们提供了超过 45 种控件供你使用, ...
- Python学习记录day6
title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ...
- 前端学习记录之Javascript-DOM
简介 为了快捷方便,在工作和项目中,一直都是使用的框架,比如jqeruy,vuejs,react等.然后在长时间使用框架后,往往有一个后遗症,就是对于原生的Javascript基本上已经不知道怎么写了 ...
- java开源项目之IQQ学习记录之项目环境搭建与启动
本文链接地址:http://blog.csdn.net/sushengmiyan/article/details/18779727 作者:sushengmiyan 现在就码字说说今天晚上搞定的一个项目 ...
随机推荐
- 图解Raft之日志复制
日志复制可以说是Raft集群的核心之一,保证了Raft数据的一致性,下面通过几张图片介绍Raft集群中日志复制的逻辑与流程: 在一个Raft集群中只有Leader节点能够接受客户端的请求,由Leade ...
- JS中[object object]怎么取值
错误信息:本来是要显示JSON对象的 结果控制台打印了[object object] 需要做一个简单的转换,如下: var jsonData = JSON.stringify(data);// 转成 ...
- 转 Singleton clr via c#3
/// <summary> /// 注意 只有在构造器没有副作用的时候才能使用这个技术 /// </summary> class Singleton { private sta ...
- Web发展史
Web 万维网常称为WWW(World Wide Web)发展至今仅30年,英国计算机科学家,蒂姆 伯纳斯 李爵士 提出了 World Wide Web的设计方案,1990年李爵士完成了Web 所有的 ...
- C盘突然爆满
C盘突然爆满!幸好还开的机!~~ 因为是突然就爆满了,想着应该是虚拟内存的原因!于是就开始了探索.... 1.文件夹选项中把所有文件都显示出来. 2.在C盘你就会看到一个“pagefile.sys”的 ...
- 亿级SQL Server运维的最佳实践PPT分享
这次分享是我在微软的一次分享,关于SQL Server运维最佳实践的部分,由于受众来自不同背景,因此我让分享在一个更加抽象的角度进行,PPT分享如下: 点击这里进行下载
- HashMap 相关面试题及其解答
Q:HashMap 的数据结构? A:哈希表结构(链表散列:数组+链表)实现,结合数组和链表的优点.当链表长度超过 8 时,链表转换为红黑树. transient Node<K,V>[] ...
- [Swift]LeetCode61. 旋转链表 | Rotate List
Given a linked list, rotate the list to the right by k places, where k is non-negative. Example 1: I ...
- [Swift]LeetCode385. 迷你语法分析器 | Mini Parser
Given a nested list of integers represented as a string, implement a parser to deserialize it. Each ...
- [SQL]LeetCode596. 超过5名学生的课 | Classes More Than 5 Students
SQL架构 Create table If Not Exists courses (student varchar(), )) Truncate table courses insert into c ...