基于WinCE的智能车载仪表设计

发布者:未来画家最新更新时间:2011-04-20 来源: 单片机与嵌入式系统关键字:嵌入式应用  智能车载仪表  WinCE  CAN总线 手机看文章 扫描二维码
随时随地手机看文章
引言

  随着高性能电子显示技术的发展,汽车仪表电子化的程度越来越高。国内外已开发出了多功能全电子显示仪表、平视显示仪表、汽车导航系统、行车记录仪等高技术产品。未来,车用电子化嵌入式仪表具有以下优点:提供大量复杂的信息,使汽车的电子控制程度越来越高;满足小型、轻量化的要求,使有限的驾驶空间更人性化;高精度和高可靠性实现汽车仪表的电子化,降低了故障的发生率;设有在线故障诊断系统,一旦汽车发生故障,可以找到故障来源,方便维修;外形设计自由度高,汽车仪表盘造型美观。基于以上优点,汽车会越来越多地采用各种用途的电子化仪表。造型新颖、功能强大的嵌入式电子化仪表将是今后车用仪表的发展趋势和潮流。

1 智能车载仪表系统结构

  本智能车载仪表拥有大多数传统车载仪表所拥有的功能,驾驶员可以通过车载仪表的显示界面获取当前汽车的状态信息,例如车速、油压、油温、水温、机油压力或者电瓶电量。

  传统车辆仪表直接与车辆的传感器相连,仪表系统经由传感器的模拟量得到汽车当前状态,精确性不高。本文设计的智能车载仪表并不是简单地与传感器相连,而是通过CAN控制器将整车连接成一个网络结构。车辆部件配以CAN控制器,通过双绞线将车辆部件连接起来形成一个网络体系,实现部件的电子化。同时,车载仪表和汽车部件的电子化也提高了汽车的精准度和可靠性,降低故障发生率。

  车载智能仪表主要分为基于S3C2440处理器的硬件系统和WinCE环境下的软件系统两大部分。硬件系统为整个控制系统提供基础,负责CAN总线通信。软件系统提供CAN总线的硬件驱动以及在WinCE下的仪表上位应用程序。

2 硬件设计

  硬件系统以S3C2440为核心,RAM内存、NOR Flash和NAND Flash作为存储介质,扩展部分外围设备以负责系统信息的输入与输出,如CAN总线通信单元、LCD显示、触摸屏、通用串行口、USB设备、以太网接口等。系统硬件结构如图1所示。

系统硬件结构

  在众多接口中,CAN总线通信单元是在整车通信过程中的关键部分。在汽车的各个重要部件中,配置相应的CAN控制单元,由双绞线将各个CAN总线控制单元连接起来。汽车的各个部件将该部件的当前状态信息由CAN控制单元发送出去,经双绞线发送到智能车载仪表的CAN单元当中,经过系统的CAN接口将数据发送到系统中。车载仪表系统得到数据后,经过数据处理得到汽车部件的当前状态信息。

  CAN总线接口电路如图2所示。采用Microchip公司的CAN总线控制器MCP2515。MCP2515完全支持CAN 2.OA/B技术规范,速度达到1Mbps;SPI的接口标准使得它与S3C2440的连接更加简单;能发送和接收标准和扩展数据帧以及远程帧;自带2个验收屏蔽寄存器和6个验收滤波寄存器,可以过滤掉不想要的报文,减少了微处理器的开销。CAN总线收发器采用TJA1050,该器件提供了CAN控制器与物理总线之间的接口以及对CAN总线的差动发送和接收功能。

CAN总线接口电路

  为了增强CAN总线节点的抗干扰能力,提高系统的稳定性,在CAN控制器与CAN收发器之间加入了光耦隔离器6N137,而不是使TXCAN和RX-CAN端直接与收发器相连,这样就实现了总线上各CAN节点之间的电气隔离。同时,这也解决了MCP2515与TJA1050之间电平兼容的问题,还可以抑制CAN网络中的尖峰脉冲及噪声干扰。光耦部分电路所采用的两个电源必须完全隔离,否则也就失去了意义。电源的隔离可以采用小功率的电源隔离模块或者多带5 V隔离输出的开关电源模块实现。这些部分虽然增加了接口电路的复杂性,但是却提高了节点的稳定性和安全性。

  在CAN接口处,CAN通信线上的2个60Ω电阻(总计120 Ω),起到增大负载、减少回波反射作用,是一种阻抗匹配的补救措施。2个60 Ω的中间部分与地端之间连接一个电容以抗干扰。

