毕业设计(论文)车载酒精测试控制器的设计.doc

上传人:laozhun 文档编号:3985033 上传时间:2023-03-30 格式:DOC 页数:41 大小:2.18MB
返回 下载 相关 举报
毕业设计(论文)车载酒精测试控制器的设计.doc_第1页
第1页 / 共41页
毕业设计(论文)车载酒精测试控制器的设计.doc_第2页
第2页 / 共41页
毕业设计(论文)车载酒精测试控制器的设计.doc_第3页
第3页 / 共41页
毕业设计(论文)车载酒精测试控制器的设计.doc_第4页
第4页 / 共41页
毕业设计(论文)车载酒精测试控制器的设计.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《毕业设计(论文)车载酒精测试控制器的设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)车载酒精测试控制器的设计.doc(41页珍藏版)》请在三一办公上搜索。

1、摘要 近年来,随着我国经济的发展,人民的生活水平提高,越来越多的人有了自己的车,而酒后驾车造成的交通事故也越来越多,国家也出台了一系列的法律法规,试图通过法律的手段遏制这一现象的进一步发展。 介于人们对于醉驾的逐渐重视,酒精测试课题便更加受人关注。酒驾引起的交通事故是由于司机饮酒过量造成酒精麻痹神经,使大脑反应迟钝,肢体不受控制的症状。所以本设计研究的是以气敏传感器和单片机为主,监控空气酒精浓度,并由LCD显示功能的空气酒精浓度测控电路。它可以监控空气中和呼气中酒精浓度值,对超过设定值进行报警,并显示数值,来提示危险。 车载酒精测控电路的设计可以达到以下目的:(1)有利于社会公共交通安全;(2

2、)有效的降低交通事故的发生率;(3)使酒精测控变得更加便捷、安全、准确、高效,便于家庭酒精测控器的普及化。关键词:STG89C52; ADC0804 ; 酒精传感器MQ-3; 继电器Abstract This year, with Chinese economic development, peoples living standards improve, more and more people have their own cars, traffic accidents caused by drunk driving more and more, countries have also i

3、ntroduced a series oflaws and regulations, in an attempt to curb the further development of this phenomenon through legal means. Between the increasing emphasis on drunk driving, alcohol test subject will be more peoples minds. Traffic accidents caused by drunk driving is the driver drinking excessi

4、ve amounts of alcoholic paralysis of nerves, the brain is unresponsive, physically out of control symptoms. Therefore, this research project is a gas sensor and microcontroller-based, monitoring air alcohol concentration, the LCD display the functions of the air alcohol concentration measurement and

5、 control instrument. It monitors the air and breath alcohol concentration exceeds a set value alarm, and displays the value, to prompt dangerous. Car alcohol monitoring and control of the design can achieve the following objectives: (1) in favor of social and public transportation security; (2) effe

6、ctively reduce the incidence of traffic accidents; (3) alcohol monitoring and control has become more convenient, safe, accurate and efficient, to facilitate the popularization of home alcohol monitoring and control.Keyword: Microcontroller; the ADC0804; MQ-3 Alcohol Sensor; relay目录1 绪论1 1.1 设计背景1 1

7、.2 气敏传感器的研究现状2 1.3 设计酒精浓度测试控制电路的意义22 硬件电路设计与实现4 2.1 系统硬件设计原理图分析4 2.2 单片机模块5 2.4 酒精传感器模块9 2.5 液晶显示模块12 2.6 系统功能电路14 2.6.1 最小系统电路14 2.6.2 蜂鸣器报警原理及其电路15 2.6.3 继电器驱动原理17 2.6.4 液晶1602显示原理18 2.6.5 电源电路原理19 2.6.6 ADC0804模数转换电路20 2.7 系统总原理图223 系统软件设计23 3.1 编程语言介绍23 3.1.1 开发环境23 3.2 系统程序设计24 3.2.1 系统程序设计步骤24

8、 3.3 程序源代码264 心得体会275 总结28参考文献29附录30致 谢381 绪论1.1 设计背景我国传感器市场的增长率超过15%,2010年销售额为186亿元人民币,2011年销售额为283亿元人民币,预计2012年为325亿元人民币,2012年为374亿元人民币。我国传感器4大类中,工业和汽车电子产品占市场份额的33.5%。近年来,传感器正处于传统型向新型传感器转型的发展阶段,新型传感器的特点是微型化、数字化、智能化、多功能化、系统化、网络化,它将不仅促进系统产业的改造,而且可导致建立新型工业和军事变革,是21世纪新的经济增长点。因为气体与人类的日常生活密切关系,对气体的检测已经是

