现场总线技术在汽车中的应用讲义_第1页
现场总线技术在汽车中的应用讲义_第2页
现场总线技术在汽车中的应用讲义_第3页
现场总线技术在汽车中的应用讲义_第4页
现场总线技术在汽车中的应用讲义_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 现场总线技术在汽车中的应用前 言: 1.现场总线的概述 2.应用范围第一部分:计算机网络通讯第二部分:CAN总线协议第三部分:CAN接点设计第四部分:CAN总线在汽车工业中的应用第五部分:LIN-BUS 介绍前言1.现场总线概述 现场总线是应用在生产现场,在微机与测量设备之间实现双向串行多节点数字通信的系统。它是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现,标志着工业控制技术领域又一个新时代的开始,并将对该领域的发展产生重要影响。 现场总线技术将专用微处理器置入传统的测量控制仪表,使它们各自都具有了数字计算和数字通信能力。采用可进行简单连接的双纹线等作为总线,把

2、多个测量控制仪表连接成的网络系统,并按公开、规范的通信协议,在位于现场的多个微机化测量控制设备之间以及现场仪表与远程监控计算机之间,实现数据传输与信息交换,形成各种适应实际需要的自动控制系统。简而言之,它把单个分散的测量控制设备变成网络节点,以现场总线为纽带,把它们连接成可以相互沟通信息、共同完成自控任务的网络系统与控制系统。它自动化领域带来的变化,正如众多分散的计算机被网络连接在一起,使计算机的功能、作用发生的变化。现场总线则使自控系统与设备具有了通信能力,把它们连接成网络系统,加入到信息网络的行列。因此把现场总线技术说成是一个控制技术新时代的开端并不过分。 Bosch公司最早在现代汽车技术

3、中领先推出的一种多主机局域网CAN (Controller Area Network) 总线局域网、Echelon公司推出的Lon Works总线之后,金会总线FP、Hart总线相继出现。目前,CAN被公认为几种最有前途的现场总线之一。其规范已被ISO 国际标准组织制订为国际标准。应用范围 CAN总线是应用在生产现场、在微机化测量控制设备之间实现双向串行多节点数字通信的系统,也被称为开放式、数字化、多点通信的底层控制网络。它在制造业、流程工业、交通、楼宇等方面的自动化系统中具有广泛的应用前景。在国外,尤其是欧洲及美国,CAN已经被广泛用于汽车、火车、轮船、机器人、智能楼宁、机械制造、数控机床、

4、纺织机械、医疗器械、农用机械、液压传动、消防管理、传感器、自动化仪表等领域,特别是近几年来,随着汽车电子工业的迅速发展,CAN总线在汽车工业中日益广泛,在欧洲,几乎所有高档轿车上都或多或少地采用了CAN总线技术。第一部分 计算机网络通讯1.计算机网络拓扑结构1)WAN和LANWAN(Wide Area Net) 广域网WAN覆盖面积非常辽阔。传送距离长,一般可达几十公里到几千公里。它可以通过微波,卫星把跨国、跨洲际的计算机边成网。WAN一般使用公用通信网或由邮电部门提供的通信设备和线路。LAN(Local Area Net) 局域网LAN可定义为在有限的距离内(几十米到25公里内),如在一座建

5、筑物内或一群建筑物中,将计算机终端和各种外部设备(如大容量硬盘子系统、快速打印机等),用传输线路连接起来,进行高速数据传输的通信网。 2)LAN的拓扑结构 网络拓扑结构是指用传输媒体互连各种设备的物理布局。将参与LAN工作的各种设备用媒体互连在一起有多种方法,通常只有几种方式适合LAN的工作。如果一个网络只连接几台设备,最简单的方法是将它们都直接相连在一起,这种连接称为点对点连接。用这种方式形成的网络称为全互连网络,如图1所示。图中有6个设备,在全互连情况下,需要15条传输线路。如果要连的设备有n个,所需线路将达到n(n-1)/2条!显而易见,这种方式只有在涉及地理范围不大,设备数很少的条件下

