剩余油量检测系统的设计课程设计

上传人:仙*** 文档编号:28930176 上传时间:2021-09-21 格式:DOC 页数:32 大小:782KB
收藏 版权申诉 举报 下载
剩余油量检测系统的设计课程设计_第1页
第1页 / 共32页
剩余油量检测系统的设计课程设计_第2页
第2页 / 共32页
剩余油量检测系统的设计课程设计_第3页
第3页 / 共32页
资源描述:

《剩余油量检测系统的设计课程设计》由会员分享,可在线阅读,更多相关《剩余油量检测系统的设计课程设计(32页珍藏版)》请在装配图网上搜索。

1、 微机测控系统课程设计说明书课程设计说明书课 程 名 称: 微机测控系统课程设计 课 程 代 码: 题 目: 燃油量检测系统 学院(直属系) : 交通与汽车工程学院 年级/专业/班: 学 生 姓 名: 学 号: 指 导 教 师: 开 题 时 间: 2013 年 12 月 16 日完 成 时 间: 2013 年 1 月 7 日 目录摘 要- 3 -1 引 言- 4 -1.1 问题的提出- 4 -1.2任务与分析- 4 -2方案设计- 6 -2.1 系统方案设计论证- 6 -2.2最终设计方案总体设计框图- 6 -3 系统硬件设计- 7 -3.1 AT89C52单片机- 7 -3.1.1 选用AT

2、89C52单片机原因- 8 -3.2 时钟电路- 8 -3.3 复位电路- 8 -3.4 数码管显示电路- 9 -3.5 光电报警电路- 10 -3.6 A/D转换电路- 11 -4 系统软件设计- 13 -4.1主程序框图- 13 -4.2 ADC0832子程序框图- 14 -4.3声光报警模块子程序流程图- 15 -5 系统调试过程- 16 -5.1 PROTUES软件- 16 -5.2 KEIL C51软件- 16 -5.3 KEIL软件开发流程- 17 -5.4原理图和检查- 20 -5.5 Proteus仿真调试- 20 -结 论- 23 -致 谢- 24 -参考文献- 25 -附录

3、一:相关程序代码- 26 -附录2:电路原理图- 30 -附录3:相关仿真图- 30 -摘 要本设计汽车油量检测系统以AT89C52为核心芯片。以protel和proteus为开发工具,并且采用C语言编程设计,辅以压力传感器、AD转换器、LED显示电路、报警电路等组成。传感器的输出信号经过ADC0832处理,将其送入单片机进行处理与计算,然后根据传感器压力变化与电位差变化的对应关系,将油量的剩余量转换成电信号,再经LED数码管显示出来,同时,如果剩余油量太低或者太高的话通过报警电路报警。关键词:单片机、剩余检测、LED数码管显示、报警1 引 言1.1 问题的提出随着经济的飞速发展和汽车的快速更

4、新换代,家家户户已经离汽车越来越近,同时随着人们生活水平的逐渐提高,人们需要的不再仅仅是拥有一辆普通的车,而是对汽车的质量和性能有了更好的要求。人们对汽车的需求日益增大,汽车产业的迅速发展同时也带动了汽车各项技术的发展,汽车传感器是汽车电子技术领域研究的核心内容,传统的传感器逐渐被微型化、多功能化、集成化和智能化得传感器取代。1.2任务与分析汽车在行驶过程中离不开燃油,因为汽车油箱剩余油量过多或过少都会影响车辆的性能和汽车的正常使用,所以驾驶员时刻掌握油箱剩余的油量是必须的。目前在大多数轿车上使用的汽车仪表内的燃油表仍为三刻度式仪表,这种燃油表由于受油量传感器的限制,驾驶人员只能定性地了解油箱

5、内剩余的燃油量,测量精度无法达到。汽车的油箱油量检测通常是由水平检测器 (一个与仪表板油量计串接的由浮标控制的浮筒式电位器系统)来完成的。当油箱储满燃油时,浮标动臂升起,将电位器的阻值调至最小(也有部分车型是将电位器的阻值调至最大),使油量计 (实际上是一只毫安表)的指针作满标度的偏转;当油箱中的油量水平下降时,可变电阻器的阻值被调高 (或调低),流过系统回路的电流将随之变化,油量计的指针读数也变小。这种传统检测油量的方式电路简单易行,但是耗电量大,元件老化快,最主要的问题是测量和显示精度不够,只能对油料的液位进行检测。随着电子技术的飞速发展,电子控制电路在日常生活中有着大量的应用,各种报警专

