当前位置:文档之家› 基于单片机的汽车里程表设计

基于单片机的汽车里程表设计

基于单片机的汽车里程表设计
基于单片机的汽车里程表设计

目录

摘要 (3)

第一章课题分析 (4)

第二章方案论证

2.1 总体方案选择 (5)

2.2 数据采集模块方案选择 (6)

2.3 主控制模块方案选择 (7)

2.4 显示集模块方案选择 (7)

第三章系统设计

3.1 硬件电路设计 (8)

3.2 软件设计 (21)

第四章系统调试

4.1 数据采集模块调试 (26)

4.2 主控模块调试 (26)

4.3液晶显示模块调试 (27)

4.4 程序调试 (28)

第五章结论

5. 1 系统性能 (29)

5. 2 存在问题 (29)

5.3 研究方向 (29)

第六章效益分析

结束语 (30)

参考文献 (32)

附录A:程序清单

附录B:系统原理图

摘要

单片机自1976年问世以来,作为微型机算计的重要分支,应用广泛发展迅速,当然也引起了仪器仪表设计的巨大变革。自动化仪表正日趋智能化、系统化、小型化和多功能化,变革的关键是将微机应用于仪表中。在此基础上发展起来的智能仪表无论是在测量的准确度、灵敏度、可靠性、自动化程度、运用功能方面还是在解决测量技术与控制技术问题的深度及广度方面都有了很大的发展。随着单片微型机性能的不断改善,大大加快了仪器、仪表微机化和智能化的过程。与多芯片组成的微机相比,单片微机的体积小、功耗低、价格也比较便宜,用单片机开发各类微机化产品,周期短,成本低,在计算机和仪表一体化设计中,有着一般微机无法比拟的优势。同时,汽车电子化、智能化是现代汽车发展的重要标志之一。随着消费者对汽车需求的增加、机械系统到电子系统的转换,这必将迅速推动半导体器件等电子器件在汽车电子中的发展,全球汽车电子产业面临着高速增长的机遇。我国汽车电子业尚处在起步发展阶段,规模化大生产还未形成,但随着未来汽车市场(国内和国外市场)的快速发展和汽车的电子价值含量迅速提高,我国汽车电子产业将形成巨大经济规模效应,成为支持汽车工业发展的一门相对独立新兴支柱产业。

本文概述了基于单片机的汽车里程表系统研究设计的全过程。全文共分六章。第一章课题分析;第二章方案论证;第三章系统设计,包括主要芯片介绍,硬件电路设计,软件C51编程设计;第四章系统实际调试;第五章结论,给出系统性能,分析系统存在的问题,以及研究方向。第六章市场分析。

第一章课题分析

新生事物不会因传统的存在而停止它前进的步伐,电子数码科技今天已渗透到工业,农业,民用的产品的点点滴滴。新概念汽车里程表直接用数字显示速度、里程,另外还有时间显示和温度测量以及超速报警。不只是为达到目的,更是为了享受驾驶的快感。

本设计是一个十分实用的设计,是汽车必备的电子仪表。现在汽车制造的电子化程度越来越高,所以像这种电子计程表是一定会在实际应用之中有它的用武之地,市场前景十分广阔。

其设计的具体功能要求是:

1.实现速度的测量(单位:米/秒);

2.具有测量行程的功能(单位:米);

3.速度过快的警告功能*;

4.LCD显示。

要达到课题要求其难点在于:

1.用霍尔元件数据采集的具体安装和实现效果。

2.单片机对里程和速度的计算,液晶输出的中断与数据采集造成里程和速度的误差。

3.液晶显示的输入输出处理。

第二章方案论证

2.1总体方案选择

汽车里程表是汽车仪表板中最显眼的,它表示汽车的时速,单位是km/h (公里/小时)。车速里程表实际上由两个表组成,一个是车速表,另一个是里程表。

方案一:

机械式里程表;机械式里程表连接一根软轴,软轴内有一根钢丝缆,软轴另

一端连接到变速器某一个齿轮上,齿轮旋转带动钢丝缆旋转,钢丝缆带动里程表罩圈内一块磁铁旋转,罩圈与指针连接并通过游丝将指针置于零位,磁铁旋转速度的快慢引起磁力线大小的变化,平衡被打破指针因此被带动。这种车速里程表简单实用,被广泛用于大小型汽车上。可以说是一种历史古老但经久实用的仪表。现在还有许多这种仪表战斗在汽车速度、里程测量的第一线上。可以说是物美价廉,经济实用;但安装复杂,功能单一。