6、才有使用的可能。即使属于这种环境,在LAN技术中也不使用。这里所以给出这种拓扑结构,是因为当需要通过互连设备(如路由器)互连多个LAN时,将有可能遇到这种广域网(WAN)的互连技术。 图1 目前大多数LAN使用的拓扑结构有3种: 星行拓扑结构 环行拓扑结构 总线型拓扑结构 1.1.星型拓扑结构星型拓扑结构 星型结构是最古老的一种连接方式,大家每天都使用的电话都属于这种结构,如图2所示。 其中,图2(a)为电话网的星型结构,图2(b)为目前使用最普遍的以太网(Ethernet)星型结构,处于中心位置的网络设备称为集线器,英文名为Hub。 图2(a) 图2(b) 这种结构便于集中控制,因为端用户之

7、间的通信必须经过中心站。由于这一特点,也带来了易于维护和安全等优点。端用户设备因为故障而停机时也不会影响其它端用户间的通信。但这种结构非常不利的一点是,中心系统必须具有极高的可靠性,因为中心系统一旦损坏,整个系统便趋于瘫痪。对此中心系统通常采用双机热备份,以提高系统的可靠性。 这种网络拓扑结构的一种扩充便是星行树,如图3所示。每个Hub与端用户的连接仍为星型,Hub的级连而形成树。然而,应当指出,Hub级连的个数是有限制的,并随厂商的不同而有变化。2.2.环型网络拓扑结构环型网络拓扑结构 环型结构在LAN中使用较多。这种结构中的传输媒体从一个端用户到另一个端用户,直到将所有端用户连成环型,如图

8、5所示。这种结构显而易见消除了端用户通信时对中心系统的依赖性。 图3 图4 环行结构的特点是每个端用户都与两个相临的端用户相连,因而存在着点到点链路,但总是以单向方式操作。于是,便有上游端用户和下游端用户之称。例如图5中, 如果N+1端需将数据发送到N端,则几乎要绕环一周才能到达N端。 环上传输的任何报文都必须穿过所有端点,因此,如果环的某一点断开,环上所有端间的通信便会终止。为克服这种网络拓扑结构的脆弱,每个端点除与一个环相连外,还连接到备用环上,当主环故障时,自动转到备用环上。 3.3.总线拓扑结构总线拓扑结构 总线结构是使用同一媒体或电缆连接所有端用户的一种方式,也就是说,连接端用户的物

9、理媒体由所有设备共享,如图5所示。使用这种结构必须解决的一个问题是确保端用户使用媒体发送数据时不能出现冲突。在点到点链路配置时,这是相当简单的。如果这条链路是半双工操作,只需使用很简单的机制便可保证两个端用户轮流工作。在一点到多点方式中,对线路的访问依靠控制端的探询来确定。然而,在LAN环境下,由于所有数据站都是平等的,不能采取上述机制。对此,研究了一种在总线共享型网络使用的媒体访问方法:带有碰撞检测的载波侦听多路访问,英文缩写成CSMA/CD。 这种结构具有费用低、数据端用户入网灵活、站点或某个端用户失效影响其它站点或端用户通信的优点。 缺点是一次仅能一个端用户发送数据,其它端用户必须等待到

10、获得发送权。 媒体访问获取机制较复杂。尽管有上述一些缺点,但由于布线要求简单,扩充容易,端用户失效、增删不影响全网工作,所以是LAN技术中使用最普遍的一种。图62、计算机网络分层体系1)OSI(open system interconnection model)参考模型结构 OSI参考模型是在博采众长的基础上形成的系统互连技术的产物。它 不仅促进了数据通信的发展,而且还导致了整个计算机网络的发展。OSI参考模型提供了概念性和功能性结构。该模型将开放系统的通信功能划分为七个层次。各层协议细节的研究是各自独立进行的。这样一旦导入新技术或提出新的业务要求时,就可以把由通信功能扩充、变更所带来的影响限

11、制在直接有关的层内而不必改动全部协议。 OSI参考模型分层的原则是将相似的功能集中在同一层内,功能差别较 大时则分层处理,每层只对相邻的上、下层定义接口。 OSI参考模型各层功能OSI参考模型是计算机网络体系结构发展的产物它的基本内容是开放系统通信功能的分层结构。这个模型把开放系统的通信功能划分为七个层次。从邻接物理媒体的层次开始,分别称之为物理层 、数据链路层、网络层、传输层、会话层、表示层和应用层。OSI参考模型 如图31所示。2)OSI功能的划分 OSI参考模型每一层的功能是独立约,它利用其下一层提供的服务并为其上一层提供服务,而与其他层的具体实况无关。这里所谓的“服务”就是下一层向上一