9、保护和改善人民居住环境不可或缺的手段,气体传感器在里面发挥了非常重要的作用。气体传感器是把气体中的所含成分检测出来,并转化成电信号的一系列器件,用来对有害气体,易燃易爆气体等进行安全监控,对生活中需要监控的气体进行检测,分析,研究等。近年来,我国气敏传感器产业有了较快的发展,但与国外相比,在技术层面,实际应用等领域均存在着不小的差距。目前,气敏传感器领域还存在一系列问题。一是元件的稳定性不好。由于元件电阻和灵敏度随时间而不断变化,误差大给检测结果的可靠性带来不稳定的因素。二是选择性差。由于在检测气体时,通常在空气中含有其它的干扰气体(如烟酒等),使气敏元件发生交叉响应,造成误差。三是催化剂中毒

10、。掺有催化剂的气敏元件接触某些气体后,活性部分度化,这将改变元件的选择性,降低传感器的敏感度和稳定性。另外催化剂本身还存在着不稳定性因素,灵敏度问题。四是SnO2元件有时由于灵敏度过高而产生误差,但是在检测某些低浓度气体的时侯灵敏度却往往达不到要求。1.2 气敏传感器的研究现状金属氧气敏元件性能与敏感功能材料的选择、结构及其制作工艺有密切的关系。用化敏感材料制作的半导体式气敏元件具有灵敏度高,结构简单,体积小质量轻,坚固耐用等优点而被广泛的应用,目前市场上以SnO2材料为主。SnO2是一种被广泛应用的气敏材料,围绕SnO2为主材料的气敏材料的设备及其气敏元件制备的研究课题也相当广泛。纯SnO2

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

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

13、值,使电压比较器的状态发生变化,输出控制信号经电流放大后,控制继电器或双向晶闸管接通电动机电源使吸排油烟机工作。1.3 设计酒精浓度测试控制电路的意义本设计基于STG89C52单片机设计的车载酒精测试控制电路,用来检测司机的酒精含量,并控制汽车发动的启动。酒后驾车发生事故的概率高达27%。随着摄入酒精量的增加,发生事故的几率也随之增加,当血液中酒精含量由0.5增至1,发生车祸的可能性便增加5倍,如果增至1.5,可能性再增加6倍。汽车司机“酒后驾车” 以及“醉酒驾车”都极易引发交通事故, 严重危害了道路交通安全和人民生命财产安全。人饮酒后, 酒精被消化系统吸收后, 通过血液循环, 大概90%的酒

14、精通过呼吸排除体外, 因此测量车内的酒精含量, 就可判断其醉酒程度。开车司机只要进入车内,仪器就能根据空气中的酒精含量显示出酒精浓度的高低,从而判断该司机是否酒后驾车,然后通过控制发动机的启动来避免事故的发生。这样就可以从根本上解决酒后驾车问题。2 硬件电路设计与实现2.1 系统硬件设计原理图分析 车载酒精测试控制电路主要由部分组成:单片机模块、 模数转换模块、 酒精传感器模块LCD显示模块。系统硬件设计如图所示,工作原理如下,系统由AT89C52控制,模数转换芯片ADC0804将酒精传感器采集到的模拟电压信号转换成8位二进制的数字量输送给单片机控制处理,单片机将得到的8位二进制的数字量转化成

15、为0-255的十进制数,然后通过LCD显示模块可以将值显示出来,单片机根据得到的十进制数值的大小,判断酒精浓度,从而控制继电器得电还是失电,当继电器得电的时候,汽车发动机可以启动。反之,汽车发动机不能启动。系统方框图如图2-1所示: 酒精气敏传感器ADC0804单片机LCD显示器蜂鸣器继电器 图2-1 系统方框图2.2 单片机模块本次设计选用的是STG89C52。单片机STC89C52具有低能耗,高性能等特点,采用CMOS工艺的8位单片机。具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高

