ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:1.43MB ,
资源ID:6005618      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/6005618.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(基于AT89S51单片机酒精浓度探测仪.docx)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

基于AT89S51单片机酒精浓度探测仪.docx

1、必读参考资料: [1] 张培仁.基于汇编语言编程MCS-51单片机原理与应用[M].北京:清华大学出版社,2003. [2] 吴桂秀.传感器应用制作入门[M].浙江科学技术出版社,2004. 目 录 摘 要 I Abstract II 1 绪论 1 1.1 设计背景 1 1.2 气敏传感器的研究现状 1 1.3 设计酒精气体传感器的意义 2 1.4 本文主要研究工作 2 2 硬件电路设计与实现 4 2.1 单片机开发流程 4 2.2 硬件系统框图 4 2.3 信号采集电路 5 2.4 信号转换电路 8 2.5 发光二极管显示报警电路 14 2.6 数码

2、管显示电路 16 2.7 系统整体电路图 18 3 软件编程 20 3.1 开发环境 20 3.2 程序流程 20 3.3 程序代码编写 22 4 电路调试与测试结果 28 4.1 电路调试 28 4.2 浓度与显示之间的关系 29 5 结束语 33 参考文献 34 附 录 35 致 谢 38 摘 要 本设计实现了对不同浓度酒精的检测和显示,通过适当改进可以用于检测酒后驾车。本文用AT89S51单片机与MQ-3型气体传感器实现了对酒精浓度的测量。论文主要研究了(1)硬件方面,MQ-3气体传感器技术参数的检测和将它接入到酒精浓度检测模块中;将模拟电压信号

3、放大驱动发光二极管点亮报警;将采集到的模拟电压信号通过单片机控制经A/D转换,得到数字电压信号;用于显示浓度的数码管显示模块。(2)软件方面,主要研究了电压到浓度的线性转换和最终浓度值的数码管显示。(3)对设计的传感器进行了标定。设计的传感器对酒精气体反应灵敏,能在有效范围内测量它的浓度值。并且在检测低浓度酒精时误差较小,最大误差为8.2%满足设计要求。 本文的特色在于标准的确定。对于流动空气,样品的稳定性和水蒸气的影响,提出了解决方案和验证方法。对不同的区间浓度和电压转换关系做线性化处理,简化了硬件电路的设计。设计的传感器可以检测不同浓度的酒精气体,改进之后对解决酒后驾车事故和特殊场合酒精

4、检测都可以使用。 1 绪论 1.1 设计背景 我国传感器市场的增长率超过15%,2003年销售额为186亿元人民币,2006年销售额为283亿元人民币,预计2007年为325亿元人民币,2008年为374亿元人民币。我国传感器4大类中,工业和汽车电子产品占市场份额的33.5%。近年来,传感器正处于传统型向新型传感器转型的发展阶段,新型传感器的特点是微型化、数字化、智能化、多功能化、系统化、网络化,它将不仅促进系统产业的改造,而且可导致建立新型工业和军事变革,是21世纪新的经济增长点[1]。 由于气体与人类的日常生活密切相关,对气体的检测已经是保护和改善生态居住环境不

5、可缺少的手段,气体传感器发挥着极其重要的作用。气体传感器是把气体中的特定成分检测出来,并转化为电信号的一类器件,用来对有害气体,易燃易爆气体等进行安全检测和报警,对生产生活中需要了解的气体进行检测,分析,研究等。近年来,我国气敏传感器产业有了较快的发展,但与国外相比,从技术水平,产业化及应用等领域均存在着不小的差距。 目前,气敏传感器领域还存在一些问题。一是元件的稳定性差。由于元件电阻和灵敏度随时间而不断变化,漂移大给检测结果的可靠性带来不稳定的因素。二是选择性差。由于在检测气体时,往往还存在着其它的干扰气体(如烟酒等),使气敏元件发生交叉响应,产生误报。三是催化剂中毒。掺有催化剂的气敏元件

6、接触某些气体后,活性组分被毒化,将会改变元件的选择性,降低其敏感度和稳定性,另外催化剂本身也存在着不稳定性问题。灵敏度问题。四是SnO2元件有时由于灵敏度过大导致误报,但是在检测某些低浓度气体时灵敏度却难以达到要求[2]。 1.2 气敏传感器的研究现状 气敏元件性能与敏感功能材料的种类、结构及制作工艺密切相关。用金属氧化敏感材料制作的半导体式气敏元件具有灵敏度高,结构简单,体小质轻,坚固耐用等优点而得到广泛的应用,目前仍以SnO2材料为主[3]。SnO2是一种广普型的气敏材料,围绕SnO2为基体材料的气敏材料的制备及其气敏元件制备的研究课题十分活跃。纯SnO2的气敏特性不甚好,尤其是它的热