12、层提供的通信功能和层之间的会话规定,一般用通信服务原语实现。两个开放系统中的同等层之间的通信规则和约定称之为协议。通常,第l3层功能称为低层功能(LLF),即通信传送功能,这是网络与终端均需具备的功能。第47层功能称为高层功能(HLF),即通信处理功能,通常需由终端来提供。第第1层层 物理层物理层(phisical layer) 物理层并不是物理媒体本身,它只是开放系统中利用物理媒体实现物理连接的功能描述和执行连接的规程。物理层提供用于建立、保持和断开物理连接的机械的、电气的、功能的和过程的条件。简而言之,物理层提供有关同步和比特流在物理媒体上的传输手段。 物理层协议是网络中最低层协议。它连接

13、两个物理设备,为链路层提供透明位流传输所必须遵循的规则,有时也被称为物理接口。第第2层层 数据链路层数据链路层(data link layer) 数据链路层用于加强物理层传输原始比特功能,实现无差错传输的功能。防止高速发送方的数据把低速接受方“掩没”,因此需要有流量调节机制,使发送方知道当前接受方有多少缓冲空间。该层对连接相邻的通路进行差错控制、数据成帧、同步等控制。检测差错一般采用循环冗余校验(CRC),纠正差错采用计时器恢复和自动请求重发(ARQ)等技术。其典型的协议有0SI标准协议中的高级数据链路控制协议。数据链路层所承担的任务或者说它的主要功能有: 数据链赂的建立和拆除,包括同步、站址

14、确认、收发关系的确定、最终一次传输的表示等。 信息传输,包括信息格式、数量、顺序编号、接收认可、信息流量调节方案等。 传输差错控制包括一套防止信息丢失、重复和失序的方法。 异常情况处理,包括如何发现可能出现的异常情况及发现后的处理过 程。协议中对异常情况的处理主要用于发现和恢复永久性故障。IEEE 802 委员会为局域网定义了介质访问控制(MAC)层、逻辑链路控制(LLC)层介质访问控制层与逻辑链路控制层是属于OSI参考模型中数据链路层的两个子 层。第第3层层 网络层网络层(network layer) 网络层规定了网络连接的建立、维持和拆除的协议。关系到子网的控制,关键问题是确定分组从源端到

15、目的端如何路由。它的主要功能是利用数据链路层所提供的相邻节点间的无差错数据传输功能,通过路由选择和中继功能,实现两个系统之间的连接。在计算机网络系统中,网络层还具有多路复用的功能。 第第4层层 传输层传输层(transport layer) 传输层基本功能是从会话层接受数据,并且在必要时把他分成较小的单元,传递给网络层,并且完成开放系统之间的数据传送控制。对开放系统之间数据的收发确认。同时,还用于弥补各种通信网络的质量差异,对经过下三层之后仍然存在的传输差错进行恢复。进一步提高可靠性。另外,还通过复用、分段和组合、连接和分离、分流和合流等技术措施。提高吞吐量和服务质量。第第5层层 会话层会话层

16、(session layer) 会话层允许不同的机器上建立会话关系,依靠传输层以下的通信功能使数据传送功能在开放系统间有效地进行。其主要功能是按照在应用进程之间的约定,按照正确的顺序收、发数据、进行各种形式的对话。控制方式可以归纳为以下两类:一是为了在会话应用中易于实现接收处理和发送处理的逐次交替变换,设置某一时刻只有一端发送数据。因此需要有交替改变发信端的传送控制。二是在类似文件传送等单方向传送大量数据的情况下,为了防备应用处理中出现意外,在传送数据的过程中需要给数据定上标记。当出现意外时,可以由定标记处重发。例如可以将长文件分页发送,当收到上页的接收确认后,再发下页的内容。第第6层层 表示

17、层表示层(presentaltion layer) 表示层的主要功能是把应用层提供的信息变换为能够共同理解的形式,提供字符代码、数据格式、控制信息格式、加密等统一表示。表示层仅对应用层信息内容的形式进行变换,而不改变其内容本身。第第7层层 应用层应用层(opplication layer) 应用层是OSI参考模型的最高层。其功能是实现应用进程(如用户程序 、终端操作员等)之间的信息交换。同时、还具有一系列业务处理所需要的 服务功能 。第二部分 CAN总线协议1、CAN总线的特点1)突出特点 可以以多主方式工作。网络任一节点可以成为主节点,向其它节点主动 发送信息。 非破坏性总线仲裁和错误界定。