6、用集成电路、LED油量数字显示电路、传感器的不断推出,我们完全可以克服传统检测手段中不能直接读出实时油量的弊端,我们的研究方向是开发出一种新型的方便人们使用的汽车油量检测器,驾驶员通过这个检测器可以实时的、形象直接的读出油箱剩余的油量,并且当油量过多或者过少时检测器都可以发生实时报警,提醒驾驶员做出相应正确的处理方法。本设计以At89C52为核心,辅以压力传感器、A/D转换器、LED显示模块、电源模块、报警模块等组成。本测量系统由电源模块向单片机供电,通过传感器压力变化与电位差变化的对应关系,将油位高度转换成电信号,经过A/D转换器后,由单片机处理,经过CPU的计算,得到各项参数的实际值,并定

7、时地存入E2PROM中,且通过LED模块显示出实时油箱里的油量。当油量过多或过少时,信号通过A/D转换器接入单片机,经单片机处理后,控制报警模块发出灯光闪烁和报警声。2方案设计2.1 系统方案设计论证检测压力传感器MPX4115检测到压力信号后,通过ADC0832转换后送入AT89C52单片机,单片机对数据进行处理,显示等。2.2最终设计方案总体设计框图本设计以单片机AT89C52为核心器件,系统检测电路主要包括电源模块、数据采集模块、单片机及最小系统、LED显示模块、报警模块等,主要器件包括压力传感器、ADC0832、AT89C52、LED数码管、蜂鸣器、LED灯等。本设计设计框图如图2-1

8、所示:单片机AT89C52LED显示模块声光报警模块ADC0832模数转换电源模块压力传感器输入燃油压力图2-1 系统设计总框图3 系统硬件设计3.1 AT89C52单片机(1)8052单片机在此单片机上集成了微处理器(CPU),内部数据存储器(RAM),以及输入输出端口。8051单片机采用40只引脚的双列直插封装方式,各引脚的功能如下:时钟引脚X1及 X2:用于接晶体振荡器,此次设计用的晶振频率为6MHZ。RESET脚:是复位信号输入端,高电平有效。ALE脚:地址锁存允许信号,用于锁存单片机输出的地址信号,高电平有效PSEN脚:程序存储器输出控制端,在单片机访问外部程序存储器时,此引脚输出的

9、负脉冲作为读外部程序存储器的选通信号,接至程序存储器的OE端。低电平有效。EA脚:其功能为内外程序存储器选择控制端。当EA为高电平时,单片机访问内部程序存储器,当EA为低电平时,单片机直接访问片外程序存储器。本设计用的是8031,由于8031内部无程序存储器,所以此引脚应接地。低电平有效。I/O口引脚:共4个,分别是P0、P1、P2、P3,均为8位口。这4个I/O口可分别作为基本的Input、Output端口。其中P0口可作为数据总线和地址总线(低8位)分时复用的端口,P2口可作为地址总线的高8位,即P0口和P2口地起构成16位地址总线,可供寻址的地址范围是:64KB。P3口具有第二功能,即可

10、以产生中断,定时计数等功能。RD、WR引脚:为读和写选通信号,RD用于将单片机的数据写入外设中,WR用于从外设中读取数据。低电平有效AT89C51系列单片机都是以8031为核心发展起来的,具有和51系列单片机及基本结构和软件特征,其内部结构如图3-2所示:振荡器及定时电路AT89C51CPU4K字节ROM128字节RAM2个16位定时器/计数器64K总线扩展控制可编程I/O可编程串行口 图3-1 AT89C52单片机框图3.1.1 选用AT89C52单片机原因在课程设计里所需外围电路简单,在设计里面使用的引脚较少,占用的资源也比较少。而且该芯片是以AT89C52为核心,性能价格比高,应用成熟,

