CAN总线学习系列之— CAN总线特点介绍

CAN 总线作为一种工业界的流行总线广泛应于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等各个行业中,它是是一种多主机局域网,所以这样 一种总线的潜力是很巨大的,接下来将写几篇入门的小文章,来介绍一下CAN的学习和开发方法,主要是配合我们的开发板,其实入门还是很容易的,通过这几篇 文章如果你能建立起一个初步的概念,能够自己搭起自己的一个节点(包括硬件和软件),那就说明你学会了CAN的基本开发技术,实际的工业现场CAN的开发 不是那么简单,包括很多要考虑的因素如隔离、可靠性等,但是我们作为初学者建立起基本的概念还是很重要的,基础一旦打好,等到了实际工作中,就会如鱼得 水,所以希望正要或是想开发CAN的朋友们能够喜欢这一系列小文章,如果某一篇甚至是某一句话能够给你带来启迪,那将是我最最高兴的,希望大家踊跃评论或 是参与讨论,给我一下写下去的信心,呵呵,可以加入我们的群。
下面正题正式开始喽!第一篇,当然要介绍一下什么是“能”总线(CAN总线)呵呵
CAN总线的特点
CAN(Controller Area Network)总线,也称控制器局部网,属于现场总线的范畴,它是一种有效支持分布控制或实时控制的串行通信网络。由于采用了许多新技术及独特的设 计,CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其特点如下:
CAN为多主工作方式,网络上任何一个节点均可在任意时刻主动地向 网络上其它节点发送信息,而不分主从。
在报文标识符上,CAN上的节点分成不同的优先级,可满足不同的实时要求,优先级高的数据最多可在134us内得到传输。
CAN采用非破坏总线仲裁技术。当多个节点同时向总线发送信息出现冲突时,优先级低的节点会主动地退出发送,而优先级高的节点可以不受影响的继续传输数据,从而大大节省了总线冲突的仲裁时间。尤其是网络负载很重的情况下,也不会出现网络瘫痪情况(以太网则可能)。
CAN节点只需通过报文的标识符滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据。
CAN的直接通信距离最远可达10km(速率5kbps以下);通信速率最高可达1Mbps(此时通信距离最长为40m)。
CAN上的节点数主要取决于总线驱动电路,目前可达110个。在标准帧的报文标识符有11位,而在扩展帧的报文标识符(29位)个数几乎不受限制。
报文采用短帧格式,传输时间短,受干扰概率低,保证了数据出错率极低。
CAN的每帧信息都有CRC校验及其他检错措施,具有极好的检错效果。
CAN的通讯介质可以为双绞线、同轴电缆或光纤,选择灵活。
CAN节点在错误帧的情况下具有自动关闭输出功能,而总线上其它节点的操作不受影响。
CAN总线具有较高的性能价格比。它结构简单,器件容易购置,每个节点的价格较低,而且开发技术容易掌握,能充分利用现有的单片机开发工具。
CAN 协议也是建立在国际标准组织的开放系统互联模型基础上的。不过,由于CAN的数据结构简单,又是范围较小的局域网,其模型结构只取OSI底层的物理层、数 据链路层和应用层3层,不需要其他中间层,应用层数据直接取自数据链路层或直接向数据链路层写数据。结构层次少,利于系统中实时控制信号的传送。
CAN总线的位数值表示
CAN 总线上采用“显性”(Dominant)和“隐性”(Recessive)两个互补的逻辑值表示“0”和“1”。当总线上出现同时发送显性和隐性位时,其 结果是总线数值为显性(即“0”与“1”的结果为“0”)。如下图所示,VCAN-H和VCAN-L为CAN总线收发器和总线间的两接口引脚,信号是以两 线间的“差分”电压形式出现。在隐性状态,VCAN-H和VCAN-L被固定在平均值附近,Vdiff近似于0。在总线空闲或隐性期间,发送隐性位。显性 位以大于最小阀值的差分电压表示。

