首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于CAN总线的汽车仪表设计研究
来源:本站整理  作者:佚名  2011-04-08 09:31:23



2.3 系统软件设计


 

系统软件设计分为主程序、CAN通信、数据采集处理和数据显示等4个模块。主程序模块通过调用各个子模块程序来处理数据处理:CAN通信模块负责发送和接收数据;数据采集及处理模块完成对各种类型数据的采集以及计算;数据显示模块将车速、油压以及信号灯等信息显示在仪表上。


 


图5为系统主程序流程,该系统主程序流程分为:

1)系统初始化。系统初始化主要包括初始化系统时钟、CAN节点、LCD液晶屏、步进电机等,并使能CAN中断,设置CAN屏蔽码和验收码。CAN节点初始化主要是初始化CAN控制器并中断CAN控制器:

2)读取传感器以及CAN总线数据,并驱动指针以及LCD等显示,同时等待CAN接收中断。

3)CAN接收中断产生,进入接收中断子程序读取数据。判断数据是否符合数据接收条件,如果符合,则接收数据。此过程逐位比较接收到的29位标识符与验收码、屏蔽码,只有标识符相应位与验收码相应位相同,系统才开始接收数据。

4)处理器将接收的报文进行解析,提取需要的数据并进行处理。处理器对传感器传来的数据和CAN总线读取的数据进行处理计算,得到相应的指针驱动参数,计算出指针转角,并根据初始化的步进电机的参数计算出指针转动速度。指针转动速度与相应的参数变化速度成正比。同时计算出车辆行驶里程并累加到总路程上。

5)处理器将包含车辆工况的一组脉冲序列发送至步进电机驱动器,驱动器驱动步进电机以微步方式转动,指示出相应的发动机转速、车速、水温以及油压等;处理器将包含车辆总路程等信息的数据发送至LCD控制器,控制器控制LCD显示相应的总路程等:处理器改变相应的I/O引脚状态直接点亮/关闭相应的指示灯。

2.4 故障显示

该仪表能够从CAN总线接收故障代码并对故障代码进行解析,与预先写入的故障码比对后找到对应的故障信息并显示在LCD屏幕上。每一类型的数据都有特定的数据帧ID,系统根据帧ID判断故障产生的位置。如果收到的是单帧故障,则系统来提取总字节数和总包数;如果收到的是多帧故障,系统则连续提取故障诊断报文至特定的字节,然后根据故障代码查找故障类型。

3 结束语

在研究CAN总线和SAE J1939协议的基础上,设计CAN总线汽车仪表。该设计充分利用LM3S2948以及VID6606的功能,较大程度上降低了系统外围电路的设计以及成本。多次实车试验结果表明,相对于常规仪表,该CAN总线仪表具有以下优点:抗干扰能力强,传输速率高,能够保证数据有效、快速、稳定地传输;减少车身布线,硬件方案软件化实现,简化了设计,降低了成本;及时、直观地查看车辆故障;CAN总线将整车构成一个网络系统,能够提升系统的灵活性,方便地增加设备,扩大了可开发的空间。

上一页  [1] [2] [3] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:160,460.90000 毫秒