【电气设计自动化论文】驾驶座酒精浓度测试仪设计
【电气设计自动化论文】驾驶座酒精浓度测试仪设计,电气设计,自动化,论文,驾驶,酒精,浓度,测试仪,设计
P1.01 P1.12 P1.23P1.34 P1.45 P1.56P1.67 P1.78 REST9P3.0/RXD10 P3.1/TXD1 P3.2/INT012P3.3/INT113 P3.4/T014 P3.5/T115P3.6/WR16 P3.7/RD17 XTAL218XTAL119 GND20 P2.0 21P2.1 2P2.2 23P2.324P2.4 25P2.5 26P2.7 28SPEN 29ALE30EA 31P0.7 32P0.6 3P0.5 34P0.435P0.3 36P0.2 37P0.1 38P0.0 39VCC40P2.6 27STC89C52U1STC89C51/52A1 B2 FBUZERC130P C230P+C310uf123456789J110KY112MHZGNDR110KGND+5In31In53 In64 In75START6 EOC7 D38OE9 CLOCK10 Vcc1Vref+12 GND13 D114 D2 15Vref- 16D0 17D4 18D519D7 21ALE 2ADC 23ADB24ADA 25In0 26In1 27In42D6 20In2 28ADC0809ADC1ADC0809+5GNDD0D1 D2GNDD3D4D5D6D7ST STSTEOCEOCOE OECLK CLKD0D1D2D3D4D5D6D7INS1SW SPST S2SW SPST S3SW SPSTGNDk1 k2 k3Q5PNP+5GNDFR12.2kA1 F2 A3 B 4F 5B 6RL1MQ-3+5 GNDRA120GNDIN+5k1k2k3abfcgdeVCC1234567abcdefg8 dp dp9DS1REDCAabfcgdeVCC1234567abcdefg8 dp dp9DS2REDCAabfcgdeVCC1234567abcdefg8 dp dp9DS3REDCAabfcgdeVCC1234567abcdefg8 dp dp9DS4REDCAD0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7Q1PNP Q2PNP Q3PNP Q4PNP+5R12.2k R22.2k R32.2k R42.2kJDQF+532 1P1POWER 112233445566S1+5GNDD1LEDRL22.2KRA25.1FQ5PNP+5FR21kJDQ12345J1JDQ-DC5123CON3 GND 本科毕业论文(设计)手册( 2011 届) 驾驶座酒精浓度测试仪学 院 电子信息工程学院 专 业 电气工程自动化 姓 名 指导教师 职 称 副教授 等 级 博士 学号:2目 录本科毕业论文(设计任务书2本科毕业论文(设计)开题报告3本科毕业论文(设计)中期报告6本科毕业论文(设计)指导记录7本科毕业论文(设计)答辩记录8本科毕业论文(设计)成绩评定表9本科毕业论文(设计)任务书(指导教师、学生共同签订)3学号 姓名 指导教师题目驾驶座酒精浓度测试仪题目来源 社会调查 类别 设计性质 应用研究一、指导教师责任。(一)指导教师应端正思想,把培养人才放在首位,注重培养学生的学习能力、实践能力和创新能力。严格要求学生,培养学生科学严谨的态度和实事求是的作风。(二)指导教师应当对学生进行学术道德、学术规范教育,对毕业论文(设计)进行适当指导(不少于 8 次),对毕业论文(设计)是否由其独立完成进行审查。(三)指导教师在指导毕业论文(设计)期间请假应事先布置学生任务,或委托他人代为指导。请假 2 周以上者,须经院系批准;请假超过 4 周者,应及时向院(系)申请调整指导教师。(四)接受并并执行院系指导教师遴选和评价具体办法以及学校、院系相关考核。二、学生责任。(一)学生应按照专业人才培养方案规定,参加毕业论文(设计)与综合训练。(二)学生应重视毕业论文(设计),严格遵守学校、院系相关制度;按照要求参加院系毕业论文(设计)集中指导;在校外撰写毕业论文(设计)的,要遵守所在单位的有关规章制度。(三)学生应在指导教师指导下,查阅文献、搜集资料、实地调研,撰写文献综述、开题报告、论文(设计说明书)等;经常、主动向指导教师汇报论文(设计)进展情况,接受指导。毕业论文(设计)完成后,应按规范要求提交材料,并按时参加答辩。(四)学生应按时完成各阶段任务,保证毕业论文(设计)质量;应恪守学术道德和学术规范,在指导教师指导下独立完成论文,不得抄袭;严禁弄虚作假、请人代替完成;否则,任何时候一经发现均取消成绩,并追究当事人责任。教师签名: 学生签名: 2011 年 4 月 7 日指导小组(教研室)意见:组长签名:院(系)意见:负责人签名:4本 科 毕 业 论 文 ( 设 计 ) 开 题 报 告(学生填写)学 号 姓 名 指 导 教 师题目 驾驶座酒精浓度测试仪课题内容:(研究现状、目标、意义等,空白不足可增加页面)近年来,我国越来越多的人有了自己的私家车,而酒后驾车造成的交通事故也频繁发生。因此,我国因酒驾应付刑事责任,所以需要设计一酒精浓度测试仪器来检测驾驶员体内酒精含量是否超标。本课程设计研究的是一种以气敏传感器和单片机 A/D 转换器为主,检测驾驶员呼出气体的酒精浓度,并具有声光报警功能的空气酒精浓度监测仪。其可检测出驾驶座空气环境中酒精浓度值,对超标的驾驶员进行声光报警来提示危害。5课题关键问题及难点:硬件设计部分和软件设计部分。硬件部分为利用 MQ3 气敏传感器测量空气中酒精浓度,并转换为电压信号,经 A/D 转换器转换成数字信号后传给单片机系统,由单片机及其相应外围电路进行信号的处理,显示酒精浓度值以及超阈值声光报警。程序采用模块化设计思想,各个子程序的功能相对独立,便于调试和修改。而硬件电路又大体可分为单片机小系统电路、A/D 转换电路、声光报警电路、LED 显示电路,按键电路。拟采取的方式、方法及计划进程安排(主要技术路线):硬件设计部分和软件设计部分。硬件部分为利用 MQ3 气敏传感器测量空气中酒精浓度,并转换为电压信号,经 A/D 转换器转换成数字信号后传给单片机系统,由单片机及其相应外围电路进行信号的处理,显示酒精浓度值以及超阈值声光报警。程序采用模块化设计思想,各个子程序的功能相对独立,便于调试和修改。而硬件电路又大体可分为单片机小系统电路、A/D 转换电路、声光报警电路、LED 显示电路,按键电路。6参考文献:1陈权昌,李兴富.单片机原理及应用M.广州:华南理工大学出版社 ,2007.82李庆亮.C 语言程序设计实用教程M.北京:机械工业出版社,2005.33杨志忠.数字电子技术M .北京:高等教育出版社,2003.12.4及力.Protel 99 SE 原理图与 PCB 设计教程M.北京: 电子工业出版社,2007.8.5徐江海.单片机实用教程M.北京:机械工业出版社,2006.126胡宴如.模拟电子技术M .北京:高等教育出版社,2008.67 刘宁.单片机多功能时钟的设计M.浙江:浙江海洋学院 ,2009. 8 汪文,陈林.单片机原理及应用M.湖北:华中科技大学出版社 ,2007.9 康华光.电子技术基础数字部分M.北京:高等教育出版社 ,2008.指导教师意见:教师签名: 年 月 日指导小组(教研室)意见:组长签名: 年 月 日7本 科 毕 业 论 文 ( 设 计 ) 中 期 报 告学 号 姓 名 指 导 教 师题目 驾驶座酒精浓度测试仪(简述开题以来工作进展和成效、存在的问题、下一步计划与安排)工作进展:购买实物所需器材,进行焊接。存在的问题:焊接的时候尽量走锡,不要走太多的飞线,不然很容易出现问题,而且很难查找出来。正面图以原理图为依据,然后是越美观越好,可以根据 PCB 的突来摆设位置更加方便连线。下一步计划与安排:做出实物,运行。指导教师意见:教师签名:月 日指导小组(教研室)意见:组长签名:月 日本科毕业论文(设计)指导记录8学 号 姓 名 指 导 教 师 申 远题目 驾驶座酒精浓度测试仪第 1 次指导 时间: 2014.11.15 地点: 实验楼 指导形式:通知毕设,选题,布置任务,开题,进度检查,中期检查学生签名: 教师签名: (指导记录可连续填写,每 2 次指导记录之间空两行,时间、地点、签名、指导形式等格式相同)9本科生毕业论文(设计)答辩记录学号 姓名 指导教师 申远题目 驾驶座酒精浓度测试仪答辩组成员组长 职称 职务 副教授成员 职称 成员 职称 硕士成员 职称 成员 职称成员 职称 成员 职称答 辩 秘 书 答辩时间 月 日 时陈述、提问及回答情况记录:答辩秘书签名: 答辩组长签名: 年 月 日10本科生毕业论文(设计)成绩评定表学号 姓名 指导教师 申远题目 驾驶座酒精浓度测试仪内容提要及指导教师意见评分:(百分制) 指导教师签名: 年 月 日11评阅教师评阅意见评分:(百分制) 评阅教师签名: 年 月 日答辩小组答辩意见评分:(百分制) 组长签名: 年 月 日答辩委员会意见总评分数:(百分制) 论文等级:(五级制) 评定人签名: 负责人签名: 总评成绩=指导教师评分*25%+评阅教师评分*25%+答辩小组评分*50%本科毕业论文(设计)(2011 届)驾驶座酒精浓度测试仪学 院 电子信息工程学院 专 业 电气工程自动化 学科门类 理工科 学 号 1108441008 姓 名 指导教师 2015 年 5 月学号:I摘 要从工厂企业到居民家庭,酒精泄露的检测、监控以及对酒后驾车的监测对居民的人身和财产安全都是十分重要且必不可少的。同时,随着我国经济的高速发展,人民的生活水平迅速提高,越来越多的人有了自己的私家车,酒后驾车是导致交通事故的一个主要因素,资料显示,我国近几年发生的重大交通事故中,有将近三分之一是由酒后驾车引起的。由于人们安全意识增强,对环境安全性和生活舒适性要求的提高,为了防止机动车辆驾驶人员酒后驾车,现场实时对人体呼气中酒精含量的检测已日益受到重视,酒精浓度测试仪逐渐得到广泛应用。此外,酒精测试仪也可应用于食品加工、酿酒等需要监控空气中酒精浓度的场合。如今,气体传感器向低功耗、多功能、集成化方向的发展,因此,酒精浓度检测仪具有十分广阔的现实市场和潜在的市场要求。 综观现有的酒精检测器,系统实现方案上大部分以单片机为基础,并借助相应的外围电路,将检测结果通过LED、LCD 等显示方式告知使用者。本设计用的 MQK2 酒精传感器就是一种对气体敏感的化学传感器,它能随着外部气体的浓度或不同而改变敏感膜的电阻。系统选 AT89S52单片机为控制核心,对检测到的气体状况进行相应的处理分析、处理和显示,并通过报警进行提示。关键词:酒精传感器 MQK2 AT89C51 单片机IIAbstractEnterprise from the factory to households, alcohol leak detection, monitoring and monitoring of drinking and driving for the personal and property safety of the residents is very important and necessary. At the same time, with the rapid development of Chinas economy, peoples living standards increasing quickly, more and more people have their own private cars, drunk driving is a main factor which causes accidents, the data shows, major traffic accident happened in recent years in our country, nearly a third is caused by drunken driving. Because people safety consciousness enhancement, improvement of living comfort and safety to the environment, in order to prevent drunk driving motor vehicle driving personnel, on-site detection of alcohol content in real-time to the human body expiratory has been increasingly valued, alcohol tester is gradually widely used. In addition, alcohol tester can also be used in food processing, brewing, etc need to monitor the alcohol concentration in the air. Today, the gas sensor to the development of low power consumption, multi-function, integration direction, therefore, alcohol concentration detector has a very broad market reality and potential market demands. Throughout the existing alcohol detector, the system implementation scheme on most based on single chip microcomputer, and with the aid of corresponding periphery circuit, will test results to inform the user by way of LED, LCD display. This design with MQK2 alcohol sensor is a kind of chemical sensor is sensitive to the gas, it can be changed by external gas concentration or different sensitive membrane resistance. System AT89S52 single chip microcomputer as the control core, to detect the corresponding processing, after analyzing the situation of gas, processing and display, and through the alarm prompt.Keywords:Alcohol sensor .MQK2.AT89C51 single chip microcomputerIII目 录摘 要 IABSTRACT.II目 录 III一、前言 1二、酒精测试仪总体方案设计 12.1 酒精浓度检测仪设计要求分析 12.2 酒精浓度检测仪设计方案 1三、硬件设计 33.1 传感器的选择 33.2 A/D 转换电路 .43.2.1 ADC0809 的引脚及功能 .53.2.2 ADC0809 的结构及转换原理 .73.3 89C52 单片机系统 .8IV3.3.1 单片机片内结构 83.3.2 89C52 芯片介绍 103.3.3 晶振电路和复位电路 .121) 时钟电路 13(2) 复位电路 .13(3)89C52 中断技术概述 .143.4 LED 显示电路 143.5 键盘电路 153.6 报警电路 163.6.1 声音报警电路 17四、软件设计 .174.1 主程序框图 .174.2 数据采集子程序程序框图 184.3 键盘扫描子程序 194.4 键盘阈值设定子程序 .194.5 显示子程序 .194.6 报警子程序 .20五、测试结果及结论 .215.1 硬件调试 .215.2 结论 .23致谢 .24参考文献: .25V附原理图 .26附程序 .26附图 PCB .292酒精浓度检测仪的设计一、前言近年来,我国越来越多的人有了自己的私家车,而酒后驾车造成的交通事故也频繁发生。因此,我国因酒驾应付刑事责任,所以需要设计一酒精浓度测试仪器来检测驾驶员体内酒精含量是否超标。本课程设计研究的是一种以气敏传感器和单片机 A/D 转换器为主,检测驾驶员呼出气体的酒精浓度,并具有声光报警功能的空气酒精浓度监测仪。其可检测出驾驶座空气环境中酒精浓度值,对超标的驾驶员进行声光报警来提示危害。本课题分为两部分:硬件设计部分和软件设计部分。硬件部分为利用MQ3 气敏传感器测量空气中酒精浓度,并转换为电压信号,经 A/D 转换器转换成数字信号后传给单片机系统,由单片机及其相应外围电路进行信号的处理,显示酒精浓度值以及超阈值声光报警。程序采用模块化设计思想,各个子程序的功能相对独立,便于调试和修改。而硬件电路又大体可分为单片机小系统电路、A/D 转换电路、声光报警电路、LED 显示电路,按键电路。二、酒精测试仪总体方案设计2.1 酒精浓度检测仪设计要求分析设计的酒精浓度测试仪应具有如下特点:(1)数据采集系统以单片机为控制核心,外围电路带有LED显示以及键盘响应电路,用户就可以与之进行交互工作,完成数据的采集、存储、计算、分析等过程。(2)系统具有低功耗、小型化、高性价比等特点。(3)从便携式的角度出发,系统成功使用了数码管显示器以及小键盘。由单片机系统控制键盘和LED显示来实现人机交互操作,界面友好。(4)软件设计通俗易操作。2.2 酒精浓度检测仪设计方案设计时,考虑酒精浓度是由传感器把非电量转换为电量,传感器输出的是0-5伏的电压值且电压值稳定,外部干扰小等。因此,可以直接把传感器输出电压值经过A/D转换器转换得到数据送入单片机进行处理。此外,还需接入LED数码管显示,键盘设定,报警电路等。3其总体框图如图2-1所示。被测环境气敏传感器A/D 转换电路 单片机声光报警电路LED 显示键盘图2-1 基本工作原理图三、硬件设计3.1 传感器的选择本系统直接测量的是呼气中的酒精浓度,再转换为血液中的酒精含量浓度,故采用气敏传感器。因周围环境的影响,所以传感器只能对酒精气体敏感,对其他气体不敏感,故选用MQ3型气敏传感器。其有很高的灵敏度、良好的选择性、长期的使用寿命和可靠的稳定性。MQ3型气敏传感器由微型Al2O3,陶瓷管和SnO2敏感层、测量电极和加热器构成的敏感元件固定在塑料或不锈钢的腔体内,加热器为气敏元件的工作提供了必要的工作条件。传感器的标准回路有两部分组成。其一为加热回路,其二为信号输出回路,它可以准确反映传感器表面电阻值的变化。传感器的表面电阻RS的变化,是通过与其串联的负载电阻RL上的有效电压信号VRL输出面获得的。负载电阻RL可调为05-200K。加热电压Uh为5v。上述这些参数使得传感器输出电压为0-5V。MQ3型气敏传感器的结构和外形、标准回路、传感器阻值变化率与酒精浓度、外界温度的关系图如图3-3所示。为了使测量的精度达到最高,误差最小,需要找到合适的温度,一般在测量前需将传感器预热5分钟。4图3-1 MQ3 结构和外形RA1220RA25.1IN1 23 45 6MQ-3图3-2 MQ3 结构图图3-3 传感器阻值变化率与酒精浓度、外界温度之间的关系3.2 A/D转换电路在单片机应用系统中,被测量对象的有关变化量,须经传感器转换成连续变化的模拟电信号(电压或电流),这些模拟电信号必须转换成数字量后才能在单片机中用软件进行处理。实现模拟量转换成数字量的器件称为 A/D转换器(ADC)。A/D 转换器大致分有三类:一是双积分 A/D 转换器,优点是精度高,抗干扰性好,价格便宜,但速度慢;二是逐次逼近型 A/D 转换器,精度、速度、5价格适中;三是-A/D 转换器。该设计中选用的是 ADC0809 属第二类,是 8 位 A/D 转换器。0809 具有 8路模拟信号输入端口,地址线(23-25 脚)可决定那一路模拟信号进行 A/D转换。22 脚为地址锁存控制,当输入为高电平时,对地址信号进行锁存。6脚为测试控制,当输入一个 2s 的高电平脉冲时,就开始 A/D 转换。7 引脚为 A/D 转换结束标志,当 A/D 转换结束时,7 脚输出高电平。9 脚为 A/D 转换数据输出允许端,当 OE 脚为高电平时,A/D 转换数据输出。10 脚为 0809的时钟输入端。3.2.1 ADC0809的引脚及功能逐次比较型 A/D 转换器在精度、速度、和价格上都适中,是最常用的A/D 转换器件。芯片采用的是 ADC0809,以下介绍 ADC0809 的引脚及功能。芯片如图 3-4 所示。图 3-4 ADC0809 的引脚ADC0809 是一种逐次比较式 8 路模拟输入、8 位数字量输出的 A/D 转换器。由图可见,ADC0809 共有 28 个引脚,采用双列直插式封装。主要引脚功能如下: IN0-IN7 是 8 路模拟信号输入端。 D0-D7 是 8 位数字量输入端。 A、B、C 与 ALE 控制 8 路模拟通道的切换,A、B、C 分别与 3 根地址线或数据线相连,3 位编码对应 8 个通道地址端口。ADC0809 芯片有 28 条引脚,采用双列直插式封装,如图所示。下面说明6各引脚功能。IN0IN7:8 路模拟量输入端。2-12-8:8 位数字量输出端。ADDA、ADDB、ADDC:3 位地址输入线,用于选通 8 路模拟输入中的一路ALE:地址锁存允许信号,输入,高电平有效。START: A/D 转换启动脉冲输入端,输入一个正脉冲(至少 100ns 宽)使其启动(脉冲上升沿使 0809 复位,下降沿启动 A/D 转换)。EOC: A/D 转换结束信号,输出,当 A/D 转换结束时,此端输出一个高电平(转换期间一直为低电平)。OE:数据输出允许信号,输入,高电平有效。当 A/D 转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于 640KHZ。REF(+)、REF(-):基准电压。Vcc:电源,单一+5V。GND:地。首先输入 3 位地址,并使 ALE=1,将地址存入地址锁存器中。此地址经译码选通 8 路模拟输入之一到比较器。START 上升沿将逐次逼近寄存器复位。下降沿启动 A/D 转换,之后 EOC 输出信号变低,指示转换正在进行。直到A/D 转换完成,EOC 变为高电平,指示 A/D 转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当 OE 输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。转换数据的传送 A/D 转换后得到的数据应及时传送给单片机进行处理。数据传送的关键问题是如何确认 A/D 转换的完成,因为只有确认完成后,才能进行传送。为此可采用下述三种方式。(1)定时传送方式对于一种 A/D 转换器来说,转换时间作为一项技术指标是已知的和固定的。例如 ADC0809 转换时间为 128s,相当于 6MHz 的 MCS-51 单片机共 64个机器周期。可据此设计一个延时子程序,A/D 转换启动后即调用此子程序,延迟时间一到,转换肯定已 经完成了,接着就可进行数据传送。(2)查询方式A/D 转换芯片有表明转换完成的状态信号,例如 ADC0809 的 EOC 端。因此可以用查询方式,测试 EOC 的状态,即可确认转换是否完成,并接着进行7数据传送。(3)中断方式把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。不管使用上述哪种方式,只要一旦确定转换完成,即可通过指令进行数据传送。首先送出口地址并以信号有效时,OE 信号即有效,把转换数据送上数据总线,供单片机接受。需要注意的是:ADC0809 虽然有 8 路模拟通道可以同时输入 8 路模拟信号,但每个瞬间只能换 1 路,共用一个 A/D 转换器进行转换,各路之间的切换由软件改变 C、A、B 引脚上的代码来实现。地址锁存与译码电路完成对 A、B、C 3 个地址位进行锁存和译码,其译码输出用于通道选择,其转换结果通过三态输出锁存器存放、输出,因此可以直接与系统数据总线相连,图3-5 为通道选择表。图 3-5 通道选择表 OE、START、CLK 为控制信号端,OE 为输出允许端,START 为启动信号输入端,CLK 为时钟信号输入端。 VR(+)和 VR(-)为参考电压输入端。3.2.2 ADC0809的结构及转换原理ADC0809 的结构框图如图 3-6。ADC0809 采用逐次比较的方法完成 A/D 转换的,由单一的+5V 电源供电。片内有锁存功能的 8 路选 1 的模拟开关,由C、B、A 引脚的功能来决定所选的通道。0809 完成一次转换需 100s 左右,输出具有 TTL 三态锁存缓冲器,可直接连接到 MCS-51 的数据总线上。通过适当的外接电路,0809 可对 0-5V 的模拟信号进行转换。8START CLKOEVR(+) VR()VCCGNDEOCD0.D7三态输出锁存器8 位A/D转换器地址锁存与密码CBAALE8 路模拟量开 关IN7.IN0图 3-6 ADC0809 的结构框图3.3 89C52单片机系统单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(如算术运算,逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O 口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD 或 LED 驱动电路),脉宽调制电路(PWM),模拟多路转换器及 A/D 转换器等电路集成到一块单块芯片上,构成一个虽小然而完善的计算机系统。3.3.1 单片机片内结构9P1.01 P1.12P1.23 P1.34P1.45 P1.56P1.67 P1.78REST9 P3.0/RXD10P3.1/TXD11 P3.2/INT012P3.3/INT113 P3.4/T014P3.5/T115 P3.6/WR16P3.7/RD17 XTAL218XTAL119 GND20 P2.0 21P2.1 22P2.223P2.3 24P2.4 25P2.526P2.7 28SPEN29ALE 30EA 31P0.732P0.6 33P0.5 34P0.435P0.3 36P0.2 37P0.138P0.0 39VCC 40P2.6 27STC89C52U1STC89C51/52+5D0D1D2D3D4D5D6D752 单片机的片内结构如图 3-8 所示。它把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。按功能划分,它有如下功能部件组成: 微处理器(CPU)。 数据存储器(RAM)。 程序存储器(ROM/EPROM)。 4 个 8 位并行 I/O 口(P0 口、P1 口、P2 口、P3 口)。 一个串行口。 2 个 16 位定时器、计数器。 2 个 16 位定时器、计数器。 中断系统。 特殊功能寄存器(SFR)。10PSEN88EOCXTAL1CPU(运算器)(控制器)数据存储器RAMP0 P2 程序存储器ROM/EPROMP1串行口定时器/计数器中断系 统特殊功能寄存器(SFR)P3ALE EAIN7.I0XTAL28 8RESET图 3-8 52 单片机片内结构上述功能部件都是通过片内单一总线连接而成,其基本结构依旧是 CPU加上外围芯片的传统结构模式。但 CPU 对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。从硬件角度来看,与 MCS-52 指令完全兼容的新一代 AT89CXX 系列机,比在片外加 EPROM 才能相当的 8031 单片机抗干扰性能强,与 87C51 单片机技能相当,但功耗小。程序修改直接用+5V 或+12V 电源擦除,更显方便、而且其工作电压放宽至 2.7V-6V,因而受电压波动的影响更小,而且 4K 的程序存储器完全能满足单片机系统的软件要求,故 AT89C52 单片机是构造本检测系统的更理想的选择。3.3.2 89C52芯片介绍掌握 MCS-52 单片机,应首先了解 MCS-52 的引脚,熟悉并牢记各引脚的功能,MCS-52 系列中各种型号芯片的引脚是互相兼容的。制作工艺为 HMOS的 MCS-52 的单片机都采用 40 只引脚的双列直插封装方式,如图 3-9 所示。11P 1 . 0P 1 . 1P 1 . 2P 1 . 3P 1 . 4P 1 . 5P 1 . 6P 1 . 7R S T( T X D ) P 3 . 1( I N T 0 ) P 3 . 2( I N T 1 ) P 3 . 3T 0 P 3 . 4T 1 P 3 . 5( W R ) P 3 . 6( R D ) P 3 . 7X T A L 1X T A L 2G N DV c cP 0 . 0 ( A D 0 )P 0 . 1 ( A D 1 )P 0 . 2 ( A D 2 )P 0 . 3 ( A D 3 )P 0 . 4 ( A D 4 )P 0 . 5 ( A D 5 )P 0 . 6 ( A D 6 )P 0 . 7 ( A D 7 )E A / V P PP S E NP 2 . 7 ( A 1 5 )P 2 . 6 ( A 1 4 )P 2 . 5 ( A 1 3 )P 2 . 4 ( A 1 2 )P 2 . 3 ( A 1 1 )P 2 . 2 ( A 1 0 )P 2 . 1 ( A 9 )P 2 . 0 ( A 8 )P D I P( R X D ) P 3 . 0A L E / P R O G图 3-9 AT89C52 芯片管脚图40 只引脚按其功能来分,可分为如下 3 类: 电源及时钟引脚:Vcc、Vss、XTAL1、XTAL2。电源引脚接入单片机的工作电源。Vcc 接+5V 电源,Vss 接地。时钟引脚 XTAL1、XTAL2 外接晶体与片内的反相放大器构成了 1 个晶体振荡器,它为单片机提供了时钟控制信号。2 个时钟引脚也可外接独立的晶体振荡器。XTAL1 接外部的一个引脚。该引脚内部是一个反相放大器的输入端。这个反相放大器构成了片内振荡器。如果采用外接晶体振荡器时,此引脚接地。XTAL2 接外部晶体的另一端,在该引脚内部接至内部反相放大器的输出端。若采用外部时钟振荡器时,该引脚接受时钟振荡器的信号,即把此信号直接接到内部时钟发生器的输入端。 控制引脚: 、ALE、 、RESET(RST )。此类引脚提供控制信号,PSENA有的还具有复用功能。 RST/VPD 引脚:RESET(RST)是复位信号输入端,高电平有效。当单片机运行时,在此引脚加上持续时间大于 2 个机器周期(24 个振荡周期)的高电平时,就可以完成复位操作。在单片机工作时,此引脚应为0.5V 低电平。VPD 为本引脚的第二功能,即备用电源的输入。当主电源发生故障,降12低到某一规定值的低电平时,将+5V 电源自动接入 RST 端,为内部 RAM 提供备用电源,以保证片内 RAM 的信息不丢失,从而使单片机在复位后能正常进行。 ALE/ 引脚:ALE 引脚输出为地址锁存允许信号,当单片机上电PROG正常工作后 ALE 引脚不断输出正脉冲信号。当单片机访问外部存储器时,ALE 输出信号的负跳沿用于单片机发出的低 8 位地址经外部锁存器锁存的锁存控制信号。即使不访问外部锁存器,ALE 端仍有正脉冲信号输出,此频率为时钟振荡器频率的 1/6。 为该引脚的第二功能。在对片内 EPROM 型单PROG片机编程写入时,此引脚作为编程脉冲输入端。 引脚:程序存储器允许输出控制端。在单片机访问外部程序存储PSEN器时,此引脚输出脉冲负跳沿作为读外部程序存储器的选通信号。此引脚接外部程序存储器的 OE(输出允许端)。 /VPP 引脚: 功能为片内程序存储器选择控制端。当 引脚为高AE EA电平时,单片机访问片内程序存储器,但在 PC 值超过 0FFFH 时,即超出片内程序存储器的 4KB 地址范围时将自动转向执行外部程序存储器内的程序。当 引脚为低时,单片机只访问外部程序存储器,不论是否有内部程序存储E器。 I/O 口引脚:P0、P1、P2、P3,为四个 8 位 I/O 口的外部引脚。P0口、P1 口、P2 口、P3 口是 3 个 8 位准双向的 I/O 口,各口线在片内均有固定的上拉电阻。当这 3 个准双向 I/O 口作输入口使用时,要向该口先写 1,另外准双向口 I/O 口无高阻的“浮空”状态。由于单片机具有体积小、质量轻、价格便宜、耗电少等突出特点,所以本系统采用 89C51 单片机,硬件设计电路图如图 1 所示。89C51 内部有 4KB的 EPROM,128 字节的 RAM,所以一般都要根据所需存储容量的大小来扩展ROM 和 RAM。本电路 接高电平,没有扩展片外 ROM 和 RAM。 EA3.3.3 晶振电路和复位电路最小系统包括单片机及其所需的必要的电源、时钟、复位等部件,能使单片机始终处于正常的运行状态。电源、时钟等电路是使单片机能运行的必备条件,通过对其进行存储器扩展、A/D 扩展等,使单片机完成较复杂的功能。89C52 是片内有 ROM/EPROM 的单片机,因此,这种芯片构成的最小系统13简单可靠。用 89C52 单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,结构如图 3-10 所示,由于集成度的限制,最小应用系统只能用作一些小型的控制单元。时钟电路复位电路STC89C5 单片机I/O口图 3-10 单片机最小系统原理框图1) 时钟电路89C52 单片机的时钟信号通常有两种方式产生:一是内部时钟方式,二是外部时钟方式。内部时钟方式如图 3-11 所示。在 89C52 单片机内部有一振荡电路,只要在单片机的 XTAL1(18)和 XTAL2(19)引脚外接石英晶体(简称晶振),就构成了自激振荡器并在单片机内部产生时钟脉冲信号。图中电容C1 和 C2 的作用是稳定频率和快速起振,电容值在 530pF,典型值为 30pF。晶振 CYS 的振荡频率范围在 1.212MHz 间选择,典型值为 12MHz 和 6MHz。Y111.0592MHzC230pFC330pF1819图 3-11 89C52 内部时钟电路(2) 复位电路当在 89C52 单片机的 RST 引脚引入高电平并保持 2 个机器周期时,单片机内部就执行复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充放电来实现的。只要 Vcc 的上升时间不超过 1ms,就可以实现自动上电复位。14除了上电复位外,有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过 RST(9)端与电源 Vcc 接通而实现的R110kC110uFS4VCC9图 3-12 89C52 复位电路(3)89C52 中断技术概述中断技术主要用于实时监测与控制,要求单片机能及时地响应中断请求源提出的服务请求,并作出快速响应、及时处理。这是由片内的中断系统来实现的。当中断请求源发出中断请求时,如果中断请求被允许,单片机暂时中止当前正在执行的主程序,转到中断服务处理程序处理中断服务请求。中断服务处理程序处理完中断服务请求后,再回到原来被中止的程序之处(断点),继续执行被中断的主程序。图 3-13 为整个中断响应和处理过程。图 3-13 中断响应和处理过程3.4 LED显示电路LED 数码管(LED Segment Displays)是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。数码管分为动态显示和静态显示驱动两种,静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的 I/O 端口进行驱动,或者使用如 BCD 码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 端口多,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8 个显示笔划“a,b,c,d,e,f,g,dp“的同名端连在一起,另外为每个数码管的公共极15COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的 I/O 端口,而且功耗更低。本设计利用三极管驱动数码管,用 4.7k 电阻起到限流作用,使得数码管亮度适中。数码管显示电路如下abfcgdeVCC1234567abcdefg8 dp dp9DS1REDCAabfcgdeVCC1234567abcdefg8 dp dp9DS2REDCAabfcgdeVCC1234567abcdefg8 dp dp9DS3REDCAabfcgdeVCC1234567abcdefg8 dp dp9DS4REDCAD0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7Q1PNP Q2PNP Q3PNP Q4PNP+5R14.7k R24.7k R34.7k R44.7k图 3-14 数码管显示电路3.5键盘电路本设计采用按键接低的方式来读取按键,单片机初始时,因为为高电平,当按键按下的时候,会给单片机一个低电平,单片机对信号进行处理单片机键盘有独立键盘和矩阵式键盘两种:独立键盘每一个 I/O 口上只接一个按键,按键的另一端接电源或接地(一般接地),这种接法程序比较简单且系统更加稳定;而矩阵式键盘式接法程序比较复杂,但是占用的 I/O16少。根据本设计的需要这里选用了独立式键盘接法。独立式键盘的实现方法是利用单片机 I/O 口读取口的电平高低来判断是否有键按下。将常开按键的一端接地,另一端接一个 I/O 口,程序开始时将此 I/O 口置于高电平,平时无键按下时 I/O 口保护高电平。当有键按下时,此 I/O 口与地短路迫使 I/O 口为低电平。按键释放后,单片机内部的上拉电阻使 I/O 口仍然保持高电平。在用单片机对键盘处理的时候涉及到了一个重要的过程,那就是键盘的去抖动。这里说的抖动是机械的抖动,是当键盘在未按到按下的临界区产生的电平不稳定正常现象,并不是我们在按键时通过注意可以避免的。这种抖动一般 10200 毫秒之间,这种不稳定电平的抖动时间对于人来说太快了,而对于时钟是微秒的单片机而言则是慢长的。硬件去抖动就是用部分电路对抖动部分加之处理,软件去抖动不是去掉抖动,而是避抖动部分的时间,等键盘稳定了再对其处理。所以这里选择了软件去抖动,实现法是先查寻按键当有低电平出现时立即延时 10200 毫秒以避开抖动(经典值为 20 毫秒),延时结束后再读一次 I/O 口的值,这一次的值如果为 1 表示低电平的时间不到 10200 毫秒,视为干扰信号。当读出的值是 0 时则表示有按键按下,调用相应的处理程序。硬件电路如图 3-15 所示:S1SW SPSTS2SW SPSTS3SW SPSTk1 k2 k3图 3-15 按键电路3.6报警电路3.6.1 灯光提示电路17GNDD2LEDD1LEDRL12.2KRL22.2K图 3-16 灯光提示电路LED 发光二极管,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光。据分析,LED 的特点非常明显,寿命长、光效高、辐射低与功耗低。作为目前全球最受瞩目的新一代光源,LED 因其高亮度、低热量、长寿命、无毒、可回收再利用等优点。本设计利用 LED 指示烟雾报警。3.6.1 声音报警电路Q 18 5 5 0器 器 器V C CR 41 kP 3 4图 3-17 声音报警电路四、软件设计184.1 主程序框图19图 4-1 主程序框图4.2数据采集子程序程序框图A/D 转换子程序流程图如下图 4-4 所示。ADC0809 初始化后,把 0 通道输入的 0-5V的模拟信号转换为对应的数字量,然后将对应数值存储到内存单元。开始初始化读取 AD 转换酒精值判断当前酒精范围判断按键是否按下执行相应的指示控制设置相应参数显示设置数值结束NY20开始启动 ADC0809 通道,并延时 100s转换完?读出 A/D 转换结果结果存入内存单元返回YN图 4-2 数据采集子程序框图回重新设定阈值。键盘输入的数字键即为阈值,将其保存在 50H 开始的 3 个单元,为了便于比较和显示,阈值的千位 50H 中,百位和十位放入 5lH,个位放人 52H 中。4.3键盘扫描子程序 键盘扫描子程序为通过扫描判断是否有键按下,如有键按下则读出各个按键值。并根据键值判断是进人提示界面还是完成阈值设定的输入,或返回。4.4键盘阈值设定子程序键盘阈值设定子程序 键盘阈值设定子程序首先判断是否有键按下,若有键按下,判断是“0-9“键,还是“F“键。如果是“0-9“这些数字键。则进行数字键处理,是“F“键则返回重新设定阈值。键盘输入的数字键即为阈值,将其保存在 50H 开始的 3 个单元,为了便于比较和显示,阈值的千位 50H 中,百位和十位放入 5lH,个位放人 52H 中。214.5 显示子程序本课题显示为 LCD 显示。显示子程序分为开机界面显示程序,提示界面显示程序,阈值设定界面显示程序,测量界面结果显示程序。 显示部分用4 个数码管显示当前数据,数码管分别用 2 个 74HC573 锁存器控制段选和位选,锁存器与单片机 I/O 口连接,位锁存器输出端分别与数码管片选连接,段锁存器输出端接数码管段输入端连接。锁存器片选输入端为高电平时,I/O 口数据输入锁存器,当输入为低电平时,锁存器关闭并将数据保持住。4.6 报警子程序系统设定阈值并存在以 50H 开始的 3 个单元,为了便于比较和显示,阈值的千位放入 50H 中,百位和十位放入 5lH,个位放人 52H 中。报警电路分为蜂鸣器报警电路和 LCD 发光报警电路组成。当输入端 P1.0 为低电平时,有电流通过蜂鸣器,蜂鸣器发出声音报警。而当输入端为高电平时不报警。当输人端 P1.1 为低电平时,LCD 点亮报警,反之输入端 P1.1 为高电平则不报警。报警子程序执行之前,将报警阈值转换为压缩的 BCD 码并存放在两个存储单元中。传感器输入值 A/D 转换后,调用比较程序,经过数据处理后显示的测量值与阈值比较,小于阈值则继续执行显示程序。若大于阈值则片机的 P1.0、P1.1 两端口清零进行声光报警。40H、4lH、42H 单元存放 A/D 转换后,并进行十进制转换后的结果。40H 和 50H 分别存放的是处理后的测量值与阈值的千位的压缩 BCD 码,41H 和 51H 分别存放的是处理后的测量值与阈值的百位、十位压缩的 BCD 码,42H 和 52H 分别存放的是处理后的测量值与阈值的个位的压缩 BCD 码。程序首先对 40H、50H 中的值进行比较大小,如果 40H 中的值大于 50H 中的值,则进行报警。依此类推,比较 41H 和51H,42H 和 52H。22五、测试结果及结论5.1硬件调试我们利用三个按键来实现整个系统的运行,数码显示管会显示报警的峰值,大于峰值进行报警,运行显示如图 3.19 所示。23图 3-18 正面图24图 3-19 运行图焊接的时候尽量走锡,不要走太多的飞线,不然很容易出现问题,而且很难查找出来。正面图以原理图为依据,然后是越美观越好,可以根据 PCB 的突来摆设位置更加方便连线。如图 3.18 所示。5.2 结论经过一周的努力,终于完成了酒精浓度测试仪的课程设计。这是我第一次基于单片机独立设计一个东西,并且老师只给出了大致要求。这对于我来说是很有挑战性的。首先这是一个基于单片机的课程设计,单片机是这学期学习的课程,虽然不陌生,但是用起来还发现很多的问题。硬件方面还好解决,弄明白就可以了,但软件方面就非常困难了,虽然以前还做过这方面的实验,但那都是是些简单应用。这次设计真的让我长进了很多,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握。其次,就是使用到的各种元器件。这次我使用的基本上都是已经学过的元件,但真正用起来才发现自己还差的很多,所以我又重新对所用到的器件仔仔细细,认认真真的研究了一遍从引脚,到时序,再到最后的电路整体构成,下了非常大的功夫才最后弄出来。回顾起此次单片机课程设计,我仍感慨颇多。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。这让我学到了很多课本上没有的东西,扩展了自己的视野,增强了自己的动手能力,清醒的认识到自25己的不足,培养了小心谨慎的作风,使自己对课题设计了解进一步加深。总之,此次的课程设计使我收获颇丰,也是我上大学来难忘的一次经历。致谢这次毕业设计得到了很多人的帮助,其中申远老师对我的关心和支持尤为重要,每次遇到难题,我首先想到的就是向金老师寻求帮助。另外,他严谨的作风使我的论文即使在谨小细微处也给予了纠正,让我的论文无论是结构还是内容变得更加公整、紧凑,感谢申老师对我的悉心指导。感谢校方给予我这样一次机会,能够独立地完成这样一个设计,作为检验这些年来学习的成果,在这个过程当中,学校给予我们各种方便,使我们在即将离校的最后一段时间里,能够更多学习一些实践应用知识,增强了我们实践操作和动手应用能力,提高了独立思考的能力。再一次对我的母校表示感谢。
收藏