16、灵活、有效的解决方案。具有8k字节Flash,512字节RAM,32位I/O口线。STC89C52单片机采用40引脚双排列直插封装方式。引脚排列如图2-2所示,以及40条引脚说明。图2-2 单片机STG89C52引脚图VCC:电源电压GND:地P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。P1口:P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱(吸收或输出电流)4个TTL逻辑门电路。P3口:P3口时一组带有内部上拉电阻的8位双向I/O口

17、。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE :当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。 :程序储存允许()输出是外部程序存储器的读选通信号,当89C5X单片机由外部程序存储器取指令(或数据)时,每个机器周期两次 有效,即输出两个脉冲。在次期间,当访问外部数据存储器,将跳过两次 信号。 /VPP:外部访问允许。欲使CPU仅访问外部程序存

18、储器(地址为0000H-FFFH), 端必须保持低电平(接地)。XTAL1:振荡器反相放大器及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端2.3 模数转换器模块 数模转换电路的功能是把连续变化的模拟量转换为离散的数字量,使模拟系统跟数字系统相互连接转换。对于本系统而言,就是用来快速、精确地对输入的酒精浓度信号进行采样编码,把这些编码转换成单片机能处理的数字量。根据转换器不同的工作原理可以分为直接型A/D转换器和间接型A/D转换器。本次设计采用的是ADC0804模数转换器。ADC0804为一只具有20引脚8位CMOS 连续近似的A/D 转换器, 其规格如下:(1) 高阻抗状态输出

19、(2) 分辨率:8 位(0255)(3) 存取时间:135 ms(4) 转换时间:100 ms(5) 总误差:-1+1LSB(6) 工作温度:ADC0804C为0度70度;ADC0804L为-40 度85 度(7) 模拟输入电压范围:0V5V(8) 参考电压:2.5V(9) 工作电压:5V(10) 输出为三态结构1. 接脚说明见下图2-3:2. PIN1 (CS ):Chip Select,与RD、WR 接脚的输入电压高低一起判断读取或写入与否,当其为低位准(low)时会active。3. PIN2 ( RD ):Read。当CS 、RD 皆为低位准(low) 时,ADC0804 会将转换后的

20、数字讯号经由DB7 DB0 输出至其它处理单元。4. PIN3 (WR ):启动转换的控制讯号。当CS 、WR 皆为低位准(low) 时ADC0804 做清除的动作,系统重置。当WR 由01且CS 0 时,ADC0804会开始转换信号,此时INTR 设定为高位准(high)。5. PIN4、PIN19 (CLK IN、CLKR):频率输入/输出。频率输入可连接处理单元的讯号频率范围为100 kHz 至800 kHz。而频率输出频率最大值无法大于640KHz,一般可选用外部或内部来提供频率。6. PIN5 ( INTR ):中断请求。转换期间为高位准(high),等到转换完毕时INTR 会变为低