11、且对其内部结构较为熟悉,芯片功能够用而且适用,从而选用AT89C52单片机作为主控芯片。3.2 时钟电路本设计采用内部时钟方式的电路。 AT89C51单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳定的自激振荡器。电路中的电容C1和C2典型值通常选择为33pF左右。晶体的振荡频率的范围通常是在1.2MHZ12MHZ之间。晶体的频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。. 图3-2 晶振电路3.3 复位电路 复位电路通常采用上电自动复位和按钮复位两种

12、方式。本次设计采用上电复位电路。上电复位电路是在上电瞬间来实现的,其电路如图3-4所示。上电时, RESET端维持两个机器周期的高电平实现复位。图3-3 复位电路3.4 数码管显示电路 选用4位数码管作为显示,因为89C52单片机的I/O引脚有限,为了节省资源,设计了下图所示的数码管电路,改电路选用2片74HC573作为锁存器,通过程序指令使段选信号和位选信号有序输出,达到驱动目的。 图3-4 显示电路3.5 光电报警电路蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛用于计算机、打印机、复印机、报警器、电子玩具、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁

13、式蜂鸣器两种类型。蜂鸣器也分为有源蜂鸣器和无源蜂鸣器。通过三极管放大电流驱动蜂鸣器发出报警声。通过LED发光二极管作为灯光报警 图3-5报警电路 3.6 A/D转换电路ADC0832 是美国国家半导体公司生产的一种 8 位分辨率、双通道 A/D 转换 芯片。由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎, 其目前已经有很高的普及率。学习并使用 ADC0832 可是使我们了解 A/D 转换器 的原理,有助于我们单片机技术水平的提高。ADC0832具有以下特点:8 位分辨率;双通道 A/D 转换;输入输出电平与 TTL/CMOS 相兼容;5V 电源供电时输入电压在 05V 之间;工作

14、频率为 250KHZ,转换时间为 32S;一般功耗仅为 15mW;8P、14PDIP(双列直插)、PICC 多种封装;商用级芯片温宽为0C to +70C,工业级芯片温宽为40C to +85C; 芯片引脚分配图如图3-6所示:VCC(Vref) CSCH0CH1GNDCLKD0D1ADC0832图3-6 ADC0832引脚分配图 芯片接口说明:CS_ 片选使能,低电平芯片使能。CH0 模拟输入通道0,或作为IN+/-使用。CH1 模拟输入通道1,或作为IN+/-使用。GND 芯片参考0电位(地)DI 数据信号输入,选择通道控制DO 数据信号输出,转换数据输出CLK 芯片时钟输入VCC/REF

15、 电源输入及参考电压输入(复用)ADC0832与单片机的接口电路:ADC0832 为 8 位分辨率 A/D 转换芯片,其最高分辨可达 256 级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在 05V 之间。芯片转换时间仅为 32S,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过 DI 数据输入端,可以轻易的实现通道功能的选择。单片机对 ADC0832 的控制原理:正常情况下 ADC0832 与单片机的接口应为 4 条数据线,分别是 CS、CLK、DO、DI。但由于 D

16、O 端与 DI 端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将 DO 和 DI 并联在一根数据线上使用。当 ADC0832 未工作时其 CS 输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。当要进行 A/D 转换时,须先将 CS 使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端 CLK 输入时钟脉冲,DO/DI 端则使用 DI 端输入通道功能选择的数据信号。在第 1 个时钟脉冲的下沉之前 DI 端必须是高电平,表示启始信号。在第 2、3 个脉冲下沉之前 DI 端应输入 2 位数据用于选择通道功能。作为单

17、通道模拟信号输入时 ADC0832 的输入电压是 05V 且 8 位分辨率时的电压度为 19.53mV。如果作为由 IN+与 IN-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。但值得注意的是,在进行 IN+与 IN-的输入时,如果 IN-的电压大于 IN+的电压则转换后的数据结果始终为00H。4 系统软件设计4.1主程序框图如图4-1所示,单片机上电后,程序首先对单片机和液晶显示器LED进行初始化,这时LED液晶屏上显示得是0。这时如果给压力传感器一个压力,压力信号经数据采集系统后存储在CPU,该数据经CPU计算后,将该数值通过液晶显示器显示,随着压力的不断增大,液

