毕业论文-基于51单片机的汽车水温表设计.doc
《毕业论文-基于51单片机的汽车水温表设计.doc》由会员分享,可在线阅读,更多相关《毕业论文-基于51单片机的汽车水温表设计.doc(29页珍藏版)》请在三一文库上搜索。
1、I基于51单片机的汽车水温表设计摘要随着汽车工业的迅速发展和人们生活水平及需要的不断提高,越来越多的汽车走入了大众的生活,而在汽车的发展过程中对汽车水温表的设计和实现技术要求又尤为重要本论文是主要介绍基于51单片机汽车水温表的设计思路、流程及应用;论文结合并参考各类有关汽车水温表书籍,主要阐述汽车水温表的总体原理设计、硬件设计与软件设计,以及水温表显示调试方法。关键词:单片机,汽车,DS18B20,水温表;目 录1 前言 . -0-2 汽车水温表简介 . -1- 2.1汽车水温表概述 . -2- 2.2常见汽车水温表的工作原理 . -2-3 水温表总体原理及设计 . -4-3.1硬件的总体设计
2、 . -4- 3.1.1硬件系统子模块 . -4-3.2软件的总体设计 . -4-4 水温表的硬件设计 . -5-4.1单片机最小系统电路 . -5- 4.2数码管显示电路. -5- 4.3 温度采集电路 . -6-5 水温表的软件设计 . -10- 5.1主流程图 . -11- 5.2 读取温度DS18B20模块的流程 . -11-6 水温表的调试 . -13- 6.1 硬件电路调试 . -13- 6.2 软件调试 . -13-7 总结 . -14-8 参考文献 . -15-附录一 水温表程序前 言从第一辆汽车诞生到现在已有一百多年的历史,随着社会和科学技术的发展,如今汽车已经走进了寻常百姓
3、家,成为人们必备的交通工具之一;而且我国经济发展水平与汽车产业发展水平有着密切的关系,汽车产业是衡量我国经济发展水平的重要指标,汽车工业在我国已经占着举足轻重的地位。随着汽车电子技术和计算机控制技术的发展,各类汽车公司厂商都运用大量的电子技术和计算机技术,从而改善汽车经济性、安全性和舒适性,并且提高了汽车技术性能。然而汽车水温表测量准确、显示正确,对汽车发动机来说尤为重要。2 汽车水温表简介2.1汽车水温表概述汽车水温表是用来指示汽车发动机冷却水的工作温度,并向司乘人员显示发动机工作水温是否工作正常。它由装在气缸盖上的温度传感器和转在仪表盘上的水温表组成。2.2常见汽车水温表的工作原理 常见的
4、汽车水温表有电热式、电磁式和蒸气压力是三类,它们与不同的感应器相配合,进行水温测定。2.2.1电热式水温表工作原理 当汽车发动机水温升高使双金属片向离开固定触点的方向弯曲,使触点彼此接触的压力减弱;通过压力的减弱增加打开的时间,使通过加热线圈的电流平均值减小,水温表指针指向高温。水温降低时,触电压力增大,平均电流增大,水温表的双金属片弯曲怎大,指针指向低温。如图2-1所示;图 21 电热式水温表2.2.2电磁式水温表工作原理电磁式水温表内有两个铁芯式线圈,在线圈交叉位置上,装有小磁片、配重和指针等组成的转子,传感器为温度系数热敏电阻。低温时,传感器热敏电阻阻值为1000,此时,线圈L2和大电阻
5、串联,通过的电流,大部分流入L1,在综合电场是指针停在刻度32处。当温度升高时,传感器受温度的影响,热敏电阻阻值变小(约为150),L2所通过电流,L1相对减少,磁场的综合作用是指针向高温100刻度移动。如图2-2所示;图 22 电磁式水温表3.1.1蒸气压力式水温表工作原理当水温表的感温包受热时,充灌在其中的介质(氯乙烷或乙醚等)受热蒸发(乙醚液体在大气压力下的沸点是34),蒸气压力通过毛细管进入弹簧管,压力迫使弹簧向外扩张,弹簧管的自由端与连杆的一头销钉连接,连杆的另一端与扇形齿轮固定。传动机构中,扇形齿轮与中心齿轮啮合传动,并使装在中心齿轮轴上的指针在刻度盘上指出被测介质温度值。感温包内
6、液体体积受感温包与弹簧管相对位置影响。如图2-3所示;图 23 蒸气压力式水温表3水温表总体原理及设计3.1硬件总体设计设计并制作一个基于单片机的汽车水温表的电路,其结构框图如图2-1:单片机AT89S51数码管显示温度传感器DS18B20图 31 系统结构框图3.1.1硬件系统子模块(1) 单片机最小系统电路部分(2) 温度采集电路部分(3) 数码管温度显示电路部分3.2 软件总体设计良好的设计方案可以减少软件设计的工作量,提高软件的通用性,扩展性和可读性。本系统的设计方案和步骤如下:(1) 根据需求按照系统的功能要求,逐级划分模块。(2) 明确各模块之间的数据流传递关系,力求数据传递少,以
7、增强各模块的独立性,便于软件编制和调试。(3) 确定软件开发环境,选择设计语言,完成模块功能设计,并分别调试通过。(4) 按照开发式软件设计结构,将各模块有机的结合起来,即成一个较完善的系统。首先接通电源系统开始工作,系统开始工作后,通过温度传感器开始实时检测,调用显示子程序显示检测结果。4 水温表硬件设4.1单片机最小系统电路因为89S52单片机内部自带8K的ROM和256字节的RAM,因此不必构建单片机系统的扩展电路。如图31,单片机最小系统有复位电路和振荡器电路。值得注意的一点是单片机的31脚必须接高电平,否则系统将不能运行。因为该脚不接时为低电平,单片机将直接读取外部程序存储器,而系统
8、没有外部程序存储器,所以必须接VCC。在按键两端并联一个电解电容,滤除交流干扰,增加系统抗干扰能力。图41 单片机最小系统图4.2 数码管显示电路(1)数码管显示说明各个数码管的段码都是单片机的数据口输出,即各个数码管输入的段码都是一样的,为了使其分别显示不同的数字,可采用动态显示的方式,即先只让最低位显示0(含点),经过一段延时,再只让次低位显示1,如此类推。由视觉暂留,只要我们的延时时间足够短,就能够使得数码的显示看起来非常的稳定清楚,过程如表3-1。表4-1 数码管编码表段码位码显示器状态08H01H0abH02H112H04H222H08H3a1H10H424H20H504H40H6a
9、aH80H7本论文中使用了3个数码管,其中前两位使用动态扫描显示实测温度,在设置加热温度的时候,两个数码管是闪烁,以提示目前处在温度设置状态。第三位数码管静态显示符号“”。4.3 温度采集电路(1) DS18B20介绍Dallas最新单线数字温度传感器DS18B20简介新的“一线器件”体积更小、适用电压更宽、更经济。Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20、DS1822“一线总线”数字化温度传感器同DS18B20一样,DS18B20也
10、支持“一线总线”接口,测量温度范围为 -55+125,在-10+85范围内,精度为0.5。DS1822的精度较差为2。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。其DS18B20的管脚配置和封装结构如图3-4所示。 图4-2 DS18B20封装引脚定义: DQ为数字信号输入/输出端; GND为电源地; VDD为外接供电电源输入端(在寄生电源接线方式时接地)。 (2)DS18B20的单线(1wire bus)系统单线总线结构是DS18B20的突出特点,也是理解和编程的难点。从两个角度来理解单线总线:第一,单线总线只定义了一个信号线,而且DS18B20智能程度较低(这点可以
11、与微控制器和SPI器件间的通信做一个比较),所以DS18B20和处理器之间的通信必然要通过严格的时序控制来完成。第二,DS18B20的输出口是漏级开路输出,这里给出一个微控制器和DS18B20连接原理图。这种设计使总线上的器件在合适的时间驱动它。显然,总线上的器件与(wired AND)关系。这就决定:(1)微控制器不能单方面控制总线状态。之所以提出这点,是因为相当多的文献资料上认为,微控制器在读取总线上数据之前的I/O口的置1操作是为了给DS18B20一个发送数据的信号。这是一个错误的观点。如果当前DS18b20发送0,即使微控制器I/O口置1,总线状态还是0;置1操作是为了是I/O口截止(
12、cut off),以确保微控制器正确读取数据。(2)除了DS18B20发送0的时间段,其他时间其输出口自动截止。自动截止是为确保:1时,在总线操作的间隙总线处于空闲状态,即高态。2时,确保微控制器在写1的时候DS18B20可以正确读入。由于DS18B20采用的是1Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S52单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。 DS18B20的复位时序,如图3-5 图4-3 DS18B20的复位时序图 DS18B20的读时序对于DS18B20的读时序分为读0时序和
13、读1时序两个过程。对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。DS18B20的读时序图如图3-6所示。图4-4 DS18B20的读时序 DS18B20的写时序对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。如
14、图3-7所示。图4-5 DS18B20的写时序图(3)DS18B20的供电方式在图3-8中示出了DS18B20的寄生电源电路。当DQ或VDD引脚为高电平时,这个电路便“取”的电源。寄生电路的优点是双重的,远程温度控制监测无需本地电源,缺少正常电源条件下也可以读ROM。为了使DS18B20能完成准确的温度变换,当温度变换发生时,DQ线上必须提供足够的功率。有两种方法确保 DS18B20 在其有效变换期内得到足够的电源电流。第一种方法是发生温度变换时,在 DQ 线上提供一强的上拉,这期间单总线上不能有其它的动作发生。如图3-8 所示,通过使用一个 MOSFET 把 DQ 线直接接到电源可实现这一点
15、,这时DS18B20 工作在寄生电源工作方式,在该方式下 VDD 引脚必须连接到地。 图4-6 DS18B20供电方式1另一种方法是 DS18B20 工作在外部电源工作方式,如图 3-9 所示。这种方法的优点是在 DQ 线上不要求强的上拉,总线上主机不需要连接其它的外围器件便在温度变换期间使总线保持高电平,这样也允许在变换期间其它数据在单总线上传送。此外,在单总线上可以并联多个 DS18B20,而且如果它们全部采用外部电源工作方式,那么通过发出相应的命令便可以同时完成温度变换。 图4-7 DS18B20供电方式2(4)DS18B20设计中应注意的几个问题DS18B20具有测温系统简单、测温精度
16、高、连接方便、占用接口线少等优点,但在实际应用中也应注意以下几方面的问题:较小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20 与微处理器间采用串行数据传送。因此, 在对DS18B20 进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在DS18B20 有关资料中均未提及1Wire上所挂DS18B20数量问题,容易使人误认为可以挂任意多个DS18B20,在实际应用中并非如此。当1Wire上所挂DS18B20超过8个时,就需要考虑微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。连接DS18B20的总线电缆是有长度限制的。实际应用中,测温电缆线建议采用屏蔽4
17、芯双绞线,其中一对线接地线与信号线,另一组接VCC 和地线,屏蔽层在源端单点接地。本文以广泛应用的数字温度传感器DS18B20为例,说明了1Wire总线的操作过程和基本原理。事实上,基于1Wire总线的产品还有很多种,如1Wire总线的E2PROM、实时时钟、电子标签等。他们都具有节省I/O资源、结构简单、开发快捷、成本低廉、便于总线扩展等优点,因此有广阔的应用空间,具有较大的推广价值。本设计将温度传感器DS18B20与单片机TXD引脚相连,读取温度传感器的数值。DS18B20与单片机连接图如图所示4-8所示。图4-8 DS18B20与单片机连接图5 水温表的软件设计本系统采用的是循环查询方式
18、,来显示和控制温度的。主要包括四段程序的设计:DS18B20读温度程序,数码管的驱动程序,键盘扫描程序,以及抱经处理程序。5.1主程序流程图初始化开始读D18B20温度转换显示温度返回图 5-1 主程序流程图5.2读取温度DS18B20模块的流程图由于DS18B20采用的是一根数据线实现数据的双向传输,而对AT89S52单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。DS18B20单线通信功能是分时完成的,它有严格的时隙概念。因此系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 基于 51 单片机 汽车 水温表 设计
链接地址:https://www.31doc.com/p-9368862.html