7、稳定性不高。为改善其气敏特性,常在SnO2基体中掺入贵金属或其他金属氧化物。尽管SnO2基传感材料具有许多优点,作为材料也存在一定缺点。通过控制气敏材料微粒大小,颗粒纳米化,掺杂其它添加剂或催化剂,利用过滤设备或透气膜来获得选择性,控制工作温度及环境湿度影响,改进制备等方法可以改善SnO2传感器的气敏性能[4]。 纳米科学技术(Nano—ST)是研究尺寸在0.1—100nm的物质组成体系的运动规律和相互作用以及可能的实际应用中的技术问题的科学技术。纳米技术的发展,不仅为传感器提供了优良的敏感材料,而且为传感器制作提供了许多新型方法。纳米固体材料具有庞大的界面,提供了大量气体通道,从而大大提高

8、了灵敏度,工作温度大大降低,大大缩小了传感器的尺寸。当然,在己获得明显进展的纳米传感领域中尚存在很多问题,从敏感材料到制作技术都很不成熟,其性能也有不尽人意的地方[5]。 气敏传感器在家用电器中也有相当广泛的应用。吸油烟机等产品上常用MQ-3型半导体气敏传感器,它采用旁热式结构,陶瓷管内装有高阻抗加热丝,管外涂有梳状金属电极,金属电极之外涂有SnO2材料,使SnO2烧结体位于两电极之间[6]。气敏传感器工作时,加热器通电加热,若无被检气体侵入时,气敏元件的阻值基本不变当气敏元件表面产生吸附作用,其阻值将随气体浓度的变化变化。当被检气体浓度增大到一定值时,气敏元件的阻值将随之下降到某一值,使电

9、压比较器的状态发生变化,输出控制信号经电流放大后,控制继电器或双向晶闸管接通电动机电源使吸排油烟机工作[7]。 1.3 设计酒精浓度探测仪的意义 本设计基于AT89S51单片机设计的酒精气体浓度探测仪,可用来检测酒精气体浓度,最主要的用途是检测司机的酒精含量。酒后驾车发生事故的机率高达27%。随着摄入酒精量的增加,选择反应错误率显著增加,当血液中酒精含量由0.5‰增至1‰,发生车祸的可能性便增加5倍,如果增至1.5‰,可能性再增加6倍。机动车驾驶人员“酒后驾车” 及“醉酒驾车”极易发生道路交通事故, 严重危害了道路交通安全和人民生命财产安全。人饮酒后, 酒精通过消化系统被人体吸收, 经过血

10、液循环, 约有90%的酒精通过肺部呼气排出, 因此测量呼气中的酒精含量, 就可判断其醉酒程度。开车司机只要将嘴对着传感头使劲吹气,仪器就能发上显示出酒精浓度的高低,从而判断该司机是否酒后驾车,避免事故的发生。当然,最好的办法是在车内安装这种测试仪,司机一进入车内检测仪就检测司机的酒精含量,如果超出允许值,系统控制引擎无法启动,这样就可从根本上解决酒后驾车问题。 酒精气体浓度探测仪在生产生活中也有重要的应用,比如,在一些环境要求严格的生产车间,用这种酒精浓度探测仪,可随时检测车间内的酒精气体浓度,当酒精气体浓度高于允许限定值时,发出警报,提醒人们及时通风换气,做到安全生产。 1.4

11、本文主要研究工作 本文以AT89S51单片机为核心,设计了用于测量酒精浓度的探测仪,主要研究工作包括以下3个方面。 (1)硬件电路方面,对气体传感器MQ-3按检测电路,接上一定阻值的负载电阻,检测它的技术参数,确定MQ-3所接负载电阻的大小,完成信号采样电路的设计;采样到的模拟电压电信号通过A/D转换,得到可供单片机处理的数字信号,再由单片机作相应的数据处理;四位共阳数码管浓度值显示。 (2)软件方面,标准的确定是该部分要做的主要工作。因为原始的采样值是一个间接的负载分压值,需要将它转化为被测酒精浓度值。通过多个样品的测量确定多个浓度区间的转换标准,并将每个区间的转换关系近似线性化处理,

12、然后通过软件编程的方法来实现。 (3)为了尽量减少设计的气体传感器的测量误差,在测量酒精溶液样品时要考虑并解决3个主要问题。一是外界环境流动空气对传感器的影响和对气体样品的稀释,二是样品的稳定性对测量带来的误差,三是水蒸气对测量的影响。针对这3个主要问题提出以下解决方案和验证方法。 测量样品时,将探头尽量放入塑料瓶内,可以在一定程度上消除流动空气的影响,同时应选择空气流动较小的室内环境来测量。水蒸气对MQ-3的影响很小,这一点可以通过对只装有纯净水的塑料瓶的多次测量来验证。用相同容量的塑料瓶配制好不同浓度的酒精溶液后,将它密封并放置一段时间,待其稳定后再测量。再通过反复多次测量多组数据,求

13、其平均值的方法来缩小测量误差。 2 硬件电路设计与实现 2.1 单片机开发流程 (1)可行性调研。可行性调研的目的,是分析完成这个项目的可能性。进行这方面的工作,可参考国内外有关资料,看是否有人进行过类似的工作。如果有,则可分析他人是如何进行这方面工作的,有什么有点和缺点,有什么值得借鉴的;如果没有,则需要作进一步的调研,此时的重点应放在能否实现这个环节,首先从理论上进行分析,探讨实现的可能性,所需求的客观条件是否具备,然后结合实际情况,再决定能否立项的问题。 (2)系统总体方案的设计。在进行可行性调研后,如果可以立项,下一步工作就是系统总体方案的设计。工作的重点应放在该项目的技术难度

14、上,此时可参考这一方面更详细、更具体的资料,根据系统的不同部分和要实现的功能,参考国内外同类产品的性能,提出合理而可行的技术指标,编写出设计任务书,从而完成系统总体方案设计。 (3)设计方案细化,确定软硬件功能。一旦总体方案确定下来,下一步的工作就是将该项目细化,即需明确哪些部分用硬件来完成,哪些部分用软件来完成。由于硬件结构与软件方案会相互影响,因此,从简化电路结构、降低成本、减少故障率、提高系统的灵活性与通用性方面考虑,提倡软件能实现的功能尽可能由软件来完成;但也应考虑软件代硬件的实质是以降低系统的实时性、增加处理进行为代价的,而且软件设计费用、研制周期也将增加,因此系统的软硬件功能分配

15、应根据系统的要求及实际情况而合理安排,统一考虑。在确定软硬件功能的基础上,设计者的工作就开始涉及到具体的问题,如仪器的体积及与具体技术指标相对应的硬件实现方案,软件的总体规划等。在确定人员分工、安排工作进度、规定接口参数后,就比须考虑硬件软件的具体问题了。 (4)一个单片机应用系统经过调研、总体设计、硬件软件设计、制版、元件安装后,在系统的程序存储器中放入编制好的应用程序,系统即可运行。但一次性成功的几乎是不是不可能的。由于单片机在执行程序时人工是无法控制的,为了能够调试程序,检查硬件、软件运行情况,这就需要借助某种开发工具模拟用户实际的单片机,并且能随时观察运行的中间过程而不改变运行中有的

16、数据性能和结果,从而进行模拟现场的真实调试。 2.2 硬件系统框图 基于AT89S51单片机用MQ-3型气体传感器实现酒精气体浓度的检测,需要信号采集模块用于对酒精浓度信号的采集,该信号是通过MQ-3气体传感器和负载电压得到分压电信号。信号转换模块用来把采集到得模拟电压信号转换位可以用单片机处理的数字信号。数码管显示模块是对单片机处理后的数字信号的显示,用来显示酒精的浓度。根据各功能模块的设计,可得到它的系统总框图,如图1所示。 酒精 气敏传感器 LM3914 发光二极管 ADC0832 单片机 数码管 图1 系统总框图 2.3 信号采集电路 2.3.1 气体传感

17、器的选择 根据被检测气体的不同,气敏传感器可分为以下三类: (1)可燃性气体气敏传感器。目前该类气敏传感器需求量最大,包含各种无机和有机类气体检测,主要用于抽油烟机、泄露报警器和空气清新剂等方面,并已经形成生产规模,在油田、矿区、化工、企业及家庭等生产和生活领域广泛用作气体泄露报普,特别是用于家庭气体泄露报警,需求量不断增加,使该类传感器有着广泛的发展空间。 (2)CO和H2气敏传感器。CO气敏元件可用于工业生产、环保、汽车、家庭等CO泄露和不完全燃烧检测报警;H2气敏元件除应用于工业等领域外,主要用于家庭管道煤气泄露报警。由于我国管道煤气中H2含量很高,而氢敏元件较氧化碳元件价格低,灵

18、敏度高,因此,用氢敏元件做城市管道煤气泄露报警更为适宜。 (3)毒性气体传感器。毒性气体传感器又称为环境有毒有害气体传感器,主要用于检测烟气、尾气、废气等环境污染气体,虽然SnO2气敏传感器对CO,H2S等有毒有害 气体敏感,但应用最多的仍是电解式化学传感器。 传感器的分类方式有很多种,以上是根据被检测气体的性质进行的分类,也有根据元件的物理特性进行分类的。 一个新型的气体检测系统应该包括: (1)基于一种或几种传感技术的气体传感器。 (2)组合了气体传感器和采样调理电路的探头。 (3)配有人机接口软件的中心监测和控制系统。 (4)在一些应用中,与其它安全系统和仪器的接

19、口。 本设计中的酒精气体传感器采用河南汉威电子有限公司的MQ-3型,它属于MQ系列气敏元件的一种。如图2所示: 图2 MQ-3 特点:检测范围为10ppm~2000ppm ;灵敏度高,输出信号为伏特级;响应速度快, 小于10秒;功耗小于0.75W,尺寸:D17*H10。 MQ-3型气敏传感器的敏感部分是由金属氧化物(二氧化锡)的N型半导体微晶烧结层构成。当其表面吸附有被测气体酒精分子时,表面导电电子比例就会发生变化,从而其表面电阻会随着被测气体浓度的变化而变化。由于这种变化是可逆的,所以能重复使用。 MQ-3的灵敏度特性曲线如 图3所示。 图3 MQ-3灵敏度

20、特性曲线 检测电路如图4所示,当电源开关S断开时,传感器加热电流为零,实测A,B之间电阻大于20MΩ。S接通,则f,f之间电流由开始时155mA降至153mA而稳定。加热开始几秒钟后A,B之间电阻迅速下降至10KΩ以下,然后又逐渐上升至120KΩ以上后并保持着。此时如果将酒精溶液样品靠近MQ-3传感器,我们立即可以看到数字万用表显示值马上由原来大于120KΩ降至10KΩ以下。移开小瓶过1分钟左右后,A,B之间电阻恢复至大于120KΩ。这种反应可以重复试验,但要注意使空气恢复到洁净状态。经实验的反复检测,MQ-3传感器可以正常工作使用,对不同浓度的酒精溶液有不同的变化,响应时间和恢复时间都正常

21、可以开始作信号采样模块电路的设计。 图4 MQ-3检测电路 2.3.2 信号采样电路 信号的采样模块电路如图5所示。MQ-3的加热电阻两端即H引脚接至+5V直流稳压电源,用于电阻丝对敏感体电阻的加热。MQ-3的两个A引脚相连,作为敏感体电阻的一个电极。MQ-3的两个B引脚也连接在一起,作为敏感体电阻的另一个电极。将电极断A接到电源正极,电极端B接两个270Ω并联的电阻。 MQ-3型气敏传感器与电位器串联构成分压电路,采样点为电位器的分压。MQ-3型气敏传感器的敏感部分是由金属氧化物SnO2的N型半导体微晶烧结层构成。当其表面吸附有被测气体酒精分子时,表面导电电子比例就会发生变化

22、从而其表面电阻会随着被测气体浓度的变化而变化。由于这种变化是可逆的,所以能重复使用。当气敏传感器的敏感体电阻阻值发生改变时,对应的电位器的分压值也会发生相应的变化,即一个电压值对应着一个被测酒精气体浓度。对酒精气体浓度的采样就可以转化为对电位器分压的采样。 在采样硬件电路中实际要考虑到MQ-3的实际技术参数,即加热电阻和敏感体电阻的大小,该部分应与电源正极相连。负载电阻要根据MQ-3实际的技术参数而选择阻值合适的电阻。应为实验所用的MQ-3在预热5到10分钟后,它的敏感体电阻只有120KΩ,所以负载电阻选用两个270Ω并联,构成采样部分的分压电阻。 由于Proteus软件中没有酒精传感器

23、的模块,所以用可变电阻替代。 图5 采样模块 2.4 信号转换电路 单片微机是单片微型计算机的译名简称,在国内也常称为“单片微机”或“单片机”。它包括中央处理器CPU,随机存储器RAM,只读存储器ROM,中断系统,定时器/计数器,串行口和I/O口等等。现在,单片微机已不仅指单片计算机,还包括微计算机,微处理器,微控制器和嵌入式控制器,单片微机已是它们的俗称[8]。 AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4K的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集

24、Flash程序存储器,既可在线编程也可以用传统方法进行编程及通用8位微处理器于单片芯片中,可灵活应用于各种控制领域。AT89S51提供以下标准功能:4KBFlash闪存存储器,128B内部RAM,32个I/O口线,看门狗,两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。 根据实际需要,本次设计选用的是以8051为核心单元Atmel公司的低耗AT89S51单片机。AT89S51芯片有40条引脚,采用双列直插式封装,如图6所示。下面说明各引脚功能。 图6 AT89S51芯片管脚 VCC:运行和程序校验时接电源正端。 GND:

25、接地。 XTAL1:输入到单片机内部振荡器的反相放大器。 XTAL2:反相放大器的输出,输入到内部时钟发生器。 P0口:8位漏极开路的。使用片外存储器时,作低八位地址和数据分时复用,能驱动8个LSTTL上拉电阻。 P1口:8位、准双向I/O口。 P2口:8位、准双向I/O口。当使用片外存储器(ROM及RAM)时,输出高8位地址。可以驱动4个LSTTL负载。 P3口:8位、准双向I/O口,具有内部上拉电路,提供各种替代功能。P3.0——RXD串行口输入口,P3.1——TXD串行口输出口,P3.2——外部中断0输入,P3.3——外部中断1输入,P3.4——T0定时器/计数器0的外部输入

26、P3.5——T1定时器/计数器1的外部输入,P3.6——低电平有效,输出,片外存储器写选通,P3.7——低电平有效,输出,片外存储器读选通。 RST:复位输入信号,高电平有效。在振荡器工作时,在RST上作用两个机器周期以上的高电平,将器件复位。 /VCC:片外程序存储器访问允许信号,低电平有效。高电平时选择片内程序存储器,低电平时程序存储器全部在片外而不管片内是否有程序存储器。 ALE/PROG:地址锁存允许信号,输出。ALE以1/6的振荡频率固定速率输出,可作为对外输出的时钟或用作外部定时脉冲。 单片机最小系统的设计包括电源,晶振和复位电路三个部分。这是使单片机正常工作的必要外围电

27、路部分。针对不同型号的单片机在最小系统设计上会有一些差别。对于选用的AT89S51单片机,根据美国ATMEL公司提供的技术资料,可以对它的最小系统作恰当的设计,如图8所示[9]。 对于电源部分,技术资料中性能参数里给出的标准工作电压是4.0~5.5V。因此,单片机的引脚40对应的VCC接到+5V电源的正极,引脚10对应的GND接到+5V电源的接地端,为AT89S51单片机提供正常的工作电压。 对于晶振部分,AT89S51单片机中有一个用于构成内部振荡器的高增益反相放大器,引脚19对应的XTAL1和18对应的XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶

28、瓷谐振器一起构成自激振荡器。如图8所示,石英晶体及电容C1和C2接在放大器的反馈回路中构成并联谐振电路。石英晶体的两端分别接到引脚XTAL1 和引脚XTAL2,同时石英晶体的两端分别接一个电容C1和C2,电容的另一端接地。对于外接电容C1和C2的大小虽然没有十分严格的要求,但电容容量的大小还是会对振荡频率的高低、振荡器工作的稳定性、起振的难易程度和温度稳定性带来一定的影响。根据技术资料的推荐,使用石英晶体推荐电容容量为30pF±10pF,使用陶瓷谐振器推荐电容容量为40pF±10pF。因为电路中接的是石英晶体,所以设计中接的两个电容C1和C2的容量都为33pF。 对于复位电路部分,AT89S

29、51技术资料给出,当振荡器工作时,RST引脚出现两个机器周期以上的高电平将使单片机复位。复位是单片机的初始化操作,当由于程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,可以按复位键以重新启动,所以复位电路的设计很有必要。复位操作有上电自动复位、按键电平复位和外部脉冲复位三种方式,本设计选用按键电平复位方式。如图7所示,10μF的电容C3与270Ω的电阻并联后再与一个10KΩ的电阻串联,电容的正极端接到电源的正极,电容的另一端接至引脚RST。设计中选用的石英晶体大小为11.0952MHz,但复位键按下后,电容和电阻选用的参数值能够保证给复位端RST提供大于2个机器周期的高电平复位信号[

30、10]。 图7 AT89S51单片机最小系统设计电路 ADC0808是CMOS单片型逐次逼近式A/D转换器,内部结构如图8所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、三态输出锁存器等其它一些电路组成。因此,ADC0808可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。输入输出与TTL兼容。 图8 ADC0808内部结构 由于在Proteus仿真软件中找不到ADC0809芯片,所以在仿真时只能用ADC0808芯片来代替,但其工功能和原理是一样的。ADC0808芯片有28条引脚,采用双列直插

31、式封装,如图9所示。下面说明各引脚功能。 图9 ADC0808芯片 IN0~IN7:8路模拟量输入端。   2-1~2-8:8位数字量输出端。   ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。如表1所示。 ALE:地址锁存允许信号,输入,高电平有效。   START:A/D转换启动信号,输入,高电平有效。   EOC:A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。   OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。  

32、 CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。   REF(+)、REF(-):基准电压。   Vcc:电源,单一+5V。   GND:地。   ADC0808的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。 当检测到酒精气

33、味时,气体传感器的A-B间电阻变小,则ADC0808的模拟输入端IN0的电压变大。采用查询方式对输入模拟信号进行A/D转换,然后将数据通过三位八段数码管显示。 表1 ADC0808通道地址 ADDC ADDB ADDA 选通通道 0 0 0 IN0 0 0 1 IN1 0 1 0 IN2 0 1 1 IN3 1 0 0 IN4 1 0 1 IN5 1

34、 1 0 IN6 1 1 1 IN7 ADC0808芯片内部没有时钟脉冲源,可以用单片机提供的地址锁存控制输入信号ALE经74ls74二分频后,作为 ADC0808的时钟输入。ALE端信号的频率是单片机时钟频率的1/6。单片机的时钟频率是11.0952MHz,则ALE端输出信号的频率为1.8492MHz,再二分频后为0.9246Hz,符合ADC0808对时钟频率的要求。由于ADC0808具有三态输出数据琐存器,其8位数据输出端可以直接与数据总线相连。地址选通端ADDA,ADDB,ADDC分别与单片机地址总线的低三位A0,A1,A2

35、相连,用于选通IN0-IN7中的某一通道。由于ALE和START连在一起,ADC0808在锁存通道地址的同时启动A/D转换。在读取A/D转换结果时,OE产生的正脉冲信号用于打开三态输出锁存器。ADC0808的EOC信号与单片机的P3.4相连,作为A/D转换是否结束的状态信号供单片机查询。 ADC0808与AT89S51单片机的接口电路如图10所示[11]。单片机引脚P3.6与P2.7进过或非门后于模数转换芯片的ALE端和START端子用导线相连接,用于对模数转换芯片写入数据的写信号。单片机的RD端P3.7与P2.7进过或非门后于模数转换芯片的OE端子用导线相连接,作为单片机读取模数转换数据的

36、读信号。单片机引脚P3.3与模数转换芯片的EOC端经过或非门后的输出端用导线相连接,用于单片机对模数转换是否结束的查询,模数转换结束后可以查询到P3.3为高电平,为单片机读取数据作准备。单片机的ALE端口接到D触发器的时钟信号输入端CK,D触发器的反相输出端与触发信号输入端用导线相连,D触发器的清零和复位端为低电平有效,分别接高电平,D触发器的正向输出端与模数转换芯片的CLK端子用导线相连接,为模数转换芯片提供正常的时钟信号。把模数转换芯片的A2﹑A1﹑A0端分别用导线连接到地址锁存器的低三位,用于选择模数转换的通道。模数转换芯片的IN0端子用导线与信号采样部分的负载电阻端相连,作为要模数转换

37、的输入端。单片机引脚P0.0-P0.7连接到模数转换芯片的数据输出端D0﹑D1﹑D2﹑D3﹑D4﹑D5﹑D6﹑D7端,用于读取模数转换后的数据。地址地址锁存芯片74LS373的输入端低三位分别与单片机引脚P0.0-P0.2连接,用于锁存选择模数转换通道的地址。 图10 ADC0809与单片机AT89S51接口电路 2.5 数码管显示电路 数码管是由若干发光二极管组合而成的,有共阴极和共阳极两种结构形。四位共阳数码管就是把所有LED的阳极连接到共同接点com.而每个LED的阴极分别为a﹑b﹑c﹑d﹑e﹑f﹑g及dp(小数点),并通过控制各个LED的亮灭来显示数字,如图11所示。 图

38、11 四位数共阳码管结构图 用单片机驱动数码管有静态显示和动态显示,静态显示就是显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就可以驱动数码管显示数据,直到下一次显示数据需要更新时再传送一次新的数据就可以了。静态显示数据稳定,占用CPU时间少。动态显示需要时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多。这两种显示方式各有利弊;静态显示虽然数据稳定,占用很少的CPU 时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多;动态显示虽然有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。 设计选用一个四位共阳数码管来显示输出的数据,因为电路硬件

39、相对较简单,所以选择静态显示方法。选用1个74ls47驱动数码管发光点亮。电路连接如图14所示。移位寄存器在电路中一是驱动数码管点亮,二是对输入的串行数据并行输出,起到串并转换的作用。移位寄存器74LS164串行数据输入端与前一位的并行输出最高位相连,第一位移位寄存器的数据输入端与单片机的数据输出端P1.7连接。单片机引脚P1.6用于给移位寄存器提供移位的时钟脉冲,该引脚与三个移位寄存器的时钟输入端CLK相连。因为每位数据串行输出先输出的是低位,所以数码管引脚a、b、c、d、e、f、g、dg应顺序与对应位的移位寄存器并行输出端的Q7、Q6、Q5、Q4、Q3、Q2、Q1、Q0连接。 图

40、14 数码管显示电路 2.7 系统整体电路图 信号采样模块电路的输出接到发光二极管显示LM3914的输入端,同时也将采样信号输出端接至A/D转换芯片的输入端,再加上单片机最小系统电路、单片机与模数转换芯片的连接和单片机与数码管显示的连接,即可作出它的整体电路图,如图15所示。 图15 整体电路图 3 软件编程 3.1 开发环境 选用的开发平台为MedWin单片机集成开发环境,只需在PC机上安装MedWin软件,然后在MedWin软件代码编辑器编辑程序代码,经汇编,修改,产生代码,形成输入输出口实验十六进制.HEX文件。 打开Microcontrmller ISP Soft

41、ware,在菜单options选项中选择select device,在弹出的窗口中选择器件AT89S51,并选Byte Mode点击OK。初始化器件后,将经过编译生成的.HEX十六进制文件下载到单片机。 对于8051系列单片机,现有四种语言支持,即汇编、PL/M、C和BASIC。本设计软件编程部分选用汇编语言来写程序代码。 3.2 程序流程 当检测到酒精气味时,气体传感器MQ-3两个电极端A-B间电阻将变小,对应与气体传感器负载电阻的分压将变大。因为ADC0809的模拟输入端IN0与负载电阻的一端用导线连在了一起。所以单片机在启动测试模数转换芯片之前要选择通道0,写入模数转换芯片,并将用

42、作查询的单片机引脚P3.3置位,然后启动对通道IN0端输入的采集电压信号作模数转换,等待转换的结束。利用单片机丰富的I/O口可以采用查询方式来检测模数转换是否结束,当单片机引脚P3.3为1时转换未结束等待,当查询到P3.3为0时表示模数转换已经结束,可以开始读取数据了。单片机通过I/O口与模数转换芯片的数据输出口相连读取转换后的数据。读取后的数据送到数据存储器单元中,经过单片机作相应的处理,即要将该电压值转换为酒精浓度值,然后处理后的数据转换成三位十进制BCD码用数码管显示。程序流程图如图16所示。 单片机选择A/D通道地址 单片机P3.3置位并启动A/D测试 A/D转换结束? P3.

43、3=1? 数码管显示 N Y 单片机初始化 开始 单片机读取数据并作处理 图16 程序流程图 3.3 程序代码编写 系统电源线接通或者系统复位后,程序从主程序入口进入运行。因为在程序中每次对模数转换后读取的数据,需要相应的存储空间,同时对读取的数据作适当处理后也要送到特定的存储空间存储起来,以供后面的数码管显示用。当然,在程序运行的过程当中,还要用到工作寄存器,因为工作寄存器都是临时存储数据,不需要保存作为以后处理要用到的数据,所以工作寄存器的初始化这部分可以省去。于是,对于程序的初始化程序代码可以相应写出[13]。 START:MOV R7,#60H MOV R0