3 软件设计

  软件的整体环境为winCE编程环境。针对本车载智能仪表硬件系统定制相应的WinCE操作系统,实现对硬件的驱动。再编写应用程序,通过对应用程序的具体操作实现对系统硬件的操作,即实现系统的功能。其中非常关键的是编写CAN控制器的驱动。CAN驱动实现应用软件对CAN控制单元的操作,以及读取CAN控制单元中的数据代码。

  3.1 系统开发和移植

  嵌入式系统开发就是系统驱动层的设计,其中最主要就是BSP的开发和调试。所以智能车载仪表底层驱动的开发就显得尤为重要。

  由于使用的是WinCE操作系统,所以使用Platform Builder定制WinCE操作系统镜像。在Platform Builder中,可以添加系统部分硬件(如液晶屏、RAM)的驱动,这些驱动已经由微软公司编写好。然后启动Bootloader,把镜像文件下载到Flash存储器中,并配置操作系统启动文件boot.ini。

  3.2 CAN总线驱动开发

  由于CAN是外部设备,所以需要将CAN的驱动以流接口驱动方式编写。流接口驱动函数被设计来与通常的文件系统API(如 Activate Dev-iee、ReadFile、WriteFile和IOControl等)紧密匹配,即流接口驱动在应用程序中表现为一个系统文件,应用程序通过对系统文件的特殊文件进行操作从而完成对设备的操作。编写流接口文件主要用到流接口函数,也就是流接口驱动的入口点,如XXX_Init、XXX_Read和XXX_Open等。这些流接口文件与相应的API函数对应,使应用程序由相应的函数可以访问到外部设备。

  作为流接口驱动程序,CAN总线驱动程序也有一组标准函数,可完成I/O操作。这些函数提供给WinCE操作系统内核使用,它们都是流接口驱动程序的DLL文件。动态加载CAN总线驱动程序时,系统要进行注册。CAN驱动程序注册表信息:

  CAN驱动程序注册表信息

  通过以上代码完成注册之后,调用ActivateDeviceEx()函数进行加载驱动。

  3.3 CAN总线驱动通信流程

  CAN总线控制器驱动程序主要用于设置MCP2515的波特率、MCP2515的验收过滤器、CAN消息传送模式和CAN收发数据方式。驱动程序是连接上位应用程序和硬件的一个中间纽带。智能车载仪表系统在EVC++环境下进行CAN总线开发。

  流式驱动以文件的方式打开函数CreateFile():驱动成功打开后,CreateFile()函数返回不为INVALID-HAN-DLE-VALUE的句柄,此句柄也是关闭驱动函数Close-Handle()的参数。CAN设置函数DeviceIoControl()接收由CreateFile()函数获得的句柄及控制命令码,设置输入/输出缓冲区以及缓冲区的大小。函数执行完成后返回实际输出的缓冲区大小等。CAN总线发送与接收函数WriteFile()和ReadFile(),利用驱动文件句柄、发送和接收缓冲区等参数完成数据的发送和接收,操作成功后返回实际发送和接收的字节数。

  为了不让主线程一直处于等待数据到来的状态,让主线程拥有时间令牌来操作其他事情,程序采用多线程设计,创建一个接收数据线程。接收数据线程是一个无限循环,它不断查询CAN总线数据退出标志,如果退出标志有效,则该循环结束退出。驱动程序流程如图3所示。

驱动程序流程