方案二:

电子式里程表;当然科技要发展时代要进步。人们对汽车仪表又提出了更新更高的要求。这样随着电子技术的发展,电子车里程表就应运而生了,现在很多轿车仪表已经使用电子车里程表,最常见的是从变速器上的速度传感器获取信号,通过脉冲频率的变化使指针偏转或者显示数字(如图2.1)。除了显示速度、里程,另外还有时间显示和温度测量以及超速报警的功能。以其功能多样,样式设计前卫,安装方便,逐渐取代了机械式里程表在汽车仪表方面的统治地位;但其精度和实用稳定性方面还有待提高。

图2.1系统结构框图

综上所述,世界是向前发展的,在科技迅速发展的今天,我们要紧跟时代步伐,开拓创新,与时俱进。探索科技前沿,设计与现在发展同步有广阔前景的产品,这样的毕业设计才会有意义,再加之本人学的是电子专业机械方面的东西肯定没有电子搞得透,需我选择防案二。

2.2 数据采集模块方案选择

方案一:

利用钢铁材料(或其它导磁材料)做的齿轮、齿条的运动,产生磁通量的变化,通过SMR敏感元件获得信号,来测量速度和里程。特点是分辨率高,频响宽,可靠性

高,内装放大整形电路,输出为幅度稳定的方波信号, 能实现远距离传输。广泛应用于机械、冶金、石油、化工、交通、铁路、航空、自控、军工等各个领域。此种元件精度高,价格贵,不适合用来这种相对粗糙的设计。有些划不来。

方案二:

运用霍尔开关元件,利用钢铁材料(或其它导磁材料)做的齿轮、齿条的运动,产生磁通量的变化。通过霍尔元获得信号从而来测量速度和里程。霍尔开关元件是目前汽车里程表中广泛应用的,因其集成度高,信号明显,价格合适,使用简便,受到广大汽车仪表制造商的青睐。

方案三:

运用红外线光敏元件,测量齿轮的旋转产生信号,来测量速度和里程。

它的优点是成本低廉,应用范围广;但光敏元件大多不应用在汽车仪表上,这是因为红外线光敏元件比较精致,容易损坏,在汽车行驶时,由于颠簸震荡,达不到它的正常工作条件。

综上所述,方案一,仪器精密度太高,而且价格昂贵,如果用它就有一些杀鸡用牛刀的感觉。方案三,虽然成本低,信号明显,但使信号产生的轮子必须是带孔的否则红外线无法被收集信号,在目前这是在汽车行驶时,汽车内部齿轮结构所无法达到的条件。做出来也没有实用价值。只有方案二,性价比合理,既可以实现功能又可以在实际中得到应用,它应是最理想方案。

2.3 主控制模块方案选择

单片机是主控制模块的不二选择,但也要作出一些具体的选择。在16位单片机和8位单片机之间当然要选择8位单片机了。像跑这种小程序8位的就够了。如果用16位的就有点浪费了,再说我们学过的主要也是8位的,再在价方面也是为的要便宜。型号上当然是AT89系列的了,它们是嵌入式开发设计中普遍应用的型号。一般来说都用89C51,但近期消息说ATMEL公司89C51已经停产了。它的地位逐渐由功能更强大的89S51取代。所以为了与时代同步,跟上科技发展的步伐,我选择89S51(其实它就比89C51多一个看门狗功能)。

2.4 显示集模块方案选择

方案一:

采用步进电机驱动芯片控制的机械数字表显示(家庭电表常用)。选用可编程定时器/计数器8254-2,利用8254-2 的定时器/计数器,根据主控模块输入芯片的信息,采取频率的分频输出,从而控制步进电机使机械数字表现是里程和速度。方案二:

采用步进电机驱动芯片控制的表盘显示。选用可编程定时器/计数器8254-2,利用8254-2 的定时器/计数器,根据主控模块输入芯片的信息,采取频率的分频输出,从而控制步进电机使指针盘时仪表显示速度和里程。

方案三:

采用液晶驱动芯片控制的液晶显示版显示。选用液晶驱动芯片HT1621,根据主控模块输入芯片的信息,驱动液晶显示板显示里程和速度。