18、晶屏LED上从0到100依次显示,期间若油量数值大于90或者小于10,则报警系统启动。Y结束声光报警并显示油量值N油量值是否大于90小于10开始ADC0832采集压力值CPU存储油量值LED初始化ADC0832初始化显示油量 图4-1主程序4.2 ADC0832子程序框图如图4-2所示,当 ADC0832 未工作时其 CS 输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。当要进行 A/D 转换时,须先将 CS 使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端 CLK 输入时钟脉冲,DO/DI 端则使用 DI 端输入通道功能选

19、择的数据信号。在第 1 个时钟脉冲的下沉之前 DI 端必须是高电平,表示启始信号。在第 2、3 个脉冲下沉之前 DI 端应输入 2 位数据用于选择通道功能。开始使能芯片产生时钟信号输入通道控制字读取2字节数据字节数据校验将值送入制定寄存器结束 图4-2 ADC08324.3声光报警模块子程序流程图如图4-3所示,单片机上电后,系统首先对单片机和LED显示屏进行初始化。初始化完成后,压力信号经数据采集系统和CPU计算后将油量值在LED显示屏上显示出来,若油箱内剩余的油量大于90或者小于10时,声光报警模块启动,蜂鸣器报警以及LED灯闪出绿光。系统初始化开始油量值大于90或小于10声光报警结束图4

20、-3 报警流程图5 系统调试过程通过上面的设计,设计已经基本完成。下面主要实现Protel99SE的原理图及做相关检测,对Keil进行相应的检查和调试,并用Proteus对所设计系统进行仿真。5.1 PROTUES软件Proteus ISIS是英国Lab center公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:1实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统仿真、有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。2支持主流单片机系统的仿真。目前

21、支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。3提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如KEIL C51 uVision2等软件。5.2 KEIL C51软件随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,目前流行的51系列单片机开发软件是德国KEIL公司推出的KEIL C51软件,它

22、是一个基于32位Windows环境的应用程序,支持C语言和汇编语言编程,其6.0以上的版本将编译和仿真软件统一为uVision2(通常称为uV2)。KEIL提供包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,由以下几部分组成:uVision2 IDE集成开发环境(包括工程管理器、源程序编辑器、程序调试器)、C51编译器、A51汇编器、LIB51库管理器、BL51连接/定位器、OH51目标文件生成器以及Monitor-51、RTX51实时操作系统。5.3 KEIL软件开发流程1新建工程,如图5-1所示:新建工程图 5-1 新建工程界面图2为工程选择目标器件,如

23、图5-2所示:目标器件AT89S52 图5-2目标器件选择3设置工程的配置参数,如图5-3所示:配置参数 图5-3 配置工程参数界面图选中创建HEX文件,如图5-4所示,软件默认的情况下是不创建此文件的,而下载到单片机的程序需要此文件。选中生成HEX文件图5-4 创建HEX文件4打开/建立程序文件。创建的文件用*.c形式保存,如图5-5所示:新建C语言程序文件,保存文件名*.C图5-5 创建代码文件5编译和连接工程。在进行编译和链接前,需要将创建的源代码文件添加到工程中,在Source Group1处单击右键,即可出现如图4-6所示的窗口。然后点add group.添加文件图5-6 添加代码文

24、件成功添加后,点击此处就会显示对应的文件。.6纠正程序中的书写和语法错误并重新编译连接。成功添加代码文件后,就可以进行编译了,单击如图5-7所示的位置,对工程进行全部编译。对代码进行编译图5-7 编译按钮界面图图5-8为程序编译窗口。在此窗口中把需要编译的程序输入,然后点编译按钮。即可对所写程序编译。 图5-8 程序编译结果5.4原理图和检查打开protel99ser,绘制系统的原理图。原理图包括能输出时钟电路,驱动电路以及复位电路。绘制完成的原理图如图5-9: 图5-9 原理图绘制完原理图之后,对原理图进行编译检测。ERC检测结果如图5-10,无错误: 图5-10 Erc检测5.5 Prot

25、eus仿真调试运行PROTUES 的ISIS 程序后,进入该仿真软件的主界面。在工作前,要设置view 菜单下的捕捉对齐和system下的颜色、图形界面大小等项目。通过工具栏中的p(从库中选择元件命令)命令,在pick devices 窗口中选择电路所需的元件,放置元件并调整其相对位置,元件参数设置,元器件间连线,编写程序;在source 菜单的Define code generation tools 菜单命令下,选择程序编译的工具、路径、扩展名等项目;在source 菜单的Add/Remove source files 命令下,加入单片机硬件电路的对应程序;通过debug 菜单的相应命令仿真