结语

  目前,基于嵌入式技术的车载仪表逐渐开始流行。本文使用基于WinCE的ARM9微处理器作为开发平台,处理速度快,功能强大;使用CAN总线技术进行信号的相互传输,CAN总线实时接收汽车部件发送来的信息,并进行处理与分析;使用WinCE操作系统,界面友好。本智能车载仪表系统可以节约成本、降低功耗,并且可维护性强,便于扩展和升级。

关键字:嵌入式应用  智能车载仪表  WinCE  CAN总线 引用地址:基于WinCE的智能车载仪表设计

上一篇:基于MC9S12XS128的汽车BCM的设计与实现
下一篇:汽车仪表板:该有所改变了

推荐阅读最新更新时间:2024-12-18 19:05

基于总线的分布式水下航行器控制器设计
水下自主航行器是可移动水下探测和水下作业工程装备的统称,是进行海洋考察与开发的重要工具。它能够完成水下地形勘探、侦测、水下危险环境作业等任务。它的控制器是其硬件的重要组成部分,其主要作用是根据其使命任务对运动参数的部分或全部进行控制,使其按规定的轨迹航行,并保证AUV运动的稳定性,满足AUV动态精度要求,其性能直接影响到AUV的总体性能。随着AUV技术的发展,对控制器提出了高可靠性、高实时性、精确定位、精确控制、维护简单等要求。本文提出了一种基于总线的分布式水下航行器控制器的设计方案,主要目的是实现以分布式控制系统总体结构为基础的控制节点设计。进而实现真正的分布式控制系统,减少中央处理机的运算负荷,将大量数据处理和分析在现场完成
[单片机]
基于总线的分布式水下航行器控制器设计
基于WINCE&S3C2410的多串口移植技术
  嵌入式系统已经渗入到国民经济的各个领域,而嵌入式操作系统是嵌入式系统的灵魂。目前国际上常用的操作系统有 VxWorks、Windows CE、Linux等。其中,微软公司开发的 Windows CE 以其快速的开发流程、灵活的软硬件选择和健壮的最终产品已成为越来越多嵌入式产品开发的首选。   由于嵌入式系统的硬件平台种类繁多,WindowsCE.net支持的处理器种类就有ARM,POWER PC, MPS、X86等几大类,各个大类之内又包含多种CPU。各硬件厂商提供的 WindowsCE.net 的硬件驱动并不全,因此开发人员经常需要根据自己特定的硬件平台进行驱动开发。WindowsCE.net的标准BSP一般只为我们开通了一
[单片机]
基于<font color='red'>WINCE</font>&S3C2410的多串口移植技术
CAN中采集模块研究
1. 引言 脉冲电表是目前电力系统用户侧较为常见的一种电子电量表计。对于远程电子抄表系统,要实现对脉冲表输出脉冲的可靠、精确计量。本文研究探讨了对于脉冲表可靠脉冲捕捉、脉冲计量,特别研究了脉冲电表信号输出线路的断线报警、掉电数据存储等关键问题,并对区域脉冲表群抄表需要的现场总线进行了研究,提出用CAN总线为数据通信的脉冲电表群的模块化解决方案。 2. 脉冲采集模块设计 CH1脉冲采集的主要任务是对CH2 CH3脉冲电表输出脉冲的实时、准确计数,CH4是所有电量统计的基础。脉冲采集模块CH5的好坏直接影响整个系统的可靠性和CH6准确性,因此在整个抄表系统中占据着CH7重要的地位。 2.1 脉冲采集板的结构 采集板的具体结构
[测试测量]
CAN中采集模块研究
基于Linux的PC104总线与CAN总线通信设计
1 引 言 PC104嵌入式工业计算机由于其小尺寸结构、堆栈式连接、轻松总线驱动的特点得到了广泛的应用。现场总线领域中,CAN总线得到了计算机芯片商的广泛支持,他们纷纷推出直接带有CAN接口的微处理器(MCU)芯片。带有CAN的MCU芯片总量已经达到1亿3 000万片,因此在接口芯片技术方面,CAN已经遥遥领先于FF,PRO-FIBUS,LONWORKS等其他所有现场总线。但是PC104总线不能与CAN总线直接通信,因此在CAN总线控制系统中难以运用。 针对以上问题,以AVR单片机为协处理器设计了PC104总线与CAN总线的转换卡并且考虑到PC104嵌入式工业计算机上通常运行Linux操作系统的特点,编写了转换卡Linux下P
[单片机]
基于Linux的PC104总线与<font color='red'>CAN总线</font>通信设计
基于CAN总线的远程监测仪器系统
    在现代化生产中,机电设备的状态监测和故障诊断技术越来越受到重视,但现有的生产过程监测系统网络开放性不强、在远程监测和诊断方面存在许多不足。为了保证设备安全、稳定及协调的运行,需要对多数关键设备进行远程实时监测、集中控制及管理。   CAN总线是一种先进的串行总线通信技术,具有多主、高可靠性及实时性等优点。通过现场总线系统能将各网络节点采集的信号实时传输到监测控制中心,由监测控制中心实现对设备的远程监控与管理。 1系统的组成及功能   系统采用多功能转子试验台为研究试验对象,整个系统由现场实时数据采集系统、现场总线网络通信系统及上位机分析与诊断系统(管理信息系统)三大部分组成。根据现场实际情况,设置相应数量的网络
