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

发布时间:2014-10-19 阅读量:698 来源: 我爱方案网 作者:

【导读】随着高性能电子显示技术的发展,汽车仪表电子化的程度越来越高。国内外已开发出了多功能全电子显示仪表、平视显示仪表、汽车导航系统、行车记录仪等高技术产品。汽车会越来越多地采用各种用途的电子化仪表。造型新颖、功能强大的嵌入式电子化仪表将是今后车用仪表的发展趋势和潮流。

1 智能车载仪表系统结构


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

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

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

2 硬件设计

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


图1 系统硬件结构框图

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

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


图2 CAN总线接口电路

为了增强CAN总线节点的抗干扰能力,提高系统的稳定性,在CAN控制器与CAN收发器之间加入了光耦隔离器6N137,而不是使TXCAN和RXCAN端直接与收发器相连,这样就实现了总线上各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(如ActivateDevice、ReadFile、WriteFile和IOControl等)紧密匹配,即流接口驱动在应用程序中表现为一个系统文件,应用程序通过对系统文件的特殊文件进行操作从而完成对设备的操作。编写流接口文件主要用到流接口函数,也就是流接口驱动的入口点,如XXX_Init、XXX_Read和XXX_Open等。这些流接口文件与相应的API函数对应,使应用程序由相应的函数可以访问到外部设备。

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

WCHAR * szRegKey=L"DriversBuiltInCAN";

WCHAR * szPrefix=L"CAN";

WCHAR * szDLL=L"can.dll";

WCHAR * szFriendlyName=L"CANDriver";

DWORD * DrvIndex=1;

DWORD * DrvOrder=0;

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

3.3 CAN总线驱动通信流程


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

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

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


图3 CAN总线驱动通信流程

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

相关文章

人机界面设计基于Android车载虚拟仪表研究分析

一种车载网络与汽车电子的自动化设计

车载火灾报警器AT89C51设计方案
相关资讯
边缘计算新引擎:瑞芯微RV1126B四大核心技术深度解析

2025年5月8日,瑞芯微电子正式宣布新一代AI视觉芯片RV1126B通过量产测试并开启批量供货。作为瑞芯微在边缘计算领域的重要布局,RV1126B凭借3T算力、定制化AI-ISP架构及硬件级安全体系,重新定义了AI视觉芯片的性能边界,推动智能终端从“感知”向“认知”跃迁。

半导体IP巨头Arm:季度营收破12亿,AI生态布局能否撑起估值泡沫?

2025财年第四季度,Arm营收同比增长34%至12.4亿美元,首次突破单季10亿美元大关,超出分析师预期。调整后净利润达5.84亿美元,同比增长55%,主要得益于Armv9架构芯片在智能手机和数据中心的渗透率提升,以及计算子系统(CSS)的强劲需求。全年营收首次突破40亿美元,其中专利费收入21.68亿美元,授权收入18.39亿美元,均刷新历史纪录。

Arrow Lake的突破:混合架构与先进封装的协同进化

2024年10月,英特尔正式发布Arrow Lake架构的酷睿Ultra 200系列处理器,标志着其在桌面计算领域迈入模块化设计的新阶段。作为首款全面采用Chiplet(芯粒)技术的桌面处理器,Arrow Lake不仅通过多工艺融合实现了性能与能效的优化,更以创新的混合核心布局和缓存架构重新定义了处理器的设计范式。本文将深入解析Arrow Lake的技术突破、性能表现及其对行业的影响。

暗光性能提升29%:深度解析思特威新一代AI眼镜视觉方案

2025年5月8日,思特威(股票代码:688213)正式发布专为AI眼镜设计的1200万像素CMOS图像传感器SC1200IOT。该产品基于SmartClarity®-3技术平台,集成SFCPixel®专利技术,以小型化封装、低功耗设计及卓越暗光性能,推动AI眼镜在轻量化与影像能力上的双重突破。公司发言人表示:"AI眼镜的快速迭代正倒逼传感器技术升级,需在尺寸、功耗与画质间实现平衡,这正是SC1200IOT的核心价值所在。"

光谱传感技术革新家庭医疗:艾迈斯欧司朗助力杉木科技实现尿液分析智能化

2025年5月8日,全球光学技术领军企业艾迈斯欧司朗(ams OSRAM,SIX:AMS)宣布,其AS7343多通道光谱传感器成功应用于杉木(深圳)生物科技有限公司(以下简称“杉木”)推出的“感知系列”医疗机器人SHANMU-S2。该产品通过全自动尿液收集与定量分析技术,为家庭用户提供早期疾病预警与健康管理服务,标志着智能医疗设备在居家场景的应用迈入全新阶段。