综上三种方案,机械数字表显示虽然显示直观但携带笨重,安装不便。表盘显示显示不直观,携带笨重,安装不便。只有液晶显示版显示携带轻便,安装方便,显示直观,样式前卫。所以选用方案三。

第三章系统设计

3.1 硬件电路设计

3.1.1 概述

本系统的硬件电路总的来说由三部分组成.即数据发生采集电路,单片机主控电路,LCD液晶显示电路.

本系统采用的是目前比较流行的ATMEL公司生产的AT89S51单片机作为控制核心。以霍尔元件为数据采集和数据整理的核心元件。在由HT1621驱动液晶显示版将里程和速度以十进制显示出来。

3.1.2 主要芯片介绍

AT89S51

AT89系列单片机是美国ATMEL公司于1994年推出的电可擦写8位单片机。在ATMEL的89S51系列的89S51与89C51功能相同。指令兼容。HEX程序无需任何转换可以直接使用。89S51(如图3.1)只比89C51增加了一个看门狗功能。该系列单片机是采用高性能的静态80S51 设计。由先进CMOS 工艺制造并带有非易失性Flash 程序存储器全部支持12 时钟和6 时钟操作。由于器件采用了静态设计可提供很宽的操作频率范围频率可降至0 ,可实现两个由软件选择的节电模式空闲模式和掉电模式空闲模式。冻结CPU,但RAM 定时器串口和中断系统仍然工作掉电模式。保存RAM 的内容,但是冻结振荡器导致所有其它的片内功能停止工作由于设计是静态的时钟可停止而不会丢失用户数据运行可从时钟停止处恢复。

图3.1 AT89S51管脚结构

特性:

与MCS—51指令系统兼容

存储器寻址范围:

64K 字节ROM 和64K 字节RAM

电源控制模式:

时钟可停止和恢复

空闲模式

掉电模式

两个工作频率范围:

6 时钟模式时为0 到20MHz

12 时钟模式时为0 到33MHz

LQFP, PLCC 或DIP 封装

扩展温度范围

双数据指针

3 个加密位

4 个中断优先级

6 个中断源

4 个8 位I/O 口

全双工增强型UART:

帧数据错误检测

自动地址识别

3 个16 位定时/计数器T0 T1 标准80C51 和增加的T2 捕获和

比较

可编程时钟输出

异步端口复位

低EMI (禁止ALE 以及6 时钟模式)

掉电模式可通过外部中断唤醒

看门狗定时器

表3.1 AT89S51极限参数

参数额定值单位

操作温度0~+70 或-40 ~

+85

贮存温度范围-65~ +150 ℃

EA/Vpp 脚相对于Vss 的电

0~+13.0 V

-0.5~ +6.5 V

其它任何脚相对于Vss 的电

每个I/O 脚的最大IOL 15 MA

1.5 W

功率损耗指器件表面的发热

而非器件的功耗

HT1621

HT1621是台湾Holtek公司推出的段码LCD驱东控制芯片,带同步串行接口,简单易用。是128 点内存映象和多功能的LCD 驱动器HT1621 的软件配置特性使它适用于多种LCD 应用场合包括LCD 模块和显示子系统用于连接主控制器和

HT1621 的管脚只有4 或5 条HT1621 还有一个节电命令用于降低系统功耗。无需外部振电路。

注:

/CS 片选, BZ /BZ 声音输出,/WR /RD DATA 串行接口,COM0-- COM3 SEG0 --SEG31 LCD输出,

/IRQ 时基或WDT 溢出输出。

图3.2 HT1621内部结构方框图

特性:

* 工作电压2.4 5.2V

* 内嵌256KHz RC 振荡器

* 可外接32KHz 晶片或256KHz 频率源输入

* 可选1/2 或1/3 偏压和1/2 1/3 或1/4 的占空比

* 片内时基频率源

* 蜂鸣器可选择两种频率

* 节电命令可用于减少功耗

* 内嵌时基发生器和看门狗定时器WDT

* 时基或看门狗定时器溢出输出

* 八个时基/ 看门狗定时器时钟源

* 一个32 4 的LCD 驱动器

* 一个内嵌的32 4 位显示RAM 内存

* 四线串行接口

* 片内LCD 驱动频率源

* 软件配置特征

* 数据模式和命令模式指令

* 三种数据访问模式

* 提供VLCD 管脚用于调整LCD 操作电压

管脚功能描述:

1. /CS

片选输入接一上拉电阻,当/CS 为高电平读写HT1621 的数据和命令无效, 串行接口电路复位当/CS 为低电平和作为输入时,读写HT1621 的数据和命令有效。

2 ./RD

READ 脉冲输入接一上拉电阻,在/RD 信号的下降沿HT1621 内存的数据被读到DATA 线上。主控制器可以在下一个上升沿时锁存这些数据

3. /WR

WRITE 脉冲输入接一上拉电阻在/WR 信号的上升沿DATA 线上的数据写到HT1621。

4 .DATA

I/O 外接上拉电阻的串行数据输入/输出。

5 .VSS

负电源; 地。

7. OSCI

6. OSCO

OSCI和OSCO 外接一个32.768KHz晶振用于产生系统时钟若用另一个外部时钟源, 应接在OSCI 上。若用片内RC 振荡器OSCI 和OSCO 应悬空。

8. VLCD

LCD 电源输入。

9. VDD

正电源。

10. /IRQ

时基或看门狗定时器溢出标志NMOS 开漏输出。

11. BZ

12. /BZ

声音频率输出。

13---- 16

COM0~COM3 O LCD 公共输出口。

17----48

SEG0~SEG31 O LCD 段输出口。

极限最大额定值:

供应电压-0.3V 0.5V 贮存温度-50----125摄氏度。

输入电压VSS-0.3V VDD+0.3V 工作温度-25----75摄氏度.

UGN3140

UGN3140是市面上极为常用的一种霍尔开关器件, 此种霍尔开关电路又称霍尔数字电路,由稳压器、霍尔片、差分放大器,斯密特触发器和输出级组成(见图3.4)。是检测受检对象上人为设置的磁场,用这个磁场来作被检测的信息的载体,通过它,将许多非电、非磁的物理量例如力、力矩、压力、应力、位置、位移、速度、加速度、角度、角速度、转数、转速以及工作状态发生变化的时间等,转变成电量来进行检测和控制。

表3.2 UGN3140霍尔开关电路器件的特性参数

在外磁场的作用下,当磁感应强度超过导通阈值BOP时,霍尔电路输出管导通,输出低电平。之后,B再增加,仍保持导通态。若外加磁场的B值降低到BRP时,输出管截止,输出高电平。我们称BOP为工作点,BRP为释放点,B OP-BRP=BH称为回差。回差的存在使开关电路的抗干扰能力增强。霍尔开关电路的功能框见图3.4表示集电极开路(OC)输出.它们的输出特性见图3.5。

图3.4 UGN3140霍尔开关电路器件的功能框图

图3.5 UGN3140霍尔开关电路器件的输出特性

3.1.3 数据采集模块电路设计

本设计的数据采集电路采用以霍尔元件为核心元件的电路,也是汽车测速仪

型号

VCC/V B op/mT BRP/mT BH/mT Icc/mA Io/mA Vo/sat Ioff/μA

UGN3140 4.5~

24

7~20

5~18

≥2

≤9

25

≤0.4

≤10

表中最常见的。

基本原理(霍尔效应):

如图3.7所示,在一块通电的半导体薄片上,加上和片子表面垂直的磁场B ,在薄片的横向两侧会出现一个电压,图中的VH,这种现象就是霍尔效应,是由科学家爱德文·霍尔在1879年发现的。VH称为霍尔电压。

这种现象的产生,是因为通电半导体片中的载流子在磁场产生的洛仑兹力的作用下,分别向片子横向两侧偏转和积聚,因而形成一个电场,称作霍尔电场。霍尔电场产生的电场力和洛仑兹力相反,它阻碍载流子继续堆积,直到霍尔电场力和洛仑兹力相等。这时,片子两侧建立起一个稳定的电压,这就是霍尔电压。

图3.7 霍尔效应

实际应用方法:

在霍尔线性电路背面偏置一个永磁体,如图3.8所示。图3.11(a)表示检测铁磁物体的缺口,图3.8(b)表示检测齿轮的齿。(a)为检测齿轮,(b)为检测缺口。(c)为转动产生的脉冲信号。用这种方法可以检测齿轮的转速。

(C)产生的脉冲

图3.8 霍尔器件测速应用 我设计的电路:

由于UGN3140集程度很高,所以电路十分简单(如图3.9),电源接5伏,2脚接地,3脚输出,只是在输出端和电源之间接了一个4.7千欧上拉电阻保障电压脉冲明显。输出端直接接MCU 的T0端(经试验电压匹配)。

123

UGN3140R2

4.7K

T0

图3.9 数据采集电路图

我的实际硬件安装:

由电机带动一个带磁铁的圆盘来充当信号发生装置(由于各方面限制),再在UGN3140后用胶固定一个霍尔专用磁体。然后就按电路图焊接。

3.1.4 主控模块

主控使用最常规的MCU,AT89S51。电路也是最常规的最小系统(如图3.10)。主要是晶振,电源,地,上电复位,还有一些外接I/O口。那个LED用来显示P1口的状态。

在这里因该把晶振时钟电路具体说明一下,外部晶振以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有直接要求,但电容的大小多少回影响振荡器频率的高低、振荡器的稳定性、起振的快速性和稳定性。外接晶振时,C1和C2通常选择30PF,晶振采用12MHZ。

图3.10 AT89系列最小系统

我设计的电路:

如图 3.11。这要比标准的最小系统还简单,这是因为本设计要求精度和条件比较宽松。这样使焊接更加容易,加大了成功系数。

晶振电路无需加入电容,因为电容的大小多少是影响振荡器频率的高低、振荡器的稳定性、起振的快速性和稳定性的,而本设计与单片机连接工作的主要都是高频条件下进行的,所以振荡器的稳定性、起振的快速性和稳定性的要求不高,所以不用电容。

图3.11 主控电路

上电复位也只加电容,因为不加电阻的情况下的电压和电流可以使MCU工作。电阻也只是起调节电流和电压大小的功能。

P2.0接片选,P2.1接WR,P2.2节串行数据线。

3.1.5晶显示模块

如图3.12为LCD驱动芯片电路图(网络标号1~34与LCD显示板连接)。

图3.12 HT1621 LCD驱动芯片连接电路

LCD驱动的晶振电路:

常规接法,32.768千赫的晶振接到OSCO,OSCI.两个电容20PF与晶振两端相连并接地。

LCD驱动电源电路:

在VLCD与VDD的电阻是为了在其两端产生一个电压降,是为了给显示板份偏压用的电压。C2是起滤交流电抗干扰作用的。

LCD显示部分:

关于偏压:

如图3.13所示,此图为笔段液晶动态显示及其电压波形图。由于液晶是在两极板之间只有当两极板之间的电压将达到一定值时才会出现黑影显示,但如图所示的极板分布情况,当使一个笔段显示时,另一个笔段(不希望显示的)也有可能显示(在多字符显示情况下),这就会造成显示失真。偏压就是解决这个问题的。将上面提到的那块电压降分成几份。按照最佳分压法分。这样即可以是指定笔段显示,又可以是非指定笔段达不到显示电压而不显示。

图3.13笔段液晶动态显示及其电压波形图

关于动态显示:

实现对于静态而言的,它输用两条或两条以上的公共背极线配合上极板的地址线,循环通电达到显示效果,由于循环速度快人言辨别不出来,给人的效果和静态一样,而且比静态的更省电。对于用在仪表,屏幕上的多字符液晶显示器而言,由于公共背极线的增多(图3.13与图3.14比较),可以大大减少地址线的数量。使连线更加容易。动态显示法可以将显示器件的能力发挥到最大。

图3.14笔段液晶静态显示

本设计用的LCD显示板的规格:

30条地址线,4条公共背极线,1/3偏压,1/4占空比。10个字符带小数点,还有4个冒号,5伏电压。每三条地址线控制一个字符。(由于本设计没有用到冒号和小数点,它们的真值位没写出,看上去好像是1/3占空比。)

3.2 软件设计

3.2.1 编程模拟器Keil C51介绍

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。

Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。

C51工具包的整体结构,如图(3.15)所示,其中uVision是C51 for Windows 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。下面介绍一下KEIL C51 V6.0的初级操作使用方法:

启动KEIL uVision2集成开发环境(以下简称IDE)后。

进行如下步骤:

1)按Project菜单,按New project建立一个新的项目,此时提示项目名称

保存的地址,建立一个test.uv2项目名称在C:盘根目录。

相关主题
文本预览
相关文档 最新文档