CAN总线学习系列之— CAN总线特点介绍的更多相关文章

  1. CAN总线学习系列之三——CAN控制器的选择

    CAN总线学习系列之三——CAN控制器的选择 在进行CAN总线开发前,首先要选择好CAN总线控制器.下面就比较一些控制器的特点. 一些主要的CAN总线器件产品 制造商 产品型号 器件功能及特点 Int ...

  2. CAN总线学习系列之二——CAN总线与RS485的比较

    CAN总线学习系列之二——CAN总线与RS485的比较 上 一节介绍了一下CAN总线的基本知识,那么有人会问,现在的总线格式很多,CAN相对于其他的总线有什么特点啊?这个问题问的好,所以我想与其它总线 ...

  3. Golang学习系列:(一)介绍和安装

    Golang学习系列:(一)介绍和安装 Java程序员带你来到Go的世界,让我们开始探索吧! Go是一种新的语言,一种并发的,带有垃圾回收的.快速编译的语言,它具有一下特点: 他可以在一台计算机上用几 ...

  4. CAN总线学习记录之三:总线中主动错误和被动错误的通俗解释

    首先建议把广泛使用的"主动错误"和"被动错误"概念换成"主动报错"和"被动报错". 1. 主动报错站点 只要检查到错误, ...

  5. Linq学习系列-----1.1 Lambda表达式介绍

     1.1  Lambda表达式介绍 下图就是一个典型的Lambda表达式. instance:输入参数 =>:Lambda操作符 instance.MemoryCount>=20*1024 ...

  6. 【SignalR学习系列】1. SignalR理论介绍

    什么是SignalR? ASP.NET SignalR 是一个让 ASP.NET开发者可以简单地给自己的程序添加即时通讯功能的开发库.即时通讯功能可以直接从服务器端给在线的客户端发送数据,而不用等待客 ...

  7. JDK源代码学习系列04----ArrayList

                                                                             JDK源代码学习系列04----ArrayList 1 ...

  8. JDK源代码学习系列05----LinkedList

                                             JDK源代码学习系列05----LinkedList 1.LinkedList简单介绍 LinkedList是基于双向 ...

  9. I2S音频总线学习

    IIS音频总线学习(一)数字音频技术 一.声音的基本概念 声音是通过一定介质传播的连续的波. 图1 声波 重要指标: 振幅:音量的大小 周期:重复出现的时间间隔 频率:指信号每秒钟变化的次数 声音按频 ...

随机推荐

  1. 关于对DI和IOC的概念理解

    在spring框架学习过程中,涉及到两个新名词:DI和IOC.开始总是混淆两者的概念,稀里糊涂,后来上网搜了一下又和同学讨论之后,基本上理解了二者的概念.实际上DI(依赖注入)和IOC(控制反转)就是 ...

  2. C# Task注意事项

    1.在Task中调用主线程控件 Task.Factory.StartNew(() => { }).ContinueWith(task => { this.Invoke(new Action ...

  3. SoapUI 接口测试之post提交本地数据文件

    SoapUI接口测试之post提交本地数据文件 by:授客 QQ:1033553122 本文主要是针对用SoapUI POST提交本地数据文件的方法做个简单介绍 举例: 文件同步接口 接口地址:htt ...

  4. Maven的下载与安装(Windows版本)

    前言: 安装Maven 3,需要安装jdk1.7及以上版本 具体步骤如下: 1.进入官网:http://maven.apache.org/download.cgi,如下图红框部分 其中: apache ...

  5. 关于网站开发中div标签中设置宽度后其中文本溢出的原因和解决方法

    一.问题产生的原因 当我们为div标签声明了宽度,但是仍然会出现文本越界的情况,不知道大家有没有发现,只有文本内容为单词或者纯数字的时候才会出现这种情况为此我特意测试了两种情况,结果如下: ①当文本内 ...

  6. chrome浏览器快捷键大全

    浏览器标签页和窗口快捷键: Ctrl+N 打开新窗口.Ctrl+T 打开新标签页.Ctrl+Shift+N 在隐身模式下打开新窗口.Ctrl+O,然后选择文件. 在 Google Chrome 浏览器 ...

  7. 团队项目个人进展——Day08

    一.昨天工作总结 冲刺第八天,昨天看了许多关于wx.request的知识,主要测试了OBJECT参数,同时也对https方面有了一定了解 二.遇到的问题 对文档中的内容只是熟悉,理解并运用起来还存在问 ...

  8. leveldb源码分析--SSTable之block

    在SSTable中主要存储数据的地方是data block,block_builder就是这个专门进行block的组织的地方,我们来详细看看其中的内容,其主要有Add,Finish和CurrentSi ...

  9. Java 如何启用 ARM 虚拟机诊断

    现象描述 如何通过 Java 语言实现在创建 ARM 虚拟机时开启诊断,并配置相关指标.   实现思路 调研最高版本的 JAVA SDK(1.1.0)源码发现,SDK 层面并未提供任启动诊断和配置诊断 ...

  10. Visual Studio 2010详细安装过程

    Visual Studio 2010在目前看来,应该是使用得比较多的一款微软的软件开发工具集合了,因为它具有以下优点:(1)启动速度快:在相同环境下,相比于Visual Studio 2015来说,2 ...