26、程序和电路的运行情况。在Proteus中建立仿真图。按下开始仿真按钮,开始进行仿真实验,结果如图5-11,图5-12,图5-13所示: 图5-11 油量过多 图5-12 油量合适 图5-13 油量过低结 论通过MPX4115进行油量检测,MPX4115将压力的模拟信号转换为电压值,然后通过ADC0832转换后产生一个数字信号输入到AT89C52单片机中进行处理,再通过单片机驱动数码管显示油量的相关信息。并在超过安全阈值时通过通过单片机实现声光报警。由于显示程序的复杂性,所以选用了C语言作为开放程序加快了开发进度。本次设计由于时间较为仓促,难免考虑不周全,还有许多功能需要完善,这需要下来再去深究

27、。在本次课程设计里面,我把电路和单片机必备的一些基本操作技能再次熟悉了一遍。 对于此次油量检测,我只进行了最简单的程序编写和仿真,而往往在实际中是作为一个系统中的很小子环节来进行应用的,所以还需要我进一步学习更多的单片机及相关测试传感器知识。致 谢在本课程设计期间,我得到了各位指导老师和同学的大力帮助,如果没有他们,我不不可能完成本次设计,在此,我表示对他们衷心的感谢。值此即将完成课程之际,我要衷心地感谢唐岚老师。在课程设计过程中,我得到了她的精心指导和热情帮助,她的一些建议和意见给我很深的启发。在此由衷感谢。参考文献1谭浩强.C程序设计(第三版)M.北京.清华大学出版社.2005(2007重

28、印)2 张毅刚,彭喜元等. MCS-51单片机应用设计(第3版)M.哈尔滨.哈尔滨工业大学出版社.2001.3徐琤颖.Protel99SE EDA技术及应用.M.北京.机械工业出版社.2009.1重印4古辉,刘均等.微型计算机接口及控制技术.M.北京.机械工业出版社.2009.1附录一:相关程序代码#includesbit wei =P11;sbit duan =P10;sbit Buzz=P17;sbit DIO=P00;sbit CLK=P02;sbit CS=P07;unsigned char table=192,249,164,176,153,146,130,248,128,144;u

29、nsigned char weiswitch=0,1,2,4,8;unsigned char buzz=0,cishu,dat;unsigned char A_D();void SMG(int vvv);void main() Buzz=0; TMOD=0x01; TH0=(65536-45872)/256; TL0=(65536-45872)%256; EA=1; ET0=1; TR0=1; while(1) A_D(); SMG(dat); if(dat90) buzz=1; else buzz=0; void T0_time() interrupt 1 TH0=(65536-45872)

30、/256; TL0=(65536-45872)%256; if(buzz=1) cishu+; if(cishu=5) Buzz=Buzz; cishu=0; else Buzz=0; void delay(void) unsigned int a,b; for(a=10;a0;a-) for(b=110;b0;b-);void Tdelay(unsigned int i) while(i-);void SMG(int vvv)int ge=vvv%10; int shi=vvv%100/10; int bai=vvv%1000/100; int qian=vvv/1000; duan=1;P

31、2=tableqian;duan=0;P2=0xff;wei=1;P2=weiswitch1;wei=0;P2=0xff;delay();duan=1;P2=tablebai;duan=0;P2=0xff;wei=1;P2=weiswitch2;wei=0;P2=0xff;delay(); duan=1;P2=tableshi;duan=0;P2=0xff;wei=1;P2=weiswitch3;wei=0;P2=0xff;delay();duan=1;P2=tablege;duan=0;P2=0xff;wei=1;P2=weiswitch4;wei=0;P2=0xff;delay();unsigned char A_D() unsigned char i; CS=1; CLK=0; CS=0; CLK=1; CLK=0; DIO=1; CLK=1; CLK=0; DIO=0; CLK=1; CLK=0; DIO=1; CLK=1; for(i=0;i8;i+) CLK=1; CLK=0; dat=1; dat|=(unsigned char)DIO; CS=1; dat=(dat-14)*100)/230; return dat; 附录2:电路原理图附录3:相关仿真图- 31 -

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!