[嵌入式]
硬盘驱动器接口技术与嵌入式应用技术介绍
目前,硬盘驱动器采用的主流接口是高技术配置接口标准(ATA),即IDE接口,而且绝大多数硬盘驱动器都采用了并行ATA接口。部分硬盘驱动器同时也支持CF (Compact Flash)规范、安全数字输入/输出(SDIO)标准和串行ATA规范。由于并行ATA和CF是便携手持市场的最普遍的两个标准,因此本文侧重讨论这两个规范。CF 3.0规范能够在与标准IDE完全相同的真IDE模式下操作。与CF2.1相比,CF3.0增加了极端直接内存访问(Ultra DMA)模式。   通常,硬盘驱动器并不需要支持所有的模式。目前,1.8英寸硬盘能够支持所有的模式,1英寸硬盘能支持到UDMA4模式。考虑到便携消费类市场对尺寸和功耗的要求,因此本
[工业控制]
硬盘驱动器接口技术与<font color='red'>嵌入式应用</font>技术介绍
基于CAN总线的自动离合器控制器设计
    摘要: 设计了一种基于CAN 总线的自动离合器控制器, 采用高性能微处理器XC878 完成离合器控制器软硬件开发。设计了离合器执行电机的驱动 电路 及自动离合器控制程序。针对离合器与发动机协调控制的需要,设计了CAN 总线节点接口电路及一套简单、实用、高效的CAN 总线通信协议。   试验表明,所设计的自动离合器控制器在功能上满足实际应用的需要,CAN 通信模块能够准确无误地收发数据,可靠性高。   随着社会的发展, 人们对汽车的舒适性和安全性要求越来越高, 而手动档汽车因其繁重的选换档及离合器操作增加了驾驶难度。对于驾驶新手而言, 又会产生坡道起步易熄火、油耗大、离合器磨损严重等问题 。自动档汽车虽然驾驶操作简单
[汽车电子]
基于<font color='red'>CAN总线</font>的自动离合器控制器设计
基于CAN总线的机电式自动调平控制系统
  英硕自动调平系统目前主要国内外大中型雷达天线座车、通讯车以及工程机械的机电、液压式支腿调平控制中。    调平时间:含支腿自动架设在内时小于1.5分钟;半自动立即调平时小于0.5分钟    支腿承重:2~8吨    调平精度:1~3’    调平模式:“一键式”全自动调平、半自动立即调平    系统操作温度:-40℃~70℃   该系统具有如下显著特点:   a) 采用“升降平衡”的闭环式调平策略,单腿结构受力状况良好,调整过程平稳光滑;   b) 调平过程中保证座车中心高不变;   c) 调平速度快,精度高;   d) 可实现动态水平调整,自动跟踪消除偏差;      e) 科学合理的调平策略确保无“虚腿”产生;  
[嵌入式]
小广播
最新汽车电子文章

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved