毕业论文基于单片机的胎压测试系统的设计与实现.doc_第1页
毕业论文基于单片机的胎压测试系统的设计与实现.doc_第2页
毕业论文基于单片机的胎压测试系统的设计与实现.doc_第3页
毕业论文基于单片机的胎压测试系统的设计与实现.doc_第4页
毕业论文基于单片机的胎压测试系统的设计与实现.doc_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计(论文) 题 目:基于单片机的胎压测试系统的设计与实现系 别: 专 业: 学生姓名: 指导教师: 2014年 05月 15 日iv摘 要本文完成了胎压测试系统的设计与实现。实现了测试汽车轮胎压力的功能,由三种不同的计量单位通过lcd显示给用户,如果超出预设阈值就会发出警报提醒司机安全行驶。另外,在正常状态下可实时显示日期和时间,有断电保护功能,并可对日期和时间进行设置。首先硬件采用气压传感器mpx4105、stc5a60s2单片机、ds1302 时钟电路和1602lcd等。通过气压传感器mpx4105获取与汽车胎压相对的模拟电压值,经过v/f变换输入到单片机进行处理,最终由通过lcd显示电路显示相应气压值。另外,ds1302时钟电路与单片机连接实现了lcd显示日期和时间,并可断电保护的功能。其次采用c语言作为开发工具软件,在keil c环境下进行了对单片机各个端口以及定时器工作方式和串行口工作方式进行设置,并对定时器和串行口进行初始化用以实现对单片机和各个功能模块芯片之间通讯和联络的设定,以及分配地址空间交代程序中各个变量等的设计和编码。最后完成系统的可靠性、稳定性等性能的测试。压力超出阈值会自动报警提醒驾驶员安全行驶。不工作状态下,可显示日期与时间并有断电保护功能。具有可携带、测试操作方便、价格低廉等优点。关键词:气压传感器;胎压;单片机 abstractthis paper completed a tire pressure measurement system. it realizes the function of the test tire pressure. it from three different units of measurement through the lcd display to the user, if you exceed a preset threshold alerts will remind drivers to drive safely. in addition, in the normal state it can be real-time display date and time. there is power failure protection and on the date and time settings.first of all, hardware used pressure sensor mpx4105, stc5a60s2 single chip, ds1302 clock circuit, 1602lcd and so on. the pressure sensor mpx4105 and automotive tire pressure relative to the analog voltage value, after the v / f transform the input to the microcontroller for processing, and ultimately by the circuit through the lcd display shows the corresponding pressure values. besides, ds1302 clock circuit and microcontroller connection to display the date and time and power protection. secondly, as a development tool with c language software, keil c environment for all ports of microcontroller and timer mode set the serial port work, it initializes the timer and serial port to achieve each function module chip microcontroller, it explains the program address space allocation of the variables such as the design and coding. finally, to complete the system reliability, accomplished stability and other properties of the test. pressure above the threshold will automatically alarm to remind the driver drive safely. when it does not work, it can display the date and a power-off protection. the merits are portable, easy to operate, low price and so on.keywords: pressure sensor; tire pressure; mcu 目 录绪 论11 系统的总体设计51.1 总体设计思路51.2 硬件设计部分51.2.1 a/d转换61.2.2 数据处理61.2.3 气压传感器的选择61.2.4 三端稳压器的选择71.3 软件设计部分72 系统的硬件设计92.1 硬件设计思路92.2 单片机外围电路92.2.1 复位电路92.2.2 振荡电路102.3 电源部分112.4 按键部分112.5 显示部分132.6 报警电路部分132.7 元件简介142.7.1 单片机stc5a60s2简介142.7.2 气压传感器mpx4105简介162.7.3 mc78l05电源电路简介172.7.4 ds1302时钟电路简介182.7.5 键盘控制模块简介192.7.6 1602字符型lcd简介192.7.7 1602lcd的指令说明及时序212.8 pcb的制作223 系统的软件设计233.1 软件设计思路233.2 如何由频率计算出气压值243.3 程序流程图244 系统的调试254.1 硬件调试254.1.1 调试步骤254.2 软件调试254.2.1 keil软件简介254.3 整体调试264.3.1 系统仿真264.3.2 实现结果27结 论29致 谢30参考文献31附录a 英文原文32附录b 译 文35附录c 系统设计原理图及pcb图37附录d 程序清单39附录e 元件清单63附录f 实物图64绪 论如今,随着高速公路网的蓬勃兴起,交通的日趋发达,车辆行驶速度的不断攀升,交通隐患的防范问题迫在眉睫,如因车胎漏气和爆炸等原因造成的交通事故,很多是由轮胎的工作温度过高或者不合理胎压引起的。研究汽车轮胎胎压计,就对现代汽车行驶时的经济性、安全性和操纵稳定性具有尤为重要的现实意义。高速公路的速度和便利,改变了人们的时空观念,拉近了地域距离,改善了人们的生活方式。但是随之而来的高速公路恶性交通事故却令人震惊,已经引起世界各国的强烈关注和重视,并开始讨论或采取相应防范措施。据2002年美国汽车工程师学会调查,全美平均每年有26万起交通事故是由于轮胎气压低或渗漏造成的;而在高速公路上发生的交通事故有70%是由于爆胎引起的;此外,每年75%的轮胎故障是由于轮胎渗漏或充气不足引起的。统计表明:交通意外增加的主要原因是高速行驶中因轮胎故障引起的爆胎。另据统计,在中国,46%的高速公路交通事故是由于轮胎故障引起的,这其中仅爆胎一项就占事故总量的70%,这是多么惊人的数字!在汽车的高速行驶过程中,轮胎故障是杀伤力最大也是最难预防的事故隐患,是突发性交通事故发生的重要原因。如何解决轮胎故障、怎样防止爆胎,已成为全球关注的首要问题。2001年7月,为响应美国国会对车辆安装tpms 立法的要求,美国运输部和国家高速公路安全管理局(nhtsa)联合对现有的两种轮胎压力监测系统(tpms)进行了评价,报告第一次将 tpms 作为专用词汇,并确认直接式tpms优越的性能和准确的监测能力。由此tpms汽车轮胎智能监测系统作为汽车三大安全系统之一,与汽车安全气囊、防抱死制动系统(abs)一起被大众认可并受到应有的重视1。 随着高新技术的发展和现代汽车不断趋向高性能化,汽车用的轮胎也从长期的性能时代,开始进入功能化的新时期。当然,现代汽车的安全配置也在不断得到完善,如安全带、安全气囊、防撞杆等被广泛运用,不过这些都是属于交通事故发生后,才能对人、车起到保护作用的被动安全装置。然而轮胎爆胎预警系统,则不同于上述的装置,它在轮胎一出现危险征兆时就能够及时发现并同时报警,最大限度地将事故消灭在萌芽状态,从而极大地提升了车辆高速行驶的安全性,这一优势在高速公路上表现更为明显。对轮胎爆胎进行预警是保障汽车安全行驶的关键所在,已成为汽车行业研究的热点问题。在轮胎爆胎预警系统及相关技术的研究发面,美国、日本、德国、法国、英国在近几年都取得了突破性的进展,形成了性能和功能完善的轮胎压力监测系统产品。据中国汽车工业协会相关市场调查表明,国内轮胎爆胎预警系统的相关产品有推出,但都是技术性能不甚完善简易系统产品,存在以下缺点:(1)系统工作寿命极短;(2)系统在低温或高温环境下失效;(3)工作可靠性较差。而性能可靠、功能完善、技术成熟的产品均是一些国外知名公司的品牌产品,但价格较为昂贵。因此,研制性能可靠、功能完善并且价格能为当前多数国内消费者所接受的轮胎爆胎预警技术产品很有必要。国内汽车行业正迫切需求成熟的轮胎爆胎预警系统及产品的投放市场以解决因轮胎爆胎而引起的行驶安全性问题。tpms (轮胎压力监测系统)的作用是在汽车行驶过程中对轮胎气压进行实时自动监测,并对轮胎漏气和低气压进行报警,以确保行车安全2。 工作原理:轮胎的轮毂上安装一个内置传感器,传感器中包括感应气压的电桥式电子气压感应装置,它将气压信号转换为电信号,通过无线发射装置将信号发射出来。 tpms通过在每一个轮胎上安装高灵敏度的传感器,在行车或静止的状态下,实时监视轮胎的压力、温度等数据,并通过无线方式发射到接收器,在显示器上显示各种数据变化或以蜂鸣等形式提醒驾车者。并在轮胎漏气和压力变化超过安全门限(该门限值可通过显示器设定)时进行报警,以保障行车安全 。 接收器也根据供电方式分为两类。一种是通过点烟器或者接汽车电源线的方式供电,大部分的接收器都是这种;另一种是通过obd插口供电,即插即用,而且接收器是hud抬头显示器,如台湾s-cat的tpms就是这种。 驾驶者可以根据显示数据及时地对轮胎进行加气或放气,发现渗漏可以及时处理,让意外能在小处化解。 功能:(1) 全时监测轮胎压力; (2) 轮流显示当前轮胎压力及温度;(3) 高压低压报警,高温报警;(4) 快速漏气报警;(5) 主机电池低电量提示;(6) 停车时显示屏自动关闭;(7) 电池供电时主机可自动进入停车省电模式;(8) 可根据车型及轮胎位置设定相应的标准压力值。 tpms (tire pressure monitoring system) 轮胎压力监视系统,主要用于在汽车行驶时实时的对轮胎气压进行自动监测。目前各国研制的轮胎气压报警系统主要分为两种类型:一种是间接式,它通过汽车abs(防抱制动系统)的轮速传感器及轮胎的力学模型,间接求出轮胎气压,以达到监视轮胎气压的目地;另一种是直接式,它利用安装在每一个轮胎里的以锂离子电池为电源的压力传感器来直接测量轮胎的气压,并通过无线调制发射到安装在驾驶台的监视器上,而监视器随时显示各种轮胎气压,驾驶者可以直观地了解各个轮胎的气压状况,当轮胎气压太低或有渗漏时,系统就会自动报警,确保行车安全3。汽车高速行驶中,由于轮胎的压力不正常而造成爆胎是驾驶员难以预防的,也是突发性和恶性交通事故发生的重要原因。引起轮胎漏气和爆胎的原因主要有:(1) 轮胎工作温度过高;(2) 轮胎气压过大;(3) 轮胎使用时间过长;(4) 轮胎负荷过大;(5) 汽车行驶速度过快4。为使汽车能够处于安全的驾驶状态,驾驶者必须在行车过程中实时了解轮胎的超压、欠压、温度等工作状态,我们设计的基于单片机的汽车轮胎胎压计具有以下的功能:(1) 实时监测轮胎的压力情况;(2) 当某个轮胎处于欠压状态时,相应的欠压报警指示灯亮。当汽车轮胎压力处于非正常状态运行时,通过报警来通知驾驶员,防止轮胎爆胎的发生,以达到安全驾驶的目的。由于汽车的迅速普及,人们对驾驶安全性与舒适性的追求越来越高,随车携带数字气压计可以保证人们安全驾驶,有效地降低由于爆胎导致的交通事故发生地概率。而服务商需要的是一种物美价廉的数字气压计,以满足有车一族的需要5-6。本课题设计的是一种基于单片机的数字气压计,主要针对的是汽车轮胎胎压计的设计。汽车轮胎胎压计是通过气压传感器获取与汽车轮胎胎压相对应模拟电压值,并经过v/f变换输入到单片机进行处理,从而实时显示相应气压值。由于使用胎压计有一定的参数要求,设计数字气压计时要仔细了解这些参数以防止使用不当而损坏胎压计。汽车轮胎胎压计采用高性能绝对压力传感器,屏幕显示出高准确度的汽车轮胎胎压,实现了对轮胎压力的实时监测7。当汽车轮胎压力处于非正常状态运行时,通过报警来通知驾驶员,防止轮胎爆胎的发生,以达到安全驾驶的目的。本课题设计充分利用了mpx4105芯片的功能,它满足数字气压计采集、控制和数据处理的需要,可提高系统稳定性和抗干扰能力。同时,由于大量的工作由单片机软件来实现,简化了设计电路,且调整方便、可兼顾的指标多,从而大大降低了成本。另外,作为一种功能强大的平台,该数字气压计具有很好的功能扩展性,具有精度高、稳定性好、功能易于扩展等优点,为仪器及电子产品设计后续技术升级以进一步满足市场的需要提供了条件。本文完成了胎压测试系统的设计与实现。全文共分五个章节:第一部分是绪论,介绍国内外发展现状和实现意义;第二部分综述总体设计思路和设计方案,包括硬件设计和软件设计等;第三部分是硬件设计部分,具体阐述硬件实现过程,包括各元件简介以及模块功能;第四部分介绍软件设计部分,包括设计思路、频率与气压的换算以及程序流程图;第五部分简单介绍总体实现过程包括硬件的测试和软件测试以及实现结果。全文按照总体方案的设计,首先对硬件各模块完成了功能设计,其次利用软件程序设计连接各功能模块、完善功能,然后通过仿真测试,最终整体实现采集数据、显示胎压、险情预警并在正常状态下可实时显示日期、时间等功能。1 系统的总体设计1.1 总体设计思路由于测量时被测气压由气压传感器转换为模拟的电压输出,此输出信号不能直接交由单片机处理。因此,需要经过a/d转换模块把气压传感器输出的模拟电压信号转换为数字脉冲(其频率随输入电压呈线性变化)。通过单片机接收该脉冲信号,得到单位时间内获得的脉冲数,依据电压与频率的线性关系式计算出所对应的实际气压值,最后通过lcd显示电路显示给用户。系统总体框图如图1.1所示:图1.1系统总体框图通过对单片机各个端口的设置,以及定时器工作方式和串行口工作方式的选择,并对定时器和串行口进行初始化用以实现对单片机和各个功能模块芯片之间通讯和联络的设定。在主程序模块中关键是使单片机初始化,以及分配地址空间交代程序中各个变量等。其中最为关键的是连接子程序的各个功能模块。1.2 硬件设计部分本系统采用集成的单片机主控,通过压力传感器将气压信号送入带a/d转换的stc5a60s2单片机中,以及在相关模拟分立元件的辅助下进行a/d转换以及其它的数据处理,将处理的结果送显示部分进行显示。另外在设计过程中,除了以上主要功能外,本系统还加入了显示时钟,可时时显示时间并有断电保护,增加了硬件的趣味性和美感。使数字气压计功能更加完善,外观更加完美。 1.2.1 a/d转换单片机接受传感器的电压值为模拟信号,它要和a/d转换模块的锯齿波发生装置发送过来的标准模拟信号相比较,即通过单片机引脚进行比较,同时开发定时器0,当待测模拟信号超过标准模拟信号时,i/o引脚信号将会发生变化,此时定时器0的值通过转化就得到了相应的数字信号。1.2.2 数据处理数据处理模块主要是对a/d转换模块的数据进行多次采集,并且对采集的数据进行处理,此处理过程主要是对采集的数据进行初值定义以及相应的移位处理,并且把处理好的数据送入相应的缓冲区,为后面的显示模块作好准备8。1.2.3 气压传感器的选择气压传感器对于数字气压计设计的实现至关重要,需要综合实际的需求和各类气压传感器的性能参数加以选择。气压传感器的主要性能参数如下:(1) 测量范围即所能测量的大气压力范围,单位为k pa。(2) 测量精度测量结果(电流或电压)的精度。(3) 温度补偿范围一般要选用具有温度补偿能力的气压传感器,因为温度补偿特性可以克服半导体压力敏感器件存在的温度漂移问题。(4) 测量的是否是绝对气压值绝对气压值对应的即是实际的气压值,显然要实现数字气压计需要测量绝对气压值的气压传感器。数字气压计显示的是绝对气压值,同时为了简化电路,提高稳定性和抗干扰能力,要求使用具有温度补偿能力的气压传感器9。经过综合考虑,我们选用美国摩托罗拉公司的集成压力传感器芯片mpx4105作为气压传感器。mpx4105可以产生于所加气压呈线性关系的高精度模拟输出电压,它具有以下特点:(1) 供电范围:4.855.35v,典型值为5.1v。(2) 测量范围:15105kpa。(3) 工作温度范围:085。(4) 温度补偿范围:-40+125。(5) 测量精度为1.7%vfss。(6) 最低气压对应的输出电压voff为0.1840.428v,典型值为0.306v;最高气压对应的输出电压voff为4.8044.988v,典型值为4.896v;满刻度输出电压间距vfss的典型值为4.590v。(7) 理想的微处理器接口。1.2.4 三端稳压器的选择本设计中的外部电源是+9v,但是单片机、mpx4105等其他芯片需要+5v供电,因此还需要设计专门的供电电路以满足整个系统的电源需求。选用摩托罗拉公司的三端低电流线性稳压芯片mc78l05作为电源电路。其输入电压范围:2.624v,输出+5v 固定电压;具有内部短路电路限制和热过载保护功能,无需外部元器件。1.3 软件设计部分本系统通过对单片机各个端口的设置,以及定时器工作方式和串行口工作方式的选择,并对定时器和串行口进行初始化用以实现对单片机和各个功能模块芯片之间通讯和联络的设定。在主程序模块中我们关键是使单片机初始化,以及分配地址空间交代程序中各个变量等。其中最为关键的是连接子程序的各个功能模块。首先设置计时器0和计数器1,当计数器处于0状态时返回,当处于1状态时进入定时器0服务子程序。et0=0时开始计数,然后判断是否计数为10,为10就设定et0=1、tr1=1,不为10则设定tr1=0、计数器复位,之后计算气压值、调用显示函数,再返回et0=1、tr1=1。流程图如图1.2所示:图1.2 程序流程图本设计采用c语言作为编程工具。c语言是一种编译型的结构化程序设计语言,具有简单的语法结构和强大的处理功能,具有运行速度快、编译效率高、移植性好和可读性强等多种优点,可以实现对系统便件的直接操作。用c语言来编写目标系统软件,可以大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而开发出大规模、高性能的应用系统。此外c语言提供auto、static、flash等存储类型,针对单片机的程序存储空间、数据存储空间及eeprom空间自动为变量合理地分配空间,而且c语言提供复杂的数据类型,极大地增强了程序处理能力和灵活性。c编译器能够自动实现中断服务程序的现场保护和恢复,并且提供常用的标准函数库,供用户使用。并且c编译器能自动生成一些硬件的初始化代码。对于一些复杂系统的开发,还可以通过移植(或c编译器提供)的实时操作系统来实现。正由于c语言在系统开发中的优势,这次设计的所有程序设计都将采用c语言编写。2 系统的硬件设计2.1 硬件设计思路数字胎压计的硬件电路可分为4个部分:气压传感器、v/f转换电路、单片机电路和电源电路。气压传感芯片mpx4105,它工作于+5v电压,将被测电压转换为输出电压(对应图中网络标号为vin),送至v/f转换电路。电阻r5和电容c7构成典型的去耦合滤波电路。电路中,电压vin和输出脉冲fo的频率fo的转换关系满足公式(2.1)。 (2.1)其中, (2.2)电路中,rt、ct和rl的典型值分别为6.8k、0.01pf和100k,rs由一个定值电阻r2和一个可变电路r3串联组成,其中,r2为22k,r3的最大阻值为12k,通过可变电阻r3调节rs的阻值可以实现对电路转换增益的调整。气压的变化引起vin的变化,而vin在满刻度输出电压间距v内变化,v典型值为4.590v,所以vin变化范围很小,那么根据的关系式,必须增大k值,才能提高测量的精度。fo通过单片机的定时/计数器1的计数测得,该计数器的计数范围为065536,500ms计数频率1次。因此,k值的选取还要考虑到计数器的计数范围。综合考虑之后,将k值设为2000,这样代入式(2.2)计算,可知r3的阻值应调节到6.424k10。cin和rin构成低通滤波器,滤除输入电压信号中的干扰脉冲。2.2 单片机外围电路2.2.1 复位电路复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。如图2.1所示:图2.1 复位电路stc5a60s2的复位是由外部的复位电路来实现的。复位引脚rst通过一个斯密特触发器用来抑制噪声,在每个机器周期的s5p2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现的。只要vcc的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用6mhz时c取22uf,r取1k。除了上电复位外,有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过rst端经电阻与电源vcc接通而实现的。按键手动复位电路见图。时钟频率选用6mhz时,c取22uf,rs取200,rk取1k。2.2.2 振荡电路在stc5a60s2单片机中xtal1和xtal2 分别为片内反相放大器的输入端和输出端, xtal1、xtal2与晶体振荡器及电容c1、c2如图2.2所示连接。晶振、电容及片内与非门构成了电感三点式振荡器,振荡信号频率与晶振频率及电容的容量有关,但主要由晶振频率决定。图2.2 振荡电路2.3 电源部分由于硬件电路的供电电压为5v,因此,需要设计直流稳压电源,以提供电路稳定的5v直流电压,电路中电源部分的原理图如图2.3所示:图2.3 电源原理图由图可知,直流稳压电源以变压器、桥式整流电路及7805为核心,能够为电路提供稳定的5v直流电压。220v交流市电通过电源变压器变换成低压的交流信号,再经过桥式整流电路d1d4和滤波电容的整流和滤波,在固定式三端稳压器lm7805的vin和gnd两端形成一个并不十分稳定的直流电压,但该电压常常会因为市电电压的波动或负载的变化等原因而发生变化。此直流电压经过lm7805的稳压和电容的滤波便在稳压电源的输出端产生了精度高、稳定度好的直流输出电压。本稳压电源可作为ttl电路或单片机电路的电源。三端稳压器是一种标准化、系列化的通用线性稳压电源集成电路,以其体积小、成本低、性能好、工作可靠性高、使用简捷方便等特点,成为目前稳压电源中应用最为广泛的一种单片式集成稳压器件。2.4 按键部分为了使用户能够选择编码功能和译码功能,同时正确输入将要编码或者译码的二进制序列,系统设有按键功能。按键主要有独立按键和矩阵键盘两种形式,矩阵键盘的原理图如图2.4所示:图2.4 矩阵键盘原理图在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如p1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。一般的按键所用开关都是机械弹性开关,由于机械触点的弹性作用,按键开关在闭合时不会马上稳定地连接,在断开进也不会马上完全的断开,在闭合和断开的瞬间均有一连串的抖动。按键按下和松开的时候都存在着抖动,抖动时间的长短因按键的机械特性不同而有所不同,一般为 5ms10ms。如果不处理键抖动,则有可能引起一次按键被误读成多次,所以为了确保能够正确地读到按键,必须去除键抖动,确保在按键的稳定闭合和稳定断开的时候来判断按键状态,判断后再做处理。按键在去抖动,可用硬件或软件两种方法消除。由于使用硬件方法消除键抖动,一般会给系统的成本带来提高,所以通常情况下都是使用软件方法去除键抖动。常用的去除键抖动的软件方法有很多种,但是都离不开基本的原则:就是要么避开抖动的时候检测按键或是在抖动的时候检测到的按键不做处理。这里说明一下常用的两种方法:第一种方法是检测到按键闭合电平后先执行一个延时程序,做一个 12ms24ms 的延时,让前抖动消失后再一次检测按键的状态,如果仍是闭合状态的电平,则认为真的有按键按下;若不是闭合状态电平,则认为没有键按下。若是要判断按键松开的话,也是要在检测到按键释放电平之后再给出 12ms24ms 的延时,等后抖动消失后再一次检测按键的状态,如果仍为断开状态电平,则确认按键松开。这种方法的优点是程序比较简单,缺点是由于延时一般采用跑空指令延时,造成程序执行效率低。第二种方法是每隔一个时间周期检测一次按键,比如每 5ms 扫描一次按键,要连续几次都扫描到同一按键才确认这个按键被按下。一般确认按键的扫描次数由实际情况决定,扫描次数的累积时间一般为 50ms60ms。比如,以 5ms 为基本时间单位去扫描按键的话,前后要连续扫描到同一个按键 11 次而达到 50ms来确认这个按键。按键松开的检测方法也是一样要连续多次检测到按键状态为断开电平才能确认按键松开。这种方法的优点是程序执行效率高,不用刻意加延时指令,而且这种方法的判断按键抗干扰能力要更好;缺点是程序结构较复杂。在系统的软件设计中,本设计采用第二种方法来去除键抖动。2.5 显示部分本系统设计的显示电路是为了实时地显示出输入二进制序列的气压值,以方便用户及时发现危险,排除险情与萌芽状态。显示电路如图2.5所示:图2.5 显示电路2.6 报警电路部分系统设计时,采用的报警电路如图2.6所示:图2.6 报警电路当测试到汽车轮胎气压值达到阈值是,蜂鸣器会发出警报同时黄色指示灯亮,以提醒司机注意安全行驶。2.7 元件简介2.7.1 单片机stc5a60s2简介stc5a60s2单片机具有断电保护和a/d转换功能,为增强型 8051 芯片,1t,单时钟/ 机器周期,指令代码完全兼容传统8051单片机。stc5a60s2单片机的40条引脚按功能来分,可以分为3部分,电源及时钟引脚、控制引脚和输入/输出引脚。如下图2.7所示:图2.7 单片机引脚图stc5a60s2单片机引脚功能:主电源及时钟引脚此类引脚包括电源引脚vcc、vss、时钟引脚xtal1、xtal2。(1) vcc(40脚):接+5v电源,为单片机芯片提供电能。(2) vss(20脚):接地。(3) xtal1(19脚):在单片机内部,它是一个反向放大器的输入端,该放大器构成了片内的振荡器,可提供单片机的时钟控制信号。(4) xtal2(18脚):在单片机内部,接至上述振荡器的反向输出端。控制引脚此类引脚包括reset(即rsr/vpd)、ale/prog、psen、ea/vpp,可以提供控制信号,有些具有复用功能:(1) rsr/ vpd(9脚):复位信号输入端,高电平有效,当振荡器运行时,在此引脚加上两个机器周期的高电平将使单片机复位(rest)。复位后应使此引脚电平保持为不高于0.5v的低电平,以保证单片机正常工作。掉电期间,此引脚可接上备用电源(vpd),以保持内部ram中的数据不丢失。当vcc下降到低于规定值,而vpd在其规定的电压范围内(50.5v)时,vpd就向内部ram提供备用电源。(2) ale/prog(30脚):ale为地址锁存允许信号。当单片机访问外部存储器时,ale(地址锁存允许)输出脉冲的下降沿用于锁存16位地址的低8位。即使不访问外部存储器,ale端仍有周期性正脉冲输出,其频率为振荡器频率的1/6。但是每当访问外部数据存储器时,在两个机器周期中ale只出现一次,即丢失一个ale脉冲。ale端可以驱动8个lsttl负载。(3) psen(29脚):程序存储器允许输出控制端。此输出为单片内访问外部程序存储器的读选通信号。在从外部程序存储器取指令(或取常数)期间,每个机器周期均psen两次有效。但在此期间,每当访问外部数据存储器时,这两次有效的psen信号将不会出现。psen同样可以驱动8个lsttl负载。(4) ea/vpp(31脚):ea功能为内外程序存储器选择控制端。当ea端保持高电平时,单片机访问内部程序存储器,但在pc(程序计数器)值超过0fffh时将自动转向执行外部程序存储器内的程序。输入/输出引脚此类引脚包括p0口、p1口、p2口和p3口:(1) p0(p0.0p0.7)是一个8位三态双向i/o口,在不访问外部存储器时,做通用i/o口使用,用于传送cpu的输入/输出数据,当访问外部存储器时,此口为地址总路线低8位及数据总路线时分复用口,可带8个lsttl负载。(2) p1(p1.0p1.7)是一个8位准双向i/o口(作为输入时,口锁存器置1),带有内部上拉电阻,可带4个lsttl负载。(3) p2(p2.0p2.7)是一个8位准双向i/o口,与地址总路线高8位复用,可驱动4个lsttl负载。(4) p3口功能表,如下表2.1所示:表2.1 p3口功能表p3口的位第二功能说明p3.0rxd串行数据接收口p3.1txd串行数据发射口p3.2int0外部中断0输入p3.3int1外部中断1输入p3.4t0计数器0计数输入p3.5t1计数器1计数输入p3.6wr外部ram写信号p3.7rd外部ram读信号2.7.2 气压传感器mpx4105简介mpx4105型压力传感器是为引擎控制而设计的,这类传感器可以测量吸入歧管中的绝对空气压力,用户可根据歧管绝对压的测量结果计算出每个汽缸所需的燃料数量,这种压力传感器是将双极运算放大器和薄膜电阻网络,x型应变仪集成在一个芯片上 ,以提供高的输出电压。温度补偿范围为-40+125,测量方式为绝对压力(a)型。其引脚分布如图2.8所示: mpx4105123456vout gnd vcc nc nc nc 图2.8 mpx4105引脚分布图各引脚功能说明如下:vout(1脚):电压输出脚。gnd(2脚):接地端。nc(4、5、6脚):空引脚,用于芯片内部连接,悬空不适用。2.7.3 mc78l05电源电路简介由于数字胎压计采用的是+15v电源供电,但是单片机、mpx4105等其他芯片需要+5v供电,因此还需要设计专门的供电电路以满足整个系统的电源需求。电源电路选用摩托罗拉公司的三端低电流线性稳压芯片mc78l05。mc78l05具有以下特点:(1) 输入电压范围:2.624v,输出+5v固定电压;(2) 具有内部短路电路限制和热过载保护功能;(3) 无须外部器件。其引脚分布如图2.9所示。各引脚功能说明如下:vout(1脚):+5v固定电压输出脚。gnd(2脚):接地端。vin(3脚):电压输入脚,可输入的电压范围为2.624v。mc78l05 mc78l05123vout gnd vin图2.9 mc78l05引脚分布图2.7.4 ds1302时钟电路简介现在流行的串行时钟电路很多,如ds1302、 ds1307、pcf8485等。这些电路的接口简单、价格低廉、使用方便,被广泛地采用。本文介绍的实时时钟电路ds1302是dallas公司的一种具有涓细电流充电能力的电路,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768khz晶振11。ds1302的结构及工作原理:ds1302 是美国dallas公司推出的一种高性能、低功耗、带ram的实时时钟电路,它可以对年、月、日、星期、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5v5.5v。采用三线接口与cpu进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或ram数据。ds1302内部有一个318的用于临时性存放数据的ram寄存器。ds1302是ds1202的升级产品,与ds1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。ds1302的引脚排列,其中vcc1为后备电源,vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。ds1302由vcc1或vcc2两者中的较大者供电。当vcc2大于vcc10.2v时,vcc2给ds1302供电。当vcc2小于vcc1时,ds1302由vcc1供电。x1和x2是振荡源,外接32.768khz晶振。rst是复位/片选线,通过把rst输入驱动置高电平来启动所有的数据传送。rst输入有两种功能:首先,rst接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,rst提供终止单字节或多字节数据的传送手段。当rst为高电平时,所有的数据传送被初始化,允许对ds1302进行操作。如果在传送过程中rst置为低电平,则会终止此次数据传送,i/o引脚变为高阻态。上电运行时,在vcc2.0v之前,rst必须保持低电平。只有在sclk为低电平时,才能将rst置为高电平。i/o为串行数据输入输出端(双向),后面有详细说明。sclk为时钟输入端12。ds1302的控制字节:ds1302 的控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入ds1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取ram数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。数据输入输出(i/o):在控制指令字输入后的下一个sclk时钟的上升沿时,数据被写入ds1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个sclk脉冲的下降沿读出ds1302的数据,读出数据时从低位0位到高位7。ds1302的寄存器:ds1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为bcd码形式,其日历、时间寄存器。 此外,ds1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与ram相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 ds1302与ram相关的寄存器分为两类:一类是单个ram单元,共31个,每个单元组态为一个8位的字节,其命令控制字为c0hfdh,其中奇数为读操作,偶数为写操作;另一类为突发方式下的ram寄存器,此方式下可一次性读写所有的ram的31个字节,命令控制字为feh(写)、ffh(读)。ds1302实时显示时间的软硬件:ds1302与cpu的连接需要三条线,即sclk(7)、i/o(6)、rst(5)。2.7.5 键盘控制模块简介键盘采用行列式和外部中断相结合的方法,各按键的功能定义如表2.2所示。rest键为硬件复位键,与r、c构成复位电路。表2.2 按键功能按键键名功能k1时间设定键设定清零倒计时的时间k2增加键使预定时间上升k3减少键使预定时间降低k4倒计时开始键开始清零倒计时k5清零键计数清零2.7.6 1602字符型lcd简介字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式lcd,目前常用16*1,16*2,20*2和40*2行等的模块。1602lcd的基本参数及引脚功能1602lcd分为带背光和不带背光两种,基控制器大部分为hd44780,带背光的比不带背光的厚,是否带背光在应用中并无差别。 1602lcd主要技术参数:显示容量:162个字符芯片工作电压:4.55.5v工作电流:2.0ma(5.0v)模块最佳工作电压:5.0v字符尺寸:2.954.35(wh)mm1602lcd采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表2.3所示。第1脚:vss为地电源。第2脚:vdd接5v正电源。第3脚:vl为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10k的电位器调整对比度。第4脚:rs为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:r/w为读写信号线,高电平时进行读操作,低电平时进行写操作。当rs和r/w共同为低电平时可以写入指令或者显示地址,当rs为低电平r/w为高电平时可以读忙信号,当rs为高电平r/w为低电平时可以写入数据。第6脚:e端为使能端,当e端由高电平跳变成低电平时,液晶模块执行命令。第714脚:d0d7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。表2.3 引脚接口说明表编号符号引脚说明编号符号引脚说明1vss电源地9d2数据2vdd电源正极10d3数据3vl液晶显示偏压11d4数据4rs数据/命令选择12d5数据5r/w读/写选择13d6数据6e使能信号147数据7d0数据15bla背光源正极8d1数据16blk背光源负极2.7.7 1602lcd的指令说明及时序1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01h,光标复位到地址00h位置。指令2:光标复位,光标返回到地址00h。指令3:光标和显示模式设置 i/d:光标移动方向,高电平右移,低电平左移 s:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。 d:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 c:控制光标的开与关,高电平表示有光标,低电平表示无光标 b:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 s/c:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 dl:高电平时为4位总线,低电平时为8位总线 n:低电平时为单行显示,高电平时双行显示 f:低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器ram地址设置。指令8:ddram地址设置。指令9:读忙信号和光标地址 bf:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。图2.10 写操作时序2.8 pcb的制作protel99se是一个全32位的电路板设计软件,使用该软件可以容易地设计电路原理图、画元件图、设计电路板图、画元件封装图和电路仿真。在这里主要用它来绘制电路原理图和生成印制电路板。下面简要说明一下我们上面用protel画好的电路原理图的设计步骤如下:(1) 设置原理图设计环境。其中,工作环境设置是使用design/options和tool和preferences菜单进行的,画原理图环境的设置主要包括图纸大小、捕捉栅格、

温馨提示

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

评论

0/150

提交评论