论文摘要
能源和环境是当今社会发展的两大主要问题,随着经济的发展,车辆逐年快速的增长,能源和环境问题变得更加的严峻。汽车的电子化有许多优势,如无污染,高效率,安全及结构简单等,这对环境和能源来说是一个好的方向。车辆总线技术只是众多技术的一个方面,运用汽车总线系统可以建立多个子网络,它有可靠的功能和安全的信息传递都是依赖于子系统,基于CAN总线的网络是使子系统相互合作的最理想的方法。有了CAN协议并不能构成一个完整的系统,还需要选择合适的高层协议来支持,这个高层协议不仅用来进行网络连接,而且应该能够进行网络管理和处理各种应用数据,J1939就是这样的高层协议。德国某公司研究出了协议栈,为用户提供了一个接口,使其不必花大量精力来研究SAE J1939协议的相关细节,给基于J1939协议的开发带来了便利。国内的一些企业和机构也对SAE J1939的研究十分感兴趣,纷纷进行相关的开发和研究,实现了一些功能,研发出很多新的产品,促进了SAE J1939协议的发展。车辆的信息显示系统是人机交互界面,提供了各种相关的参数和状态,以便实行故障检测排除等应用,随着汽车电子技术和仪器仪表技术的发展,很多高精度、美观实用的信息显示系统已经应用到各种车辆上,电子化的仪表已经逐步取代了旧式的仪表。本文研究的发动机参数显示系统就是在这样的背景下提出的,在介绍完CAN总线和SAE J1939协议发展现状之后,进一步介绍了CAN总线的报文格式及分层结构,由于CAN没有定义应用层的协议由此引出J1939协议,并且详细地进行了分析。对格式及参数等进行定义,以便以后使用更加方便。本文的目标就是开发一款发动机参数显示系统,遵循CAN和J1939协议的格式,实现参数的发送和接收。在介绍完相关的关键技术之后,对本系统进行了总体的架构设计,不仅进行了功能方面的设计而且从硬件和软件两个方向进行了结构设计,提出了本文所用到的S3C2410小板和其他附加接口等。接下来详细设计了发动机参数显示系统的硬件体系结构和软件结构,硬件方面通过借鉴和分析确定了相关的器件,如微处理器选用S3C2410小板等,并对电源、复位电路、时钟、LCD、USB等模块的电路进行了相关设计及修改,特别着重设计了通信模块的接口即CAN接口,精心挑选了CAN的控制器MCP2510和收发器TJA1050。软件方面设计了系统中软件的总体架构,选择了嵌入式Linux作为操作系统,在此之上完成此系统的各项功能,包括通信和界面显示等。本文实现了交叉编译环境的搭建,修改了Bootloader及相关的文件系统参数,并进行了Linux系统内核的移植,在此环境之上,设计了通信系统软件,不仅编写了CAN驱动程序的相关代码而且实现了数据的发送和接收功能,为了方便数据的采集,设计了基于MiniGUI的图形界面,分别设计了主菜单,主界面和发动机参数界面,生动地将采集到的信息显示出来。最后本文进行了验证实验,借用周立功的智能接口卡与系统的CAN接口相连接,通过专门的测试软件进行通信测试,实验证明,本系统基本能够完成数据的传输功能,说明设计的通信接口等能够正常使用,达到了预期的效果。本文对发动机参数显示系统进行了设计与开发,这个系统实时性好,线束简单,体积小,为以后的相关功能及模块的扩展打下了良好的基础,相信这种基于CAN总线和J1939协议的仪表系统会逐渐得到发展并融入我们的生活。