开始学意法半导体stm32f(四)——CAN总线_新天地_百度空间

什么是CAN ?
CAN,全称为“Controller Area Network”,即控制器局域网,是国际上应用最广泛的现场总线之一。最初,CAN被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。比如:发动机管理系统、变速箱控制器、仪表装备、电子主干系统中,均嵌入CAN控制装置。CAN 可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。

CAN 是怎样工作的?
CAN通讯协议主要描述设备之间的信息传递方式。CAN层的定义与开放系统互连模型(OSI)一致。每一层与另一设备上相同的那一层通讯。实际的通讯发生在每一设备上相邻的两层,而设备只通过模型物理层的物理介质互连。CAN的规范定义了模型的最下面两层:数据链路层和物理层。应用层协议可以由CAN用户定义成适合特别工业领域的任何方案。已在工业控制和制造业领域得到广泛应用的标准是DeviceNet,这是为PLC和智能传感器设计的。在汽车工业,许多制造商都应用他们自己的标准。

CAN能够使用多种物理介质,例如双绞线、光纤等。最常用的就是双绞线。信号使用差分电压传送,两条信号线被称为“CAN_H”和“CAN_L”,静态时均是2.5V左右,此时状态表示为逻辑“1”,也可以叫做“隐性”。用CAN_H比CAN_L高表示逻辑“0”,称为“显形”,此时,通常电压值为:CAN_H = 3.5V 和CAN_L = 1.5V 。

CAN 有哪些特性?
CAN具有十分优越的特点,使人们乐于选择。这些特性包括:
􀁺 低成本
􀁺 极高的总线利用率
􀁺 很远的数据传输距离(长达10Km)
􀁺 高速的数据传输速率(高达1Mbit/s)
􀁺 可根据报文的ID决定接收或屏蔽该报文
􀁺 可靠的错误处理和检错机制
􀁺 发送的信息遭到破坏后,可自动重发
􀁺 节点在错误严重的情况下具有自动退出总线的功能
􀁺 报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息

CAN总线是一个多主站现场总线,各节点都有权向其他节点发送信息,其协议简单,实时性强,可靠性及抗干扰能力好,总线利用率高,硬件成本低。主要特点如下:

1)CAN总线的任一节点在任一时刻都主动向网络上其他节点发送数据而不分主从,通过优先级确定总线为哪一节点所占用,通信灵活。

2)CAN总线上的节点可通过设置分为不同的优先级,用来满足不同的实时性要求。

3)CAN总线采用非破坏性总线仲裁,当多个节点同时向总线发送数据时,优先级低的节点主动停止发送数据,退出竞争,而优先级高的节点将拥有总线使用权,继续发送数据。

4)CAN总线具有点对点,一点对多点及全局广播等多种数据通讯传送方式。

5)节点间通讯位速率与节点间距离有关,总线最远通讯距离为10km,此时通讯速率为5kbps,{zd0}通讯速率能达到1Mbps(通讯距离40m内)。

6)可根据报文的ID决定接收或屏蔽该报文,发送的报文遭到破坏后可自动重发。

7)可靠的错误处理和检错机制,节点在错误严重的情况下具有自动退出总线的功能。

8)报文不包含源地址和目标地址,仅用报文标志符来来指示功能信息和优先级信息。

CAN总线智能节点的软件设计主要包括三个部分:CAN节点初始化、报文发送和报文接收。CAN节点的通讯实质上就是对CAN控制器内部各寄存器进行读写,由于这些寄存器或发送、接收缓冲器均有确定的地址,CPU可通过外设访问指令对它们进行读写操作。系统上电复位后,CPU对CAN控制器的各个控制寄存器写入相应控制字信息,以完成CAN控制器的初始化。



郑重声明:资讯 【开始学意法半导体stm32f(四)——CAN总线_新天地_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——