1.3 嵌入式系统的特点
嵌入式系统有两个很明显的特点是:第一,以应用为中心,以计算机技术为基础,软件、硬件可剪裁,适合应用于系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统;第二,技术密集、资金密集、高度分散不可垄断、面向应用不断创新的知识集成系统(CSEA)。
1.4 本课题主要研究内容和要求
主要是基于以ARM7TDMI为内核的SEP3203微处理器,利用GPIO口模拟SPI口完成CAN总线接口电路的设计与代码的验证,具体要了解掌握以下几个方面内容:
1)学习嵌入式系统开发的相关基础知识、开发流程以及硬软件设计方法;
2)CAN总线的通信协议、三种帧结构(标准数据帧、扩展数据帧和远程帧)、报文的收发流程及CAN总线为了提高发送数据的实时性和高效性采用的非破坏性位仲裁方法;
3)CAN总线接口电路的各个功能模块以及其主要的功能,具体来说就是:SEP3203的特性和各个功能模块以及它们的功能;SPI口的功能和寄存器的使用方法;MCP2515的各个模块的功能和五种工作模式的配置方法以及高速收发器MCP2551的功能和使用方法;
4)软件设计除需要对系统的启动代码、系统初始化代码有清晰地了解之外,要了解主程序和MCP2515的初始化程序的流程,必须能针对MCP2515设计相应的控制代码,要对MCP2515芯片的使用方法较为熟悉[5]。
2 CAN总线
2.1 概述
CAN是Controller Area Network的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986年德国电气商博世公司开发出面向汽车的CAN通信协议。此后,CAN通ISO11898及ISO11519进行了标准化,现在在欧洲已是汽车网络的标准协议。
现在,CAN的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。
CAN通信协议是一种用于汽车内部测量与执行部件之间的数据通信协议。由于CAN总线协议简单,结构简单,逐渐的位其他行业所接收,并于1993年正式称为国际标准:ISO11898(高速应用)和ISO11519(低速应用)。作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通信控制方式,CAN总线已被广泛应用于各个自动化控制系统中。例如,在汽车电子、自动控制、智能大厦、电子系统、安防监控等各领域中,CAN总线具有不可比拟的优越性。它是一种多主方式的串行通信总线,基本设计规范要求有高的位速率,高抗电磁干扰性,而且能够检测出产生的任何错误。当信号传输距离达到10km时,CAN总线仍可提高达50kb/s的数据传输率。图2.1是它通常情况下一个节点的结构。
图2.1 CAN总线节点结构
2.2 CAN总线协议
CAN总线遵循自己的通信技术规范,目前施行的是2.0版本,它是由PHILIPS公司于1991年9月制订并发布的。该技术规范包括A和B两部分。2.0A给出了曾在CAN技术规范版本1.2中定义的CAN报文格式,而2.0B给出了标准的和扩展的两种报文格式。
CAN总线的物理层是将ECU连接至总线的驱动电路。ECU的总数将受限于总线上的电气负荷。物理层定义了物理数据在总线上各节点间的传输过程,主要是连接介质、线路电气特性、数据的编码/解码、位定时和同步的实施标准。BOSCH CAN基本上没有对物理层进行定义,但基于CAN的ISO标准对物理层进行了定义。设计一个CAN系统时,物理层具有很大的选择余地,但必须保证CAN协议中媒体访问层非破坏性位仲裁的要求,即出现总线竞争时,具有较高优先权的报文获取总线竞争的原则,所以要求物理层必须支持CAN总线中隐性位和显性位的状态特征。在没有发送显性位时,总线处于隐性状态,空闲时,总线处于隐性状态;当有一个或多个节点发送显性位,显性位覆盖隐性位,使总线处于显性状态。在此基础上,物理层主要取决于传输速度的要求。从物理结构上看,在CAN中,物理层从结构上可分为三层:分别是物理层信令(Physical Layer Signaling,PLS)、物理介质附件(Physical MediaAttachment,PMA)层和介质从属接口(Media Dependent:Inter-face,MDI)层。其中PLS连同数据链路层功能由CAN控制器完成,PMA层功能由CAN收发器完成,MDI层定义了电缆和连接器的特性。 基于嵌入式系统的CAN总线接口电路设计(2):http://www.youerw.com/tongxin/lunwen_7551.html