18、利用现有的产品,可使总线冲突的解决和出错界定由控制器自动完成,对用户完全透明,且能区分永久和暂时故障,并自动关闭故障节点。 CAN节点可被设定为不同的发送优先级,满足不同的实时要求。 通信距离可达10KM(速率5KB/S)距离在内40M以内速率可达1MB/S。 采用差分驱动,可在高噪声干扰环境下使用。 CAN每帧信息都有CRC校验及其他检错措施,保证了数据出错率极低4.7X10-11极低。 CAN的通信介质可为双绞线、同轴电缆或光纤,选择灵活。 CAN节点在错误严重酌情况下具有自动关闭输出功能。以使总线上其他节点的操作不受影响。 采用短帧结构,传输时间短,受干扰概率低,具有极好的检措效果。 2

19、)一般组成 CAN总线系统的一般组成模式如图1所示,系统中的每个节点间及自动 化装置和节点间的信息递都是在CAN控制器的控制下完成。1、 总线概念及协议1) CAN的基本概念 报文标识符 ID 报文滤波 报文: 总线上的信息以不同格式的报文发送,但长度有限制。当总线 开放时,任何连接的单元均可开始发送一个新报文。 系统灵活性节点可在不要求所有节点及其应用层改变任何软件或硬件的情况下。被接入网络。 报文通信 一个报文的内容由其标识符ID命名。ID并不指出报文的目的,但描述数据的含义,以便网络中的所有节点有可能借助报文滤波决定该数据是否使它们激活。 位速率 CAN的数据传输串在不同的系统中是不同的

20、,而在一个给定的系统中,此速度是唯一的。并且是固定的。 优先权 在总线访问期间,标识符定义了一个报文静态的优先级。 远程数据请求 通过发送一个远程帧,需要数据的节点可以请求另一个相应的数据帧,该数据帧与对应的远程帧以相同标识符ID命名。 多主站 当总线开放时,任何单元均可开始发送报文,发送具有最高优先权报文的单元,以赢得总线访问权。 仲裁 当总线开放时,任何单元均可开始发送报文,若同时有两个或更 多的单元开始发送,总线访问冲突运用远位仲裁规则,借助标识符ID解决。这种仲裁规则可以使信息和时间均无损失。若具有相同标识符的一个数据帧和一个远程帧同时发送,数据帧优先于远程帧。 2) 帧类型 报文传输

21、由以下4 个不同的帧类型所表示和控制: 数据帧:数据帧携带数据从发送器至接收器。 远程帧:总线单元发出远程帧,请求发送具有同一识别符的数据帧。 错误帧:任何单元检测到一总线错误就发出错误帧。 过载帧:过载帧用以在先行的和后续的数据帧(或远程帧)之间提供一附加的延时。 3)数据桢数据帧携带数据由发送器至接收器帧间隔帧起始仲裁场控制场数据场CRC场ACK场帧结束帧间隔1位11位6位08字节1位4)远程桢 远程桢结构远程帧由6个不同分位场组成:帧起始、仲裁场、控制场、CRC场、应答场和帧结束。 同数据帧相反,远程帧的RTR位是隐位。远程帧不存在数据场。DLC的数据值是独立的,它可以是08中的任何数值

22、,这一数值为对应数据帧的DLC。第三部分 CAN接点设计一、硬件电路设计 CAN 总线系统智能节点硬件电路设计 CAN总线系统智能节点,采用89C51作为节点的微处理器,在CAN总线通信接口中采用PHILIPS公司的SJA1000和82C250。芯片SJA1000是独立CAN通信控制器,82C250 为高性能CAN总线收发器。 如图3所示为CAN总线系统智能节点硬件电路原理图。从图中可以看出电路主要由四部分所构成:微控制器89C51,独立CAN通信控制器SJA1000,CAN总线收发器82C250和数据缓冲器RAM。微处理器89C51负责SJA1000的初始化,通过控制SJA1000实现数据的

