【汽车智能转速表和里程表设计10000字(论文)】_第1页
【汽车智能转速表和里程表设计10000字(论文)】_第2页
【汽车智能转速表和里程表设计10000字(论文)】_第3页
【汽车智能转速表和里程表设计10000字(论文)】_第4页
【汽车智能转速表和里程表设计10000字(论文)】_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录TOC\o"1-3"\h\u第一章绪论 1.1课题研究目的及意义 1.2单片机概述 1.3设计内容 第二章系统总体方案设计 2.1总体设计方案 第三章系统硬件的设计与实现 3.1主控芯片的选择 3.1.1单片机最小系统 3.1.2单片机核心芯片 3.1.3STC89C52RC单片机的工作模式 3.1.4STC89C52各部分功能 3.2复位电路 3.3液晶显示模块 3.4光电传感器的选择及原理 3.5DS1302时钟芯片 3.5.1DS1302芯片概述 3.5.2DS1302芯片原理 3.5.3DS1302的内存存取操作 3.6汽车车速里程表原理图 第四章系统软件的设计与实现 4.1软件系统设计 4.2显示设计 4.3速度处理部分 4.4电路仿真 4.4.1仿真软件简介 4.4.2仿真结果 总结 参考文献 附件源程序代码 第一章绪论1.1课题研究目的及意义21世纪的今天经济迅速发展,人们开始不断提高生活质量,汽车也不再是可望不可求的奢侈品,逐渐走进了寻常百姓家,成为人们日常的代步工具,与此同时,人们也开始对汽车的性能及安全保障等有了越来越高的要求。汽车普及度越来越高。在汽车高速行驶中,行驶中的故障是所有驾驶者最为担心和最难预防的,也是突发性交通事故发生的重要原因。所以这类车上安装汽车行驶里程速度记录仪具有十分重要的安全意义和较大的应用价值。此类记录仪的工作原理十分简单,具体而言,安装在车圈上的相关传感器将记录的转速、里程等数据进行转换为电信号后传输至主控芯片中,再由主控芯片进行相应的处理与分析,并将其传输至显示模块中,从而进行相应的显示。此时,我们便可对车辆的行驶里程、转速等车况信息进行清楚的了解和及时的掌握。本文所研究的汽车智能转速表和里程表对于驾驶员及时掌握车况信息、预防行驶途中的车辆故障具有十分重要的安全意义和较高的应用价值。利用该仪表壳以帮助驾驶员对车辆的行驶里程、行驶速度、行驶时间等进行清楚的了解和及时的掌握,并根据实际情况进行实时调整,从而有效防止在高速行驶的过程中车辆发生意外故障。此外,本文涉及的仪表在显示车辆行驶里程、转速等基本信息的基础之上,还有更多其他功能,比如显示日期时间等。1.2单片机概述单片机是一种典型的嵌入式微控制器,在设计之处,设计者们对单片机的定义便是一种具有高度集成化特性的小型芯片,具体而言,便是将CPU与各类外围的功能电路集成在小小的一片芯片上,从而使计算机系统从传统的大型设备逐步走向小型化、微型化,以便更好的适应各类对设备体积有严格要求的控制系统之中,取代体积较大的传统计算机控制,改为体积较小的单片机控制,在不降低控制效率的情况下,大幅缩减设备体积。在其问世之初,主要的应用领域是工业控制领域,该领域在单片机的加持之下,其生产效率得到了大幅提高。在这种“小型、集成”的设计思想下,Intel公司率先研制出了Z80微控制器,而随着该微控制器的问世,也标志着单片机开始在通用化的道路向前发展,从而与专用处理器开始“分道扬镳”。在上世纪末,主流单片机基本都是4位或者8位的,其中,最具代表性的、也是在各个应用领域被广泛应用且广受好评的单片机便是8031单片机,各个领域、各个行业的设计者们利用该型号的单片机设计出了各式各样、具有较高可靠性和运行稳定性的单片机系统。该单片机的问世,使各个领域、各个行业、各类产品对单片机的应用越来越多,如我们日常生活中常用的计算器、手机等,除此之外,在工业制造领域,如车辆制造等,也将各种型号的单片机应用在其各个零部件中,甚至出现了一个系统中使用了几十个单片机的“盛况”,开启了多单片机协同控制的局面。由此可见,单片机的已经渗透在了我们日常生活中的方方面面,为我们的生活提供便捷的服务。无论集成了何种功能,单片机的基本构成都是不会改变的,即CPU、I/O端口、存储等,这些组成部分和计算机的组成十分相似,但是,由于其进行了微型化的处理,因此,在体积被压缩的同时,性能也相应被压缩了一些,但与此同时,价格也得到了一定的“压缩”——与计算机相比,单片机的价格便宜了不少。虽然单片机的性能在某些方面被压缩了,但是,对于普通的设备而言,如家用电器等,往往已经足够“应付”其相应的功能需求和性能需求了。单片机对于这些应用设备而言,就相当于人体的大脑,是整个设备最为核心的控制部分。单片机在问世之初,其控制程序的编写一般都是采用较为低级的编程语言——汇编语言,虽然在功能实现方面不会造成阻碍,但是,汇编语言的可读性较差,晦涩难懂,会设计人员耗费大量时间在程序控制程序的编写上。相比而言,高级编程语言则具有较高的可视化程度,无论是不是该程序的编写者,都能够很容易的读懂程序每一句语句的意义和功能,而这恰恰是汇编语言无法企及的。但是,在早期的单片机控制程序编写中,大多数设计者还是使用着汇编语言,这主要是受到当时单片机内存的限制,具体而言,由于当时的单片机内存往往仅有几十Kb的大小,因此,无法完整的存储利用高级语言编写出来的程序,但汇编语言编写出来的程序却不会遇到这样的烦恼,因此,在单片机的内存得到有效扩展之前,设计者们只能选择汇编语言来进行控制程序的编写。1.3设计内容本文设计的汽车智能里程表和转速表将围绕单片机和光电传感器这两个核心器件展开,具体而言,传感器用于接收脉冲信号,并将其转换为电信号后传输至微控制器中进行处理与分析,从而得到相应的里程和转速数据,微控制器再将上述两个数据传输至显示模块进行相应的显示。`第二章系统总体方案设计2.1总体设计方案本文设计的汽车智能里程表和转速表将围绕单片机和光电传感器这两个核心器件展开,具体而言,传感器用于接收脉冲信号,并将其转换为电信号后传输至微控制器中进行处理与分析,从而得到相应的里程和转速数据,微控制器再将上述两个数据传输至显示模块进行相应的显示。因此,本文的设计思路主要包括以下几点:①将光电传感器安装至汽车的钢圈上;②光电传感器输出为脉冲信号,一个脉冲中断一次;③传感器的每一个脉冲信号对应于汽车钢圈每转动一周,而主控芯片接收到一个脉冲信号便会产生一个中断,以此来进行计数,若将中断次数用m表示,钢圈周长用L表示,则汽车行驶的历程可用L*m进行表示;④根据主控芯片的内部时钟以及③中计算得到的汽车行驶里程,即可计算得到当前的汽车行驶速度。本文设计的汽车智能里程表和转速表系统的总体设计框图如图2.1所示。图2.1系统框图第三章系统硬件的设计与实现3.1主控芯片的选择本系统的控制器核心部件为单片机,而目前单片机具有多种型号,其具备的功能以及使用成本、开发的难易程度也都不尽相同。针对不同系统的不同功能需求,应当综合考虑各方面的因素,来选择最为合适单片机。本系统在对单片机进行选择时,应确保其具有较强的开发能力,且运算速度能够达到本系统的性能需求。通过综合考虑,提出了以下三种方案。方案一:选用PIC16F877A,该芯片集成度高,功能强大,片内资源也十分丰富,但是,该芯片的开发极具挑战性,不是一开发人员能有驾驭的,而且成本颇高,主要应用于高精尖工业产品。方案二:选用性能好、成本低廉且低功耗的嵌入式芯片——STM32,该芯片具备高度集成化的设计,因此极大缩减了外围电路的规模,与此同时,芯片程序模块化可扩展性强,性能高,而丰富的功能借口使该芯片能够很好的与无线灌溉系统的功能需求相匹配。方案三:主控芯片选用STC89C52微控制器,该芯片在保障高性能的同时,具有较低的功耗。与传统的51单片机相比,包含了51单片机的优点,同时对其功能进行了完善与提高。从以上可以看出,STC89C52虽说是微控制器芯片,同样也是作为计算机必须具备的主要部分而启用的,所以实际上它已经是一个简单的微处理器系统了。综合上述的描述,考虑到系统设计成本以及开发的难易程度最终决定采用宏晶科技的STC89C52单片机作为主控芯片。3.1.1单片机最小系统主控芯片选用的是STC89C52微控制器,该芯片在保障高性能的同时,具有较低的功耗,配有8K字节大小的可编程Flash存储器。与此同时,该型号单片机上配备了256个RAM驱动器,其中前128个驱动器可注册为用户注册表,而专用注册表则占用最后128个驱动器。因此,内部数据存储通常指前128个驱动器,或者简单地说,指随机访问的内部存储,用于存储可读和可写的数据。此外,该型号单片机共有4个8位输入输出端口(P0、P1、P2、P3)。不仅可以和同步转换,还能够实现全双工异步通信收发器的强大能力。因此,可以完全满足本文所设计的无线灌溉系统对主控芯片的需求。STC89C52微控制器的最小系统如图3.1所示。图3.1单片机最小系统图复位电路是微控制器外围电路的其中一个重点,如图3.2所示,电容和电阻大小分别为10uF和10K。将高电平引入单片机的RST引脚,并持续2个机器周期,单片机将会进行复位操作,除此之外,按键手动复位可分为电平和脉冲两种复位方式,其中的电平复位就是通过RST接口接通电VCC进行实现的。当按下复位电路的复位按键后,单片机将恢复到一个特定的初始状态,并从该初始状态开始重新运行。当RST/VPD或RS1T引脚输入了持续两个机器周期的高电平时,单片机将会识别到复位信号,从而在第二个机器周期开始执行复位操作。3.1.2单片机核心芯片图3.2STC89C5RC实物图STC89C521单片机具有低功耗、高性能等优点,与传统的511单片机相比,包含了511单片机的优点,同时对其功能进行了完善与提高。(1)中央处理器(CPU)微控制器的重要组成部分为中央处理器,主要进行计算和相关控制程序的执行。该型号单片机可对八位二进制数或者代码进行处理。(2)内部数据存储器(内部1R1A1M)该型号单片机上配备了2561个R1A1M1驱动器,其中前1281个驱动器可注册为用户注册表,而专用注册表则占用最后128个驱动器。因此,内部数据存储通常指前128个驱动器,或者简单地说,指随机访问的内部存储,用于存储可读和1可写的数据1。(3)内部程序存储器(内部1ROM)STC89C521具有4KB的ROM1掩码,称为程序存储器或内部1ROM,用于存储程1序、原始数据或表格。(4)定时/1计数器STC89C521芯片的组成包括16位定时/计数器两个,主要用来进行数据指令1的定时与计数,从而计算机执行指令是其定时或计数结果。(5)并行I/O口MCS-51共有4个8位输入输出端口(P0、P1、P2、P3),可以进行并行数据输入输出。(6)串行口STC89C521单片机具有全双工串行端口,能够进行与外部设备之间的数据传1输。不仅可以和同步转换,还能够实现全双工异步通信收发器的强大能力。(7)中断控制系统该型号单片机具有强大的中断功能,可满足系统控制程序在执行过程中的相关需求。此外,该单片机有五个中断源,即一个串行中断、两个同步/1计数中1断和两个外部中断。所有中断分为高优先级和低优先级两种。(8)时钟电路在STC89C52芯片系统设置下,其震动频率一般分为6Mhz和12Mhz两种,在该芯片内部的时钟电路会对半导体晶体和电容进行微调,进而产生单片机脉冲序列。3.1.3STC89C52RC单片机的工作模式该主控芯片的工作模式可分为三类,其一为掉电模式,该模式下功耗为0.1A,且外部中断可唤醒该模式;其二为空闲模式,该模式下的功耗低至12mA;其三1为正常工作模式,该模式下功耗大约在4~71mA1。3.1.4STC89C52各部分功能STC89C52共有四十个引脚,各引脚的定义如图3.3所示。图3.3STC89C52RC引脚图该芯片的各引脚的功能:STC89C52主控芯片相关引脚设置(1)电源引脚VCC:+5V电源输入端口GND:地线端口(2)晶振引脚XTAL1:外接晶振输入端口XTAL2:外接晶振输出端口(3)控制引脚RST/VPP:1系统重置端口,实现对为微控制器的重置。ALE/PROG:1地址锁存允许端口PSEN:1外部存储器读取端口EA/VPP:11外部程序存储器通过低电平电位来读取指令,内部程序存储器通过高电平电位来读取指令。(4)可编程输入/1输出引脚(132根)STC89C521单片机拥有有4组、共32可编程输入/1输出端口,具体输入、输出1端口为P01、P11、P21和1P3,其中,P01为18位双向I/O端口,P1~P3为位准双11向1I/O1端口。P3端口的其他功能如表3.11所1示。表3.1P3端的其他功能3.2复位电路将高电平引入单片机的RST引脚,并持续2个机器周期,单片机将会进行复位操作,除此之外,按键手动复位可分为电平和脉冲两种复位方式,其中的电平复位就是通过RST接口接通电源VCC进行实现的。当按下复位电路的复位按键后,单片机将恢复到一个特定的初始状态,并从该初始状态开始重新运行。当RST/VPD或RST引脚输入了持续两个机器周期的高电平时,单片机将会识别到复位信号,从而在第二个机器周期开始执行复位操作。该主控芯片的复位电路如图3.4所示。。图3.4复位电路3.3液晶显示模块显示输出电路选择了顺应时代发展的具有压倒性优势的LCD1602液晶显示器,该液晶屏可对多种符号、数字、字符进行显示,因此,可以为用户呈现出更加丰富、多种多样的信息。而开发人员也可根据实际需求,设置需要显示的相应信息。LCD1602采用并行或串行数据传输,控制简单,常用于低功耗设备中。LCD1602有两种控制方案——串行或者并行。串行使用的接口少,但是软件设计代码复杂,需要通过大量的代码去操作。并行数据输入控制方案可以更快的完成对液晶的控制,软件操作简单,所以使用并行数据输入控制方案。通过对显示数据在存储器中保存时与显示器上显示微店对应位置的相关性的控制,从而达到对于显示器的设计及控制效果。1602液晶显示模块遵循传统液晶显示模块的构成规则,由左右两部分独立液晶屏组成,每一个屏幕中分别配套各自的RAM数据存储装置,对于不同独立液晶屏,分别受不通过的片选信号控制。此外,为优化用户设计过程,一些厂家进行模块改良,减少片选信号为一个,增加模块中的电路数量,从而使得使用更加人性化。在对于液晶屏进行位点点亮控制的过程中,首先需要根据位点地址进行片选信号的选择,如点亮40列的位点,由于其列点数为40,小于64,因此选择左半边屏幕的片选信号,从而进行点亮控制。LCD16021的电路原理图如图13.51所示。图3.5LCD液晶显示电路3.4光电传感器的选择及原理光电测速传感器是一种以光电转换器件为核心的测试传感器,按照接受光1信号的不同形式,可分为透光式和反光式两种。透光式光电测速传感器的组成主要分为三大模块,其一为有孔或者缺口的圆盘,其二为光源,其三为光电管。该类型传感器的具体工作原理为:圆盘固定于车轴上并随之同步转动,此时,光源发射的光信号只能当圆盘转至其孔或缺口与光源、光电管呈三点一线时才能透过去,照射至光电管上,光电管将此刻照射过来的光信号转换为电信号,从而输出一个脉冲。而当圆盘上的孔或缺口与光源、光电管之间不再同一直线上时,光线无法透过圆盘照射到光电管,此时,光电管因为没有接受到光信号从而不会产生电信号的输出。根据圆盘上孔或缺口的数量不同,圆盘每转一周所输出的脉冲信号个数也会随之不同,但两者的在数量上时相等的。因此,当圆盘上的孔或缺口个数为60时,圆盘旋转一周,即车轴旋转一周,传感器便会输出60个脉冲信号。反光式光电测速传感器的工作方式与上文所述的透光式的类似,都是将采集到的光信号转化为电信号之后,传输至主控芯片中,但不同之处在于反光式的是利用反射光来进行测量的,因此,光源和光电管将安置在转盘的同一侧。而在反光材料的选择上,往往是将需要反光的部位图上白漆。通常情况下,光源与反光部位的相对距离一般在5~15m。图3.6光电传感器原理图光电传感器从本质上来说就是一个红外线传感器,其中的原理是利用了红外线探测,当红外线探测到障碍物时,将导致接受到的光信号增强,从而输出高电平;反之,则输出低电平。光电传感器模块的实物如图3.7所示,该模块虽然构造十分简单,但是,其测量精度很高,且具有较宽的频响范围以及较强的康外界干扰能力,不仅如此,该模块可测量的参数很多、形式灵活多样等特点,基于以上特点,光电传感器在测量检测与控制中非常广泛。图3.7光电传感器3.5DS1302时钟芯片3.5.1DS1302芯片概述DS1302作为一款简洁、小巧时的钟芯片,其在引脚设置上较为简单明了,共有8只引脚,因此,在实际应用中,也十分容易上手,因此,本文选用该芯片作为本系统外接时钟电路的核心芯片。该芯片可以为使用者提供从“秒”到“年”的全部时间信息,可谓是相当的丰富。在提供信息丰富之余,其硬件电路的设计则十分简单——只需要占用主控芯片的三个端口,即复位端口、数据端口、串行时钟端口,即可实现主控芯片与该时钟芯片之间的数据通信。此外,该芯片对工作电压的范围要求也不是非常的严苛,可在+2~+5V范围正常工作。不仅如此,在其正常工作期间,能耗也是十分低的,仅有0.5W左右。该时钟芯片的引脚定义如图3.8所示。图3.8DS1302引脚图DS1302芯片每个引脚的作用如表3.2所示。表3.2DS1302各引脚功能3.5.2DS1302芯片原理DS1302时钟芯片主要包括六个模块,即控制模块、移位寄存器模块、复位模块、内部存储模块、振荡电路模块以及时钟显示模块。其中,控制模块又包含有VCC1、VCC2、GND这三个端口;移位寄存器模块又包含有I/O和SCLK这两个端口;复位模块则包含有RST这一个端口。上述六个模块在该时钟芯片中各司其职,分别实现不同的功能,但其共同目标则是提供准确的、丰富的时钟信息。具体而言,在芯片上电之初,则由复位模块来对芯片进行初始化,二移位寄存器模块则将芯片内的数据存储至其相对于的位置,并在需要读取时随时调用。而内存模块则拥有高达512的容量,最多可存储512个数据,因此,对于时间信息而言绰绰有余。3.5.3DS1302的内存存取操作当利用DS1302时钟芯片来实现时间显示的功能时,其实质就是调用、读取移位寄存器模块的中相应的数据。移位寄存器模块中有多达十个寄存器,可分别对秒、分钟、小时、星期、日、月、年等数据进行存储,且配有写保护和涓流充电,具体的控制字符操作如表3.3所示。表3.3时钟芯片控制字各寄存器范围D7D6D5D4D3D2D1D0秒00~59CH十位个位分00~590十位个位小时01~12或00~2312/240A/PHR个位日01~3100十位个位月01~120001/0个位星期01~070000周几年01~90十位个位写保护WR11111111涓流充电/TCSTCSTCSDSDSRSRSRS上表中各个寄存器的具体使用方法如下:(1)小时寄存器的D7位用于控制12小时制或24小时制,具体而言,D7为1则为12,小时制,D7为0则为24小时制;D5位用于控制AM和PM,具体而言,D5为1时为PM,D5为0时为AM。(2)分钟寄存器D7位用于控制是否正常计时,具体而言,只有当D7为0时,才能正常计时。(3)秒钟寄存器D7位为暂停位,具体而言,只有当D7为0时,才会正常计时。(4)日寄存器与秒钟寄存器的使用方式一致。(5)月寄存器与秒钟寄存器的使用方式一致。(6)年寄存器(7)控制寄存器当D7位为0时,开启写保护功能,各个寄存器均无法对存储器模块进行相应的写操作。因此,若要是时钟芯片正常工作,则应当将D7位设置为1。3.6汽车车速里程表原理图本文设计的汽车智能里程表和转速表的原理图如图3.9所示。该系统主要由前文所述的主控芯片及其外围电路、复位模块、液晶显示模块、光电传感器模块、DS1302时钟模块等各个功能模块共同组成。图3.9汽车行驶里程速度表原理图第四章系统软件的设计与实现4.1软件系统设计图4.1系统流程图本文设计的汽车智能里程表和转速表系统软件工作流程如图4.1所示。在系统软件运行伊始,首先需要做的则是进行相应的初始化操作,这不仅仅只针对主控芯片的初始化,还需要对液晶显示模块、时钟模块等各个功能模块进行初始化。在完成初始化之后,则开始正常工作,安装在汽车钢圈上的光电传感器将接收到的光信号转换成电信号,并输出为脉冲信号,一个脉冲中断一次;传感器的每一个脉冲信号对应于汽车钢圈每转动一周,而主控芯片接收到一个脉冲信号便会产生一个中断,以此来进行计数,若将中断次数用m表示,钢圈周长用L表示,则汽车行驶的历程可用L*m进行表示;根据主控芯片的内部时钟以及③中计算得到的汽车行驶里程,即可计算得到当前的汽车行驶速度。软件设计的主程序请参见附录。4.2显示设计LCD1602的显示函数设计主要参照液晶屏厂商提供的相关设计说明来进行,并严格按照其时序进行编写。具体而言,首先读取需要显示的部位的地址,然后根据该地址将数据一次写入,每次写入后,地址自动加一。显示函数流程图如4.2所示。显示模块的软件程序代码请参见附录。图4.2显示流程图4.3速度处理部分本文针对汽车的行驶速度还在显示转速的功能基础之上,增加了超速报警功能,即若主控芯片检测到当前车速超过程序预先设定好的安全车上阈值上限时,将会向蜂鸣器发送控制指令,从而触发蜂鸣器进行报警,并在显示屏中显示当前的实时车速,以此来保障驾驶员的生命财产安全。车速处理的软件设计流程图如图4.3所示,其具体程序代码请参见附录。图4.3速度处理流程图4.4电路仿真4.4.1仿真软件简介本文的软件开发采用C语言以及KeilμVision4编程软件来进行控制程序的编写、调试、下载、烧录等操作。在编程语言方面,相较于汇编语言,C语言在程序编写方面独具优势,不仅容易上手,而且可读性更强,维护方面也更具优势。当C语言与KeilμVision4编程软件相结合时,系统软件的设计便已经事半功倍了。Protues仿真软件则主要针对硬件电路进行仿真实验,广泛用于各大高校、科研院所以及电子设计行业。该仿真软件能够为设计人员在实际焊接电路之前进行电路的模拟仿真,以确保电路在逻辑、接线等方面没有任何错误,从而使后续的实际电路PCB设计及焊接能够顺利进行。因此,该软件能够为设计者们节省出大量的设计时间,避免了设计者们走很多不必要的弯

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论