仪表是人和的交互界面,为驾驶员提供所需的汽车运行参数、故障、里程等信息,是每一辆汽车必不可少的部件。仪表显示的直观与美观使得驾驶不但是代步之必需,也成为舒适生活的一部分,而参数传递的准确与可靠性则直接关系到汽车行驶的安全。
汽车仪表
现代仪表最突出的特点是功能的模块化,通常要组装一块仪表,只需将几个功能模块在定制PCB的基础上联合起来,就可以得到一个完整的系统。长安等经济型汽车的指针仪表一般为独立的模块,提示/报警功能由PCB上的小灯泡完成。SANTANA系列的指针由印刷电路板上的十字线圈驱动,提示/报警灯全部是发光二极管。轿车的仪表板上显示的主要数据、来源及对应显示方式如表1(根据SANTANA2000)。
可见目前的汽车仪表尚以机械式为主,通讯方式以线束为主。这种模式最大的弊病是过于依赖线束,导致系统复杂。
随着汽车产业的快速发展,尚有极大潜力的汽车电子市场正日渐受到各大汽车生产商与电子产品供应商的关注,这其中包括尚处于开发实验阶段的清洁能源汽车、目前由日本占据世界市场领袖地位的车载音响设备、前途无量的车载计算机信息终端设备以及形形色色的车内电控单元,如发动机电控单元、ABS、总线、新型等。
对汽车仪表而言,使用电子式仪表板较之传统仪表的优势在于:
硬件功能的软件化
随着微电子技术的发展,微处理器的处理速度越来越快。一些实时性要求高,原本由硬件完成的功能,就完全可以通过对微处理器编程来实现。
系统集成度大大提高
在大规模集成电路技术迅速发展的今天,集成电路的密度越来越高,体积越来越小,内部结构越来越复杂,功能也越来越强大。随着仪表的部分功能硬件不断地被软件取代,整个系统的集成度也在相应提高。
本设计是一个基于的汽车组合仪表板。面向的是目前市场上占主流地位的传统汽车,并引用长安车的仪表为模板,目的主要在于实现一个汽车组合电子仪表板的低端方案。
本方案的对象主要包括车速、转速、压力、温度、里程、时间以及一些提示/报警灯信号。
车速表、发动机转速表、油压表、水温表(指针)
里程表(LCD):定时记录车速信号,在行车时间内做数值积分,得到行驶公里数,作为里程保存在用户Flash中。定时(1s)对里程数据做累加。
系统设计
由于本设计面向的是大众化的传统汽车,成本成为器件选用的最重要标准。在微控制器的选型上,我们并未考虑前途光明但目前尚未普及的CAN总线,而是选择了自带液晶驱动的8位微控制器LJ12。
MC68HC908LJ12是Freescale单片机908家族的一员,其主要参数与功能模块如下:
8MHz的最大总线频率;
12k用户Flash;
512b RAM;
两个独立双通道定时器模块;
内部实时时钟,可记录年、月、日、时、分、秒;
SCI与SPI通信模块;
6通道10位A/D;
LCD模块,可驱动27×3或26×4的笔段式液晶模块。
步进电机驱动芯片MC33970(图1)是Freescale模拟家族的一员,内含6个寄存器,由SPI写入命令状态字,分别是配置/校准寄存器、指针速度寄存器、指针0/1位置寄存器、指针回零寄存器、归零设置寄存器。MC33970的特点:
兼容MMT认证的两相步进电机;
指针可停留在4095个稳定的位置;
最大转角340°;
最大加速度4500 deg/s2;
最大速度400 deg/s;
模拟微步(指针运动12步为1°);
指针校准与回零;
SPI控制,16位命令字;
内部校准时钟;
睡眠模式低电流。
LJ12芯片内部有丰富的硬件资源,我们做了如下配置:
PLL:外部晶振32.768kHz;内部总线倍频至4MHz;
SCI:用于上位机通讯,比特率9600,中断方式;
SPI:时钟1MHz,作为MC33970的控制,用两个通用引脚作为SPI的片选信号;
LCD:使用26×4模式,即26前极、4背极的模式,动态驱动;因为设计中用到6位LCD模块,所以使用FP1~FP12、BP0~BP3已经足够;
Flash:利用常驻内存函数(ROM-Resident Routine)将里程数据以32位数据的形式保存于用户闪存中。
评论
加载更多