23、接收和发送等通信任务。 图3 CAN总线系统智能节点硬件电路原理图 二、总线控制器 CAN通信控制器SJA1000 功能简介 CAN的通信协议主要由CAN控制器、微处理器完成。CAN控制器主要实现物理层、数据链路层协议,微处理器完成应用层协议。对于不同型号的CAN总线通信控制器,实现CAN协议部分电路的结构和功能大多相同,而与微处理器接口部分的结构和方式存在一些差异。这里主要以SJA1000为代表对CAN控制器的功能作一个简单介绍。 SJA1000是一种独立的CAN控制器,它是PHILIPS公司的PCA82C200 CAN控制器的替代产品。SJA1000具有BasicCAN和PeliCAN两种

24、工作方式,PeliCAN工作方式支持具有很多新特性的CAN2.0B协议。SJA1000在软件和引脚上都是与它的前一款PCA82C200独立CAN控制器兼容的。上电复位默认工作方式是BasicCAN方式。BasicCAN和PeliCAN方式的区别如下:在PeliCAN方式下SJA1000有一个重新设计的含很多新功能的寄存器组,SJA1000包含PCA82C200中的所有位,同时增加了一些新的功能位。PeliCAN方式支持CAN2.0B协议规定的所有功能。SJA1000寄存器列表寄存器列表 发送缓存器 标识符RTR,DLC字节18101112-19ID.10ID.2数据ID.9ID.1数据ID.8

