导言
1986年德国最大的工业企业之一Rober Bosch公司初次提出了运用于轿车内各种传感器和执行器之间彼此通讯的CAN总线(Controller AreaNetwork)技能以来,以其可靠性、实时性和灵活性强的特色,得到了许多轿车开发商的喜爱。本文介绍了CAN总线的通讯协议,剖析了CAN总线操控器SJA1000和驱动器PCA82C250的内部结构和作业原理,首要论述了CAN总线技术在智能小区门禁操控系统中的运用。
1 CAN总线的特色
1.1 CAN总线的位数值表明与通讯间隔
CAN总线协议是建立在国际规范安排的开放系统OSI 7层互连参阅模型根底之上的。其模型结构只需3层,即只取OSI底层的物理层、数据链层和运用层,确保了节点间无差错的数据传输。
CAN总线上用“显性”(Dominant)和“隐性”(Recessive)两个互补的逻辑值表明“0”和“1”。如图1所示,VCNA-H和VCAN-L为CAN总线收发器与总线之间的两接口引脚,信号是以两线之间的“差分”电压方法呈现。在隐性状况,VCNA—H和VCAN—L被固定在均匀电压电平邻近,Vdiff近似于0。显性位以大于最小阀值的差分电压表明。CAN总线的通讯间隔最远可达10Km(位速率为5 kbps),通讯速率最快可达1Mbps(此刻最长通讯间隔为40m)。
图1 CAN总线的位数值传输方法
1.2报文传输
CAN技能的报文传输为多主方法作业,网络上恣意节点均可在恣意时刻主动地向网络上其它节点发送信息,而不分主从。CAN节点只需经过对报文的标明符滤波即可完成点对点、一点对多点及大局播送等几种方法发送、接纳数据。
CAN总线的数据传输(报文传输)选用帧格局。按帧格局的不同,分为含有11位标识符的规范帧和含有29位标识符的扩展帧。CAN总线的帧类型分为数据帧、长途帧、过错帧和过载帧。
1.3裁定(Arbitration)
只需总线闲暇,任何单元都能够开端发送报文。假如两个或两个以上节点一起开端传送报文,那么就会有总线拜访抵触。经过运用标识符的逐位裁定能够处理这个抵触。裁定的机制确保了报文和时刻均不丢失。当具有相同标识符的数据帧和长途帧一起发送时,数据帧优先于长途帧。在裁定期间,每一个发送器都对总线进行监测,假如发送和接纳电平相同,则该节点能够持续发送报文。比方发送的是一“隐性”电平,而监督到的是一“显性”电平,那么这个节点就失去了裁定,有必要退出发送状况。
2 CAN总线操控器和驱动器
2.1 CAN总线操控器SJA1000的内部结构
CAN总线操控器首要确保数据链路层和物理层的通讯质量。SJA1000是一种独立的CAN总线操控器。SJA1000的内部结构如图2所示。
图2 SJA1000内部结构图
各功能模块的效果如下:
接口办理逻辑(IML)担任解说来自CPU的指令,操控CAN寄存器的寻址,向主操控器(CPU)供给中止信息和状况信息。发送缓冲器(TXB)是CPU和位流处理器(BSP)之间的接口,担任存储发送到CAN总线上的一条完好的报文。发送缓冲器的长度为13个字节,由CPU写入、位流处理器读出。