21、位准(low)告知其它的处理单元已转换完成,可读取数字数据。7. PIN6、PIN7 (VIN(+)、VIN(-):差动模拟讯号的输入端。输入电压VINVIN(+)VIN(-),通常使用单端输入,而将VIN(-)接地。8. PIN8 (A GND):模拟电压的接地端。9. PIN9 (VREF2)模拟参考电压输入端。VREF 为模拟输入电压VIN 的上限值。若PIN9空接,则VIN 的上限值即为VCC。10. PIN10 (D GND)数字电压的接地端。11. PIN11 PIN18 (DB7 DB0)转换后之数字数据输出端。 12. PIN20 (Vcc)驱动电压输入端。图2-3 ADC08

22、04 模数转换器引脚图2.4 酒精传感器模块本系统选用的是MQ-3酒精传感器, 特点:检测范围为10ppm2000ppm ;灵敏度高,输出信号为伏特级;响应速度快,小于10秒;功耗小于0.75W,尺寸:D17*H10。MQ-3酒精传感器对乙醇蒸气有很高的灵敏度,并且响应和恢复快速。另外,MQ-3酒精传感器简单的驱动回路和可靠的稳定性是相比较于其他型号传感器的优点。MQ-3酒精传感器可用于机动车驾驶人员及其他严禁酒后作业人员的现场检测,也可用于其他场所乙醇蒸气的检测。其外部结构如图2-4所示: 部件材料1气体敏感层二氧化锡2电极金(Au)3测量电极引线铂(Pt)4加热器镍铬合金(Ni-Cr)5陶

23、瓷管 三氧化二铝6防爆网100目双层不锈钢(SUB316)7卡环镀镍铜材(Ni-Cu)8基座胶木9针状管脚镀镍铜材(Ni-Cu) 图2-4 MQ-3外部结构图MQ-3气敏元件的结构和外形如图2-4-1所示(结构 A 或 B), 由微型AL2O3陶瓷管、SnO2 敏感层,测量电极和加热器构成的敏感元件固定在塑料或不锈钢制成的腔体内,加热器为气敏元件提供了必要的工作条件。封装好的气敏元件有6只针状管脚,其中4个用于信号取出,2个用于提供加热电流。整体电路图如下图2-5所示:图2-5 MQ-3整体电路图MQ-3型气敏传感器的敏感部分是由金属氧化物(二氧化锡)的N型半导体微晶烧结层构成。当其表面接触被

24、测气体酒精分子时,表面导电电子比例就会发生变化,从而其表面电阻会随着被测气体浓度的变化而变化。由于这种变化是可逆的,所以能重复使用。MQ-3的灵敏度特性曲线如图2-6 所示。图2-6 MQ-3灵敏度曲线图其中:温度:20、相对湿度:65%、氧气浓度:21% RL=200k Rs:元件在不同气体,不同浓度下的电阻值。R0:元件在洁净空气中的电阻值。MQ-3型气敏元件的温湿度特性曲线如图2-7: 图2-7 MQ-3温湿度特性曲线图其中:Ro: 20,33%RH条件下,200ppm的乙醇蒸汽中元件电阻。Rs: 不同温度,湿度下,200ppm的乙醇蒸汽中元件电阻。2.5 液晶显示模块液晶屏1602是一

25、种专门用来显示数字,符号,字母等的点阵型液晶模块,液晶屏1602是由多个5X7或5X11等点阵字符组成,在液晶屏1602中每一个单独的点阵字符位都可以显示一个字符;位与位之间有一个点距的间隔行与行之间也是一样也有间隔,就是这些间隔让液晶屏在显示的时候呈现出字符间的间隔和行距之间间隔,使我们观看的时候更直观,清晰。但是就是这种因素的存在,所以它是不能显示出图形的。1602LCD是指在显示屏上我们可以看到16X2,也就是说可以显示两行,每行16个字符液晶模块。液晶屏1602管脚的一些功能:1602液晶显示屏采用标准的16脚借口,下面一一介绍每个管脚的功能。第一脚:VSS是接电源地。第二脚:VDD接

26、5V电源正极。第三脚:V0为液晶显示器对比度调整端口,当V0接至电源正极时,对比度最弱;相反当V0接地时,对比度却是最高(对比度过高时会 产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。 第四脚:RS是寄存器选择,当是高电平1时选择的是数据寄存器,低电平0时选择的是指令寄存器。第五脚:RW是读写信号线,执行读操作的指令是高电平1时,执行低电平的操作指令是低电平0。第六脚:EN端是使能端。第七十四脚:D0D7是8位双向数据端。第十五十六脚:空脚或背灯电源,15脚是背光正极,16脚背光负极。1602液晶显示屏的特性:n+5V电压,对比度可调。 n内含复位电路。 n提供各种控制命令,如:

27、清屏、字符闪烁、光标闪烁、显示移位等多种功能。 n有80字节显示数据存储器DDRAM。 n内建有192个5X7点阵的字型的字符发生器CGROM 。n8个可由用户自定义的5X7的字符发生器CGRAM。1602LCD液晶显示屏的特征:微功耗,体积较小,内容显示比较丰富,超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。液晶1602有三条控制线,RS/数据命令端,RW/读写选择端、EN/使能端,一个8位的数据端口。常用指令说明如表2-1:表2-1常用指令说明指令名称控制信号控制代码D/I R/WD7 D6 D5 D4 D3 D2 D1 D0清屏0 00 0 0 0 0 0 0 1归home位0 00 0

28、 0 0 0 0 1 *输入方式设置0 00 0 0 0 0 1 I/D S显示状态设置0 00 0 0 0 1 D C B光标画面滚动0 00 0 0 1 S/C R/L * *工作方式设置0 00 0 1 DL N F * *CGRAM地址设置0 00 1 A5 A4 A3 A2 A1 A0DDRAM地址设置0 01 A6 A5 A4 A3 A2 A1 A0读BF和AC0 1BF AC6 AC5 AC4 AC3 AC2 AC1 AC0写数据1 0数 据读数据1 1数 据2.6 系统功能电路2.6.1 最小系统电路 图2-8 最小系统电路图 图2-9 晶振电路晶振电路是单片机的动力来源,单片

29、机的XATL1和XATL2 11.0592M的晶振。图2-10 复位电路上图为复位电路,复位电路分为手动按键复位和上电复位。上电复位是指当系统刚上电时电容两端电压不会改变,相当于是短路,因此RSET上的电平为高电平,这个过程时间比较短,但还是能够让单片机复位。手动按键复位的原理是在系统工作时可以通过手动按键来使单片机复位。2.6.2 蜂鸣器报警原理及其电路图2-11 蜂鸣器报警电路这次设计,我采用的是有源蜂鸣器,蜂鸣器的报警状态由继电器控制。当车内酒精浓度超出系统预置值时,继电器得电,蜂鸣器随之得电,从而发出警报声音,以提示车内酒精浓度超标。当车内酒精浓度没有超过标准是,继电器失电,蜂鸣器也随

30、之失电,不工作。系统可以通过蜂鸣器的报警状态来判断车内酒精是否超标,那控制它的继电器模块是怎样工作的呢,下面我将给大家带来继电器模块。2.6.3 继电器驱动原理 图2-12 继电器驱动电路本系统采用的是电磁式继电器,这个继电器由控制线圈、铁芯、衔铁、触点簧片等组成,控制线圈和接点组之间是相互绝缘的,因此,可以为控制电路起到良好的电气隔离作用。当我们再继电器的线圈两头加上线圈的额定电压的时候,线圈中有电流流过,产生电磁效应,衔铁将在电磁力的作用下向铁芯靠拢,从而使衔铁的动触点和静触点吸合。当线圈断电后,电磁效应消失,衔铁返回原来的位置。这样就能达到电路接通与切断的开关目的。三极管Q1的基极B接到

31、单片机的P3.7,三极管的发射极E接到继电器线圈的一端,线圈的另一端接到+5V电源VCC上;继电器线圈两端并接一个二极管,用来吸收释放继电器线圈断电时产生的反向电动势,从而达到保护三极管T5及保证其他电路不受干扰的作用。2.6.4 液晶1602显示原理图2-13 1602LCD电路液晶1602显示器共有16个引脚,其中每个引脚的功能意义都不相同。其中4号5号6号是控制引线7号到14号引脚是信号线。还有就是3号引脚是背光电源指示端,它这个所接的电阻阻值不一样,背光就会有不一样的结果,在此次我选用的背光电阻是10k的电阻2.6.5 电源电路原理图2-14 电源电路图电源电路是由变压器,单相桥式整流

32、电路,三端稳压器7805,滤波电路组成。此次的设计需要的是一个5V的直流电源,但一般正常的日常电压是220V,不能直接接在电路上,所以在这里我们就需要一个变压器把电压降下来。日常220V电压是交流电压,但我的设计需要的是直流,所以在此加上一个单相桥式整流电路,将交流电压转换成设计所需的直流电压,它是由四个二极管组成,桥式整流电路是利用二极管的单向导电性,利用四个二极管,使他们交替的导通,在负载上得到的始终是一个单向的脉动电压。电解电容单位体积电容比较大,能比其他的大到几百倍,价格也比较合理,而且电解电容是有极性的,能够防止电压反相,电容的充放电也起到了滤波的作用,最后引出两个接口作为电源的正极

33、和负极。2.6.6 ADC0804模数转换电路图2-15 ADC0804电路ADC0804是逐次比较性的模数转换芯片,它的一些主要特性如下:1. 工作电压:Vcc =+5V。2. 分辨率:8位。3. 转换时间:100us。4. 模拟输入电压范围:0 到 +5v。5. 参考电压:2.5V。6. 转换误差:+ -11SB。引脚功能说明:6号脚Vin(+)和7号脚Vin(-)是ADC0804模数转换器的两模拟信号输入端。DB0DB7是模数转换器的数据输出端,具有三态特性。AGND:模拟信号地。10号脚:数字信号地。CLKIN:外电路提供时钟脉冲输入端。19号脚CLKR:内部时钟发生器外接电阻端口。1

34、号脚CS:片选信号输入端,是低电平有效,只有在低电平的时候,才能选中该芯片,然后工作。2号脚RD:读信号端,低电平有效,该引脚要正常工作不仅要次引脚是低电平而且前提要CS为低电平。3号脚WR:写信号端,低电平有效,与读信号端一样,要前提选中该芯片即CS为0,才能启动转换。INTR:转换结束输出信号,低电平有效。当它输出低电平时,就代表转换已经完成。2.7 系统总原理图及实物图系统的总原理图包括以上所有电路,有单片机最小系统,蜂鸣器报警电路,继电器电路,1602液晶显示电路,MQ-3传感器电路,电源电路。详情见附录一。3 系统软件设计3.1 编程语言介绍3.1.1 开发环境本系统选用的编程语言是

35、C语言。相比于汇编语言,虽然汇编语言的可控性较好,机器代码生成效率也高,控制性好,但是移植性不高。C语言编写的程序比汇编编写的程序更符合人们的习惯,并且很多处理器都支持C编译器,也就是说处理器也能很快适应。并且具有良好的模块化,易移植等特点。所以本系统采用了C语言编写程序。C语言的主要特点共有8点,具体如下(1) 语言简洁,紧凑,使用方便,灵活。(2) 运算符丰富。C语言的运算符包含的范围很广泛,共有34种运算符(3) 数据类型丰富,具有现代语言的各种数据结构。C语言提供的数据类型有:整型,浮点型,字符型,数组型,指针类型,结构体类型,共用体类型等,能用来实现各种复杂的数据结构的运算。尤其是指

36、针类型数据,使用十分灵活和多样化。(4) 具有结构化的控制语句(像if.else语句,while语句,for语句等)。用函数作为程序的模块单位,便于实现程序的模块化。(5) 语法限制不太严格,程序设计自由度大。(6) C语言允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。(7) 生成目标代码质量高,程序执行效率高。C语言一般只比汇编程序生成的目标代码效率低百分之十到百分之二十。(8) 用C语言编写的程序可移植性好。基本上不做修改就能用于各种型号的计算机和各种系统操作。3.2 系统程序设计3.2.1 系统程序设计步骤C语言程序设计一般包括三个基本步骤:(1

37、)分析问题:这一步必须做到:a. 作为解决问题的一种方法, 确定要产生的数据(输出)。 作为这一子步的一部分, 你应定义表示输出的变量。b.确定需产生输出的数据(称为输入), 作为这一子步的一部分, 你应定义表示输入的变量。c.研制一种算法, 从有限步的输入中获取输出。 这种算法定义为结构化的顺序操作, 以便在有限步内解决问题。就数字问题而言, 这种算法包括获取输出的计算, 但对非数字问题来说, 这种算法包括许多文本和图象处理操作。(2) 画出程序的基本轮廓:b. 这一步需要一些句子来画出程序的基本轮廓。每个句子对应一个简单的程序操作。若是个简单的程序,列出程序顺序执行的动作就可以直接生成伪代

38、码;然而复杂点的则需要将整个过程进行有条理的组织。(3) 实现程序:1. 编写程序 2.测试和调试程序 3.提供数据打印结果对于源程序应该包含文字注释的文件编制,以说明程序各个部分实现何种工作。另外还应该包含调试程序段,来测试程序的运行情况,并允许查找编程错误。若程序运行正常,可以删去调试程序段,但文件编制却要保留,便于维护和修改。流程图如图3-1所示:单片机选择A/D通道地址单片机初始化单片机读取数据并作处理LCD显示数据当前值 预置值?继电器得电继电器失电重装定时初值中断返回开始NY定时启动A/D,并转换图3-1 程序流程图3.3 程序源代码详情请见附录二。4 心得体会通过这次的毕业设计,

39、让我再一次的学习了大学四年以来所学到的相关知识。首先,对于以前学习过的有关单片机方面的知识,在设计电路过程中又有了新的认识,对于各种概念的理解也有了提高。其次是在做电路板焊接的过程中,由于以前接触的比较少,所以电路板做的不是非常的精致,也让我体会到了要做好一件事儿,一定要打好基本功,然后踏踏实实做好每一个步骤。电路的检测是很重要的一部分,在上电后,若是不能正常工作按原理图分模块进行电路检测,是否有虚焊或漏焊现象;如焊接正常,在按信号传递的方向逐级检测,找出出问题的一级,并向该级的上级进行检测,直到将故障排除。硬件调试是一个相对比较繁琐的过程,要特别注意以下几点。其一,通电之后看STG89C52

40、晶振是否起振,晶振起振后是标准的正弦波,示波器测得其频率为11.0592MHz;其二,硬件电路的设计既要追求实际功能的实现,也要考虑元器件的购买方便。其次就是软件的调试。在软件编程过程中,我首先列出了程序的方框图,然后写出每个单元模块的程序,在单元模块上进行测试,这样做让我在编写程序的时候思路更清晰不会混乱。软件的调试过程中,联机调试非常重要,在硬件电路都正常的情况下,联机调试就成了设计能否成功的关键。5 总结这次的设计是对大学四年所学的一个很好的应用和总结,其中涉及到许多方面的专业知识。首先根据设计的要求我选定了STC89C52单片机来作为此次设计的主体,而后在通过对总体的构思,添加了LCD

41、1602液晶显示模块,ADC0804模数转换模块,蜂鸣器报警电路,继电器电路来实现基于单片机的车载酒测试控制的设计。也是经过这次的设计,让我学到很多新的知识,比如对LCD1602液晶显示的引脚功能和市场情况都有一定的了解,掌握了A/D转换的原理,继电器的工作的原理等等。最后大概重述下我的设计内容,基于单片机的车载酒精测试控制仪的设计,要求是当汽车驾驶员饮酒后,血液中酒精含量超过20%以上,汽车将报警,并且汽车发动机将无法启动。我的构思是通过酒精传感器根据对车内酒精浓度的测试得到的电压信号,然后再通过ADC0804模数转化器把模拟信号电压转换成单片机可读的数字信号,最后在根据判断是否超过设定值,

42、蜂鸣器报警并让继电器得电,从而使汽车发动机无法启动。程序上对应着电路模块功能相应编程,最后完成了我的毕业设计,设计中我也了解到基于单片机的酒精测试控制仪的应用,它能从根本上解决因为酒驾引发的交通事故问题。参考文献1 张毅刚,彭喜元,彭宇.单片机原理及应用M.北京:高等教育出版社,20102 薛弘晔,刘原,马永.计算机控制技术M.西安:电子科技大学出版社,20083 华成英,童诗白.模拟电子技术基础 M.北京:高等教育出版社,20064 史久贵.基于Altium Designer的原理图与PCB设计M.北京:机械工业出版社5 谭浩强.C程序设计M.北京:清华大学出版社6 先锋工作室编著.单片机程

43、序设计实例M.北京:清华大学出版社,20037 张毅刚等编著.新编MCS-51单片机应用设计M. 哈尔滨:哈尔滨工业大学出版社,20048 李维提,郭强液晶显示应用技术M.北京:电子工业出版社,20009 彭军传感器与检测技术M西安电子科技大学出版社,200310 楼然苗,李光飞51系列单片机设计实例M北京航空航天大学出版社,200311 胡乾斌,李光斌,李玲单片微型计算机原理与应用M华中科技大学出版社,200212 郁有文传感器原理及工程应用M西安:西安电子科技大学出版社,200313 张培仁基于汇编语言编程MCS-51单片机原理与应用M北京:清华大学出版社,200314 TSomeya,J

44、Small,P Kim,CNuckolls,JTYardleyAlcohol vapor sensorsbased on single-walled carbon nanotube field effect transistorsMNano Letters,2003 附录附录一 附录二 #include #include #define uint unsigned int#define uchar unsigned char#define LCD_data P0 /数据口#define delayNOP(); _nop_();_nop_();_nop_();_nop_();sbit lcdrs=P27;sbit lcdrw=P26;sbit lcden=P25;sbit rd=P31;sbit wr=P30;bit flag;sbit relay=P37;uchar code str1 = Alcohol density;uchar code str2 = 00.0 %;double vol,rs,cp;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号