25、ID.0数据ID.7RTR数据ID.6DLC.3数据ID.5DLC.2数据ID.4DLC.1数据ID.3DLC.0数据 接收缓存器0/1 标识符RTR,DLC字节18时钟驱动器202122-2931ID.10ID.2数据ID.9ID.1数据ID.8ID.0数据ID.7RTR数据ID.6DLC.3数据ID.5DLC.2数据CD.2ID.4DLC.1数据CD.1ID.3DLC.0数据CD.0控制寄存器(控制寄存器(CR): 控制寄存器(CAN地址0)的内容用于改变SJA1000的状态,控制寄存器可被微控制器置位或复位,其将控制寄存器作为读/写存贮器。控制寄存器各位的功如下: CR.7CR.6CR.

26、5CR.4CR.3CR.2CR.1CR.0溢出中断使能错误中断使能发送中断使能接收中断使能复位请求三、软件设计1、 初始化子程序1)初始化子程序 SJA1000 的初始化只有在复位模式下才可以进行,初始化主要包括工作方式的设置、接收滤波方式的设置,接收屏蔽寄存器AMR 和接收代码寄存器ACR 的设置,波特率参数设置和中断允许寄存器IER 的设置等。命令寄存器(命令寄存器(CMRCMR):命令寄存器(CAN地址1)对于SJA1000作为读/写存贮器出现,若对地址进行读访问,返回字节11111111B。命令寄存器各位的功能如下:CMR.7CMR.6CMR.5CMR.4CMR.3CMR.2CMR.1

27、CMR.0进入睡眠状态清除超载状态释放接收缓存器夭折发送复位请求状态寄存器(状态寄存器(SR):状态寄存器(CAN地址2)对于微控制器作为只读存贮器出现,其内容影响总线控制器的状态。状态寄存器各位的功能如下: SR.7SR.6SR.5SR.4SR.3SR.2SR.1SR.0总线状态错误状态发送状态接收状态发送完成状态发送缓存器访问数据超载接收缓存器状态在完成SJA1000 的初始化设置以后,SJA1000 就可以回到工作状态进行正常的通信任务。下面提供了SJA1000 初始化的51 汇编源程序。程序中寄存器符号表示的是SJA1000 相应寄存器占用的片外存贮器地址,这些符号可在程序的头部用伪指

28、令EQU 进行定义后文对这一点不再作特别说明。 CANINI MOV DPTR #MOD 方式寄存器 MOV A #09H 进入复位模式对SJA1000 进行初始化。 MOVX DPTR A MOV DPTR #CDR 时钟分频寄存器 MOV A #88H 选择PeliCAN 模式关闭时钟输出CLKOUT MOVX DPTR A MOV DPTR #IER 中断允许寄存器 MOV A #0DH 开放发送中断超载中断和错误警告中断 MOVX DPTR A MOV DPTR #AMR 接收屏蔽寄存器 MOV R6 #4 MOV R0 #DAMR 接收屏蔽寄存器内容在片内RAM 中的首址 AMR M

29、OV A R0 MOVX DPTR A 接收屏蔽寄存器赋初值 INC DPTR DJNZ R6 AMR MOV DPTR #ACR 接收代码寄存器 MOV R6 #4 MOV R0 #DACR 接收代码寄存器内容在片内RAM 中的首址 ACR MOV A R0 MOVX DPTR A 接收代码寄存器赋初值 INC DPTR DJNZ R6 ACRMOV DPTR #BTR0 总线定时寄存器0MOV A #03HMOVX DPTR AMOV DPTR #BTR1 总线定时寄存器1MOV A #0FFH 16MHz 晶振情况下设置波特率为80kbps。MOVX DPTR AMOV DPTR #OC

30、R 输出控制寄存器MOV A #0AAHMOVX DPTR AMOV DPTR #RBSA 接收缓存器起始地址寄存器MOV A #0 设置接收缓存器FIFO 起始地址为0MOVX DPTR AMOV DPTR #TXERR 发送错误计数寄存器。MOV A #0 清除发送错误计数寄存器MOVX DPTR AMOV DPTR #ECC 错误代码捕捉寄存器MOVX A DPTR 清除错误代码捕捉寄存器MOV DPTR #MODE 方式寄存器MOV A #08H 设置单滤波接收方式并返回工作状态MOVX DPTR ARET2)发送子程序 发送子程序负责节点报文的发送。发送时用户只需将待发送的数据按特定

31、格式组合成一帧报文送入SJA1000 发送缓存区中,然后启动SJA1000 发送即可。当然在往SJA1000 发送缓存区送报文之前必须先作一些判断,如下文程序所示发送程序分发送远程帧和数据帧两种,远程帧无数据场。下面以发送数据帧为例对发送子程序作一个说明TDATA MOV DPTR #SR 状态寄存器MOVX A DPTR 从SJA1000 读入状态寄存器值JB ACC.4 TDATA 判断是否正在接收,正在接收则等待TS0 MOVX A DPTRJNB ACC.3 TS0 判断上次发送是否完成,未完成则等待发送完成TS1 MOVX A DPTRJNB ACC.2 TS1 判断发送缓冲区是否锁

32、定锁定则等待TS2 MOV DPTR #CANTXB SJA1000 发送缓存区首址MOV A #88H 发送数据长度为8 个字节的扩展帧格式报文MOVX DPTR AINC DPTRMOV A #ID0 4 个字节的标识符ID0-ID3 依据实际情况赋值MOVX DPTR AINC DPTRMOV A #ID1MOVX DPTR AINC DPTRMOV A #ID2MOVX DPTR A INC DPTRMOV A,#ID3MOVX DPTR AMOV R0 #TRDATA CPU 发送数据区首址数据内容由用户定义MTBF MOV A R0INC DPTRMOVX DPTR AINC R0

33、CJNE R0 #TRDATA+8 MTBF 向发送缓冲区写8 个字节MOV DPTR #CMR 命令寄存器地址MOV A #01HMOVX DPTR A 启动SJA1000 发送RET3)查询方式接收子程序 查询方式接收子程序 接收子程序负责节点报文的接收以及其它情况处理。接收子程序比发送子程序要复杂一些,因为在处理接收报文的过程中,同时要对诸如总线脱离错误、报警接收溢出等情况进行处理。SJA1000 报文的接收主要有两种方式:中断接收方式和查询接收方式。如果对通信的实时性要求不是很强,建议采用查询接收方式。两种接收方式编程的思路基本相同,下面仅以查询方式接收报文为例对接收子程序作一个说明。

34、SEARCHMOV DPTR #SR 状态寄存器地址MOVX A DPTRANL A #0C3H 读取总线脱离错误状态接收溢出有数据等位JNZ PROCRET 无上述状态结束PROC: JNB ACC.7 PROCIMOV DPTR #IR IR 中断寄存器出现总线脱离MOVX A DPTR 读中断寄存器清除中断位。MOV DPTR #MODE 方式寄存器地址MOV A #08HMOVX DPTR A 将方式寄存器复位请求位清0LCALL ALARM 调用报警子程序RETNOPOTHER JB ACC.0 RECE IR.0=1 接收FIFO 未满或接收中断使能LJMP RECOUT IR.0

35、=0 接收缓冲区无数据退出接收NOPRECE MOV DPTR #CANRXB 接收缓冲区首地址16 准备读取数据MOVX A DPTR 首字节是接收帧格式字JNB ACC.6 RDATA RTR=1 是远程请求帧无数据MOV DPTR #CMRMOV A #04H CMR.2=1 释放接收缓冲区MOVX DPTR A 只有接收了数据才能释放接收缓冲区LCALL TDATA 发送对方请求的数据LJMP RECOUT 退出接收NOPRDATAMOV DPTR #CANRXB 读取并保存接收缓冲区的数据MOV R1 #CPURBF CPU 片内接收缓冲区首址 MOVX A DPTR 读取读取CAN

36、 缓冲区的2 号字节MOV R1 A 保存ANL A #0FH 截取低4 位是数据长度08ADD A #4 加4 个字节的标识符IDMOV R6 ARDATA INC DPTRINC R1MOVX A DPTRMOV R1 ADJNZ R6 RDATA0 循环读取与保存MOV DPTR #CMRMOV A #04H 释放CAN 接收缓冲区MOVX DPTR ARECOUT MOV DPTR #ALC 释放仲裁丢失捕捉寄存器和错误捕捉寄存器MOVX A DPTRMOV DPTR #ECCMOVX A DPTRNOPRET第四部分 CAN总线在汽车工业中的应用一 、CAN总线应用于汽车的回顾 20

37、世纪90年代以来,汽车上由电子控制单元指挥的部件数量越来越多 ,例如电子燃油喷射、防抱死制动(ABS)、安全气囊、电控门窗、主动悬架等等。随着集成电路和单片机在汽车上的广泛应用,车上的ECU数量越来越多。因此,一种新的概念车上控制器局域网络CAN的概念也就应运而生了。 在现代轿车的设计中,CAN已经成为必须采用的装置,奔驰、宝马、 大众、沃尔沃及雷诺汽车都将CAN作为控制器联网的手段。由于我国中高 级轿车主要以欧洲车型为主,因此欧洲车应用最广泛的CAN技术,也将是国产轿车引进的技术项目。 目前汽车上的网络连接方式主要采用2条CAN,一条用于驱动系统的高速CAN,速率达到500kb/s,主要连接

38、对象是发动机控制器(ECU)、ASR及ABS控制器、安全气囊控制器、组合仪表等等,它们的基本特征相同,都是控制与汽车行驶直接相关的系统。另一条用于车身系统的低速CAN,速率是100kb/s。车身系统CAN主要连接对象是四门以上的集控锁、电动车窗、后视镜和厢内照明灯等。在信息社会中,有些先进的轿车除了上述两条总线,还会有第三条CAN总线,它主要负责卫星导航及智能通讯系统。目前,驱动系统CAN和车身系统CAN这两条独立的总线之间没有关系。工程师将逐步克服技术障碍,设置“网关”,在各个CAN之间搭桥实现资源共享,将各个数据总线的信息反馈到仪表板总成上的显示屏上。驾车者只要看看仪表板,就可以知道各个电

39、控装置是否正常工作了。 就像汽车电子技术在20世纪70年代引入集成电路、80年代引入微处理器一样,近10年数据总线技术的引入也将是汽车电子技术发展的一个里程碑。二、应用举例 CAN总线应用于能源控制控制系统-320CAN总线控制器在CFA6470型混合动力汽车中的应用。 针对CFA6470HEV混合动力汽车,我们组建了如图2所示的 CFA6470HEV混合动力汽车CAN控制网络。 1、TMS320LF2407ACAN控制器简介 该CAN控制器模块是一个完全的CAN控制器,该控制器是一个16位的外设模块,完全支持CAN20B协议,支持数据帧、远程帧,可工作在标准模式或扩展模式下,它采用邮箱发送、接收数据,对接收邮箱可配置接收屏蔽字,可编程位定时器、可编程中断配置、可编程CAN总线唤醒功能,自动回复远程请求,当发送出现错误或仲裁时丢失数据时,CAN控制器自动重发,具有总线错误诊断功能,可工作在自测试模式下 。 TMS320LF2407A的CAN控制器采用邮箱机制发送、接收数据,有别于一般的CAN控制器。一般的CAN控制器(如SJA1000)只有一个发送数据区、一个接收缓冲区,再加64字节接收缓冲区,当发送不同标识符数据帧时,须改变标识符寄存器。当接收不同标识符数据帧时,屏蔽

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论