44、20H CLR A LOOP:MOV @R0,A INC R0 DJNZ R7,LOOP 初始化程序从数据存储器地址为20H单元开始,到80H单元全部清零。即每次的初始化将上次存储的数据全部清除,用于存放当前要存储的数据。 对模拟电压信号的数字转换由模数转换芯片ADC0809加单片机AT89S51控制来完成。模拟电压的输入端接在模数转换芯片的IN0通道,再根据单片机与模数转换芯片的连接,单片机在选择读写地址时应该为#7FF8H。因为单片机高8位地址位的P2.7位与单片机的位经或非后与模数转换芯片的START和ALE用导线连接。所以单片机在将地址#7FF8H写入模数转换芯片后,一

45、方面模数转换芯片锁存地址选择线的状态,从而选通相应的模拟通道,同时启动模数转换。模数转换需要一定的时间,这时可以开始对转换是否结束进行不断的查询。ADC0809中模数转换结束输出标志位是EOC,转换结束时为高电平有效。该位通过一个反相器与单片机引脚P3.3相连,因为启动模数转换之前P3.3位被置位,所以当查询到P3.3位为0时即表示模数转换结束。最后将转换后的数据读取到单片机累加器A中。根据这思路可以写出模数转换的子程序代码。 TEST:MOV DPTR,#7FF8H SETB P3.3 MOVX @DPTR,A JB P3.3,$

46、 MOVX A,@DPTR RET 把转换后得到的数字电压值读取到单片机后,因为,实际的电压值范围在0~+5V之间,而ADC0809模数转换芯片对应的是8位精度的处理,即从00000000B到11111111B,所以单片机还要对它作个除#51的处理工作。而在处理过程中对于有些数据的处理,可能要碰到双字节相除的情况。为此,在第一位单字节除#51后,接下来的小数部分位的除#51则要作双字节的除法,这样才能保证使所有位能显示出来。如果所有位都当单字节除法来运算的话,对于有些要作双字节除法的位上的数字则无法显示,而能是显示0。相除后对应的每一位分别送到地址为#

47、7DH,#7EH,#7FH的存储单元保存,以供显示或后续处理用。思路明确后,实际电压值转换部分程序可以写出来。 MOV B,#51 DIV AB MOV 7DH,A MOV A,B MOV B,#10 MUL AB MOV R6,A MOV R7,B ACALL DIV16 MOV 7EH,R6 MOV A,R2 MOV B,#10 MUL AB MOV R6,A MOV R7,B ACALL DIV16 MOV 7FH,R6 经过处理后实际采样到的电压值对应的各个位就分别存储在#7DH,#7EH,#7FH三个存储单元里面了。 模数转换后得到的数字电压量被

48、单片机读取后还要作一定的数据处理,其中包括把电压值转换为与之相对应的酒精浓度值,根据总体设计思路,对电压值都近似作对应区间的线性转换。即首先,单片机要对采集到的数据在哪个区间作个判断跳转,然后再根据该区间的线性关系作转换,得到对应的酒精浓度值。根据酒精浓度与电压的线性映射关系,如表3所示,可以写出该部分的程序代码 MOV B,#100 MVL AB MOV R6,A MOV R7,B MOV R5,#0 MOV R4,#51 ACALL DIV16 MOV 70H,R6 MOV 71H,R7 MOV A,71H JNZ L5 L1:MOV 72H,#75 CLR C

49、 MOV A,70H SUBB A,72H JNC L2 ACALL PP0 AJMP PP L2:MOV 72H,#145 CLR C MOV A,70H SUBB A,72H JNC L3 ACALL PP1 AJMP PP L3:MOV 72H,#173 CLR C MOV A,70H SUBB A,72H JNC L4 ACALL PP2 AJMP PP L4:MOV 72H,#233 CLR C MOV A,70H SUBB A,72H JNC L5 ACALL PP3 AJMP PP L5:MOV 72H,#18 CLR C

50、MOV A,70H SUBB A,72H JNC L6 ACALL PP4 AJMP PP L6:MOV 72H,#64 CLR C MOV A,70H SUBB A,72H JNC L7 ACALL PP5 AJMP PP L7:MOV 72H,#105 CLR C MOV A,70H SUBB A,72H JNC L8 ACALL PP6 AJMP PP L8:ACALL PP7 AJMP PP 从读取到的电压值得到酒精浓度值后,还要把该值转换为3位10进制BCD码,存储到特定的存储单元以供数码管显示数值。数码管显示选用的是静态显示的方法,要在每次

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服