版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、知识运用#课程设计报告课程设计报告设计题目设计题目:酒精溶度测试仪酒精溶度测试仪智能酒精浓度检测仪的设计智能酒精浓度检测仪的设计摘要:随着科技的进步,智能产品在社会生产和人们生活等方面扮演着越来越重要的角色。本文介绍的是一款智能酒精浓度检测仪的设计方案,以STC89C52单片机和酒精传感器为核心,具有声光报警和LCD显示功能。为了满足不同环境下的监测,可根据不同的环境设置不同的阀值,超过阀值即进行声光报警,提示危害。该设计方案的优点是硬件电路设计简单,软件功能采用C语言进行调试,方便灵活。而该仪器具有灵敏度高、工作性能好、低功耗、低成本,较高的性价比等优点。可用于交通检测、酒厂和食品工厂发酵监
2、控等场所。关键词:智能;酒精浓度;检测仪;智能;酒精浓度;检测仪;STC89C52单片机;阀值;单片机;阀值;C语言;语言;交通检测交通检测知识运用#DesignforIntelligentAlcoholConcentrationDetectorAbstract:Withtheprogressofscience,intelligentproductsgraduallyplayanimportantroleinmanyaspects,suchassocialproduce,peoplesdailylife.Thispaperintroducesanintelligentalcoholconcen
3、trationdetector,whichisbasedonSTC89C52single-chipmicrocomputerandalcoholsensor(transducer).Ithasseveralfunctions,includingdetectingalcoholconcentrationindifferentenvironment,givinganalarmwithvoiceandglowing,andLCDdisplay,exceptforthis,wecanalsosetthevalvenumberofalcoholconcentrationtomeetdifferenten
4、vironmentsdetecting,namely,whenthedetectingnumoverthevalue,thedetectorcansuggestdanger.Theexcellencesofthisdesignprecept:easyhardwarecircuit,softwarefunctionadopttoClanguagetotest,whichisconvenientandflexible.whatsmore,thedetectorwithhighdelicacy,lowenergyconsumptionandspending.Itcanbeusedintrafficd
5、etect,winefactory,foodfactoryandsoon.Keywords:intelligent;alcoholconcentration;detector;STC89C52single-chipmicrocomputer;value;Clanguage;trafficdetect知识运用#目目录录第1章绪论.11.1选题的依据和课题的意义.11.2国内外研究概况.11.3课题研究方法.21.4设计构成及研究内容.2第2章系统的工作原理与结构.32.1工作原理.32.2结构框图.42.3智能酒精浓度检测仪的整体结构特点.4第3章检测仪的硬件设计.43.1单片机的选择.43.2
6、酒精浓度检测的设计.63.2.1MQ-3气敏传感器的结构和外形.73.2.2MQ-3灵敏度特性曲线.8知识运用#3.2.3MQ-3的标准工作条件和环境条件.83.2.4酒精浓度信号的采集.93.3模数转换电路的设计.103.3.1ADC0809的特点.103.3.2模数转换电路.103.4按键设定阈值及阈值存储电路的设计.113.5液晶接口电路的设计.113.6声光报警电路的设计.123.7单片机与PC机串口通讯.133.8晶振电路的设计.133.9复位电路的设计.143.10附加功能电路的设计.14第4章检测仪的整体原理图和实物图.15第5章检测仪的软件实现.165.1A/D转换的软件实现.
7、165.2阈值设定及显示的软件控制.175.3整体软件控制流程.18第6章检测仪的软件功能调试.206.1按键修改酒精阈值程序.206.2模数转换测试.206.3液晶显示程序设计.216.4声光报警测试.246.5整体功能调试程序.24第7章结论.25参考文献.26致谢.27附录.28知识运用#附录A:全局变量头文件和延时模块.28附录B:AD转化模块.30附录C:24c08存储模块.31附录D:LCD显示模块.35附录E:主函数.41知识运用#第1章绪论1.1选题的依据和课题的意义根据WTO数据,全球2003年得人均纯酒精消费量为6.2L,其中欧洲地区人均达11.9L,美洲地区人均为8.7L
8、。俄罗斯及其周边的东欧国家酒精消费量最高,其次为欧洲其他国家。在人均国民生产总值(GDP)低于7000美元的低收入国家,酒精消费量与人均GDP有关,GDP越高这个国家或者地区的酒精消费量也就越高。而随着我国近年来高速发展的经济水平和居民生活水平,私家车的占有率直线上升,各式各样的汽车已经成为人们的代步工具。同时伴随而来的是频频发生的交通事故,尤其是因为酒后驾车所引发的交通事故,给自己和人们的生命财产安全带来威胁,同时也给国家和社会带来了严重的经济损失。因此,对于每个驾驶人来说拥有一个酒精浓度检测仪,在每次驾驶之前自行检测酒精浓度再决定是否安全驾驶,这是对自己、对家庭、对社会有责任感的体现。此外
9、,从工厂企业到居民家庭,酒精泄露的检测、监控对居民的人身和财产安全都是十分重要和必不可少的。因此,酒精浓度检测仪具有十分广阔的实际应用价值和潜在的市场要求。1.2国内外研究概况受20世纪信息技术快速发展的影响,传感技术逐渐走向成熟,在生活生产中得到了广泛的应用。由于传感器在各个领域都有着举足轻重的作用,因此,高精度、高可靠性、微型化、低功耗和智能数字化成了其发展方向。为了检查酒驾,警察常常使用一种便携式的酒精呼吸检测仪。通过检测驾驶员呼出的气体判断驾驶者是否饮酒,而目前使用的酒精呼吸检测仪只能初步显示驾驶员是否饮酒,具体酒精浓度含量还得通过血检才能测得。为了简化其流程,英国内部已推出一种超级酒
10、精呼吸检测仪,能够根据体温、呼吸频率等情况,当场判知识运用#断出驾驶员体内的酒精含量。由此可见,高精度、高可靠性、微型化以及低功耗是酒精浓度检测仪今后发展的主流方向。迄今为止,对气体中酒精含量进行检测的设备有燃料电池型、半导体型、红外线型、气体色谱分析型和比色型五种类型,但由于使用方便的原因,目前常用的有燃料电池型和半导体型两种。燃料电池是当前世界都在广泛研究的环保型能源,它可以直接把可燃气体转变成电能,而不产生污染。酒精传感器只是燃料电池的一个分支。燃料电池酒精传感器采用贵金属白金作为电极,在燃烧室内充满特种催化剂,是进入燃烧室内的酒精充分燃烧转变为电能,也就是在两个电极上产生电压,电能消耗
11、在外接负载上,此电压与进入燃烧室内气体的酒精浓度成正比。与半导体型相比,燃料电池型呼气酒精测试仪具有稳定性好,精度高,抗干扰性好的优点,但是由于燃料电池酒精传感器的结构要求非常精密,制造难度相当大,目前仅有美国、英国、德国等少数几个国家能够生产,加上材料成本高,因此价格相当昂贵,通常是半导体传感器的几十倍。1.3课题研究方法(1)文献索引法:利用学校图书馆资料和文献及通过网络查询相关资料对本课题有足够深的了解,为本设计的具体模块电路做好理论准备。(2)调查法:与身边的同学和朋友进行交流,充分考虑本设计实现的功能,尽可能完善该设计的功能。(3)对比分析法:与目前市场上相关产品进行比较,发现该酒精
12、检测仪存在的不足以及可以优化的部分,加以改进。1.4设计构成及研究内容本文设计的智能酒精浓度检测仪采用的是气敏传感器,属于半导体型,该传感器实质是个可变电阻,在它两端加以固定的电压,随着所处环境酒精浓度的升高阻值将进行线性变化,从而将酒精浓度的含量转变为电压的变化。该酒精检测仪以C51单片机和气敏酒精传感器为核心,具有声光报警和LCD显示功知识运用#能。为了满足不同环境下的监测,可根据不同的环境设置不同的阈值,超过阈值即进行声光报警,提示危害。采用C语言来实现其软件功能。本设计只要包括以下内容:(1)主控芯片的选择;在此设计中选择了C51系列单片机,熟悉C51系列芯片怎样控制外围硬件电路。(2
13、)酒精浓度检测模块的设计;酒精浓度常用酒精传感器来检测,了解该传感器的工作原理,制作数据采集模块完成数据的采集。(3)A/D转换模块的设计;A/D转换器的选择,将采集的酒精浓度模拟信号进行转换后送至单片机存储、处理。(4)键盘模块的设计;要通过键盘完成设定不同环境中酒精浓度的阈值。(5)声光报警模块的设计;超过设定的阈值直观地给予警示。(6)液晶显示模块的设计;准确显示出检测到的数据。(7)各个硬件模块电路衔接。(8)PCB的布板、元件焊接及功能调试。第2章系统的工作原理与结构2.1工作原理酒精浓度检测仪是用来检测所处环境中的酒精浓度的,并显示出检测的结果数值。而本设计所做的智能酒精浓度酒精检
14、测仪除具有这个基本功能外,还可通过手动随意设置酒精浓度的阀值,以划定不同环境条件下酒精的安全界限,同时具有声光报警功能。它主要由酒精传感器、模数转换器、单片机、LCD显示、键盘模块以及声光报警部分组成。数据的采集由酒精传感器完成,酒精传感器将检测的酒精浓度转换为电信号,然后将电信号传递给模数转换器,经过模数转换器转换后,把转换后得到的数字信号传给单片机,单片机对所输入的数字信号进行分析处理,最后将分析处理的结果通过显示器显示出来。同时与根据键盘设定的酒精浓度阀值进行知识运用#比对,如果检测到所处环境中的酒精浓度超过设定的界线,那么单片机将会控制蜂鸣器发出声音报警和发光LED不断闪烁,以提示危害
15、。2.2结构框图硬件系统结构框图如下图2-1所示单片机LCD显示酒精传感器模数转换器键盘声光报警图2-1系统结构框图2.3智能酒精浓度检测仪的整体结构特点本文设计的智能酒精浓度检测仪具有如下特点:(1)数据采集系统以单片机为控制核心,外围电路带有LCD显示和键盘响应电路,无需其他计算机,用户就可与之进行交互工作,完成数据的采集、存储、计算、分析等过程。(2)系统具有低功耗、小型化、高性价比、灵敏度高等特点。(3)从便携式的角度出发,系统通过键盘设置酒精浓度的阀值,结合单片机的控制,实现了人机交互操作、界面友好。(4)软件系统采用C语言进行编写,在兼顾实时性处理的同时,也方便了对数据的处理。知识
16、运用#第3章检测仪的硬件设计3.1单片机的选择MCS-51单片机是美国Intel公司于1980年推出的一款相当成功的产品,该系列或其兼容的单片机仍是应用的主流产品之一,该系列单片机主要包括8031,8051,8751和89C51等通用产品。本次设计选用的是STC89C52单片机,STC89C52是低功耗、高性能的CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用宏晶高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统上可编程,亦适于常规编器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入
17、式控制应用系统提供高灵活、超有效的解决方案。STC89C52具有以下标准功能:8字节的Flash,256字节的RAM,32位的I/O口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,1个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。除此,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,内容被保存,振荡器被冻结。STC89C52单片机作为控制核心,为了提高IO口的利用率,通过扩展一片8255芯片来实现液晶显示的功能。单片机的IO口控制图如下图3-1-1所示知识运用#
18、图3-1-1STC89C52的接口控制图P0口用于接收模数转换的输出,P2.0用于模数转换的时钟控制,8255的扩展通过P2.1,P2.2,P2.5口来控制,P2.3用于作为模数转换的使能控制,P2.6,P2.7口用于模拟I2C连接外部存储芯片AT24C08,P3.3口为外部中断控制口,由它来控制酒精阈值的设定,液晶显示模块通过单片机控制8255来实现相应的功能.8255芯片的引脚控制图如图3-1-2所示:图3-1-28255的引脚控制图知识运用#8255芯片是一种典型的可编程通用并行接口芯片,用来扩展单片机的端口,它具有3个8位的并行口,有三位工作方式,可作为单片与各种外部设备连接的接口电路
19、。CS:片选信号线,当该引脚为低电平时,8255被选中,允许8255与CPU通讯。RESET:复位输入线,当该引脚为高电平时,内部寄存器被清除,所有I/O口均被置成输入方式。A0、A1:地址输入线。当A0A1=00时,PA口被选中;当A0A1=01时,PB口被选中;当A0A1=10时,PC口被选中;当A0A1=11时,控制寄存器被选中。3.2酒精浓度检测的设计酒精浓度的准确检测是决定该设计成功与否的关键因素,而酒精的检测依靠酒精传感器来实现信号的采集。在本设计中选用灵敏度高、稳定性好的MQ-3气敏传感器,该传感器对乙醇蒸汽有很高的灵敏度和良好的选择性,快速的响应和恢复特性,长期的寿命和可靠的稳
20、定性,以及简单的驱动电路。它的工作原理是在确定的环境条件下,环境中的酒精浓度变化将会引起电阻值的变化,且这两种变化存在着线性关系。3.2.1MQ-3气敏传感器的结构和外形MQ-3气敏元件的结构和外形如图3-2-1所示知识运用#图3-2-1MQ3气敏元件结构外形图在上图中,由微型AL2O3陶瓷管、SnO2敏感层,测量电极和加热器构成的敏感元件固定在塑料或不锈钢制成的腔管内,加热器为敏感元件提供必要的工作条件。封装好的气敏元件有6只针状管脚,其中4只用于信号提取,2只用于提供加热电流。3.2.2MQ-3灵敏度特性曲线图3-2-2MQ-3气敏元件的灵敏度特性曲线知识运用#在图3-2-2中给出了MQ-
21、3气敏元件的灵敏度曲线,其中:温度20;相对湿度:65%;氧气浓度:21%;RL:200k.Rs:气敏元件在不同气体、不同浓度时的电阻值。R0:气敏元件在洁净空气中的电阻值。3.2.3MQ-3的标准工作条件和环境条件图3-2-3MQ-3气敏传感器阻值变化率与酒精浓度、外界温度的关系为了更好地使用酒精传感器MQ-3,现将MQ-3的标准工作条件和环境条件进行介绍,分别如表3-2-1和表3-2-2所示:表表3-2-1工作条件工作条件符号参数名称技术条件备注VC回路电压15VACorDCVH加热电压5.0V0.2VACorDCRL负载电阻可调RH加热电阻313室温PH加热功耗900mW表表3-2-2环
22、境条件环境条件符号参数名称技术条件备注Tao使用温度-1050Tas储存温度-2070RH相对湿度95%RH知识运用#O2氧气浓度21%(标准条件)氧气浓度会影响灵敏度特性最小值大于2%3.2.4酒精浓度信号的采集详细的酒精浓度采集电路见下图3-2-4所示:图3-2-4酒精浓度采集电路在上图中传感器将环境中的酒精浓度转化电压信号,在第4引脚直接输出电压信号模拟量,该模拟量将送到模数转换,通过单片机控制最终得出环境中酒精的含量,同时可以通过对电位器WR1的调节来改变输出的灵敏度。3.3模数转换电路的设计由于本设计中所用的是单一电源+5V,故由酒精浓度转化的电压信号也将在05V范围,并且考虑到转换
23、的速度应该要快,在此我们选用典型的8位逐次逼近型A/D转换器ADC080ADC0809的特点该转换器具有如下特点:(1)分辨率为8位;(2)转换时间为100us;(3)很容易与微处理器连接;知识运用#(4)无须零位或者满量程调整;(5)带有锁存控制逻辑的8通道多路转换开关,便于选择8路中的任一路进行转换;(6)带锁存器的三态数据输出。3.3.2模数转换电路具体模数转换电路见图3-2-1所示图3-2-1模数转换在该检测仪的设计中只用到两路通道,即通道IN0和IN1.分别为酒精浓度的电压模拟信号和电压比较器LM393的基准电压信号,D0D7为由酒精浓度引起而产生的电压数字量输出,结果
24、将送至单片机进行分析和处理。3.4按键设定阈值及阈值存储电路的设计为了适应对不同环境中酒精浓度的检测和监控,必须调整该仪器的酒精浓度阀值以符合既定的工作要求。同时为了节省硬件资源的消耗,于是在此通过外部中断的按键操作来改变酒精浓度的不同阀值,外部中断电路见下图3-4-1所示知识运用#图3-4-1外部中断按键电路阈值存储电路的添加,既可以明确地看出具体设定的酒精浓度值,又能以备调出来与检出的酒精浓度作比较,增强了直观性。于此选用了AT24C08作为存储器件,用单片机的P2.6,P2.7口模拟I2C与之通信,从而完成数据的读写操作。相应的电路如图3-4-2所示图3-4-2AT24C08存储电路3.
25、5液晶接口电路的设计酒精浓度的显示采用1602液晶,LCD1602可显示两行英文字符,且内带ASCII字符库。LCD1602模块内部可完成显示扫描,单片机只要向LCD1602发送命令和显示内容的ASCII码。具体的接口电路见图3-5所示知识运用#图3-5液晶接口电路图控制信号RS、R/W和E分别由单片机控制8255的PA4,PA5,PA6口实现,要显示的信息通过调用数据处理程序传到8255的PB口。3.6声光报警电路的设计当酒精浓度超过所设定标准时,通过控制单片机的P3.3口的电平来实现警报功能。其电路见图3-6所示图3-6声光报警电路如上图所示,酒精浓度超过设定的阀值时,给单片机的P3.3口
26、低电平,则三极管导通,同时蜂鸣器工作,发光二极管也亮。否则,单片机的P3.3口维持在高电平,三极管截止,蜂鸣器不工作,二极管也不发光。知识运用#3.7单片机与PC机串口通讯“串行通信”是系统之间用一根数据信号线,数据在这根数据线上一位一位地进行传输,每一位数据都占据一个固定的时间长度。目前个人的PC机上都有这种接口(COM1,COM2),即RS-232口。电脑的RS-232口共9根线,在简单的应用中,需要三根线即可完成通信,分别是第2脚RXD,第3脚TXD,第5脚GND.串行通信与单片机之间的接口:由于串行通信的电平逻辑定义是+15V(高电平1),-15V(低电平0),而单片机中分别用5V,0
27、V来表示高电平1,低电平0.它们之间必须通过电平转换才能完成通信。最常用的是MAX32电路,该连接图见图3-7所示图3-7串口通信电路单片机串口通信原理:51系列单片机内部集成了两个同名不同地址的串口缓冲区SBUF,一个是发送缓冲区,一个是接收缓冲区。发送数据时MCU将数据写到发送SBUF,接收到的数据自动放到接收SBUF,无需程序指定。串口发送和接收事件发生时,由硬件标志来通知处理器,RI为接收事件发生标志,TI为发送完成标志,“1”为事件发生。在串口中断打开的条件下,两者任意一种情况发生都会引起中断,单片机程序可以根据RI=1和TI=1进行相应的处理。本检测仪需要用串口线将程序下载到单片机
28、中,以对之进行初始化过程。3.8晶振电路的设计本系统采用的是12MHZ的晶振,其电路图如图3-8所示:知识运用#图3-8晶振电路图XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。3.9复位电路的设计单片机的复位电路如图3-9示:图3-9复位电路图RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR上的DISRT0位可以使此功能无效。DISRT0默认状态下,复位高电平有效。3.10附加功能电路的设计由于酒精浓度的检测在很大程度上受到温度的影响,为了更直观地
29、测出不同环境中酒精的含量,这里增加一个温度传感器,以对应不同温度下酒精传感器所对应的线性关系。DS18B02数字温度计DALLAS公司生产的单总线器件,具有线路简单、体积小的特点。实际应用中不需要外部任何器件即可实现测温,测量温度范围在-5+125。C之间,数字温度计的分辨率可以从9位到12位选择,且内部有上、下限告警设置,使用非常方便。数字温度计接口的电路图如3-10所示知识运用#图3-10DS18B02电路P17为数字信号输入/输出端,将程序下载至单片机,开机运行,用手触摸DS18B02温度传感器,液晶上将会显示当时所处环境的温度值。第4章检测仪的整体原理图和实物图智能酒精检测仪的整体原理
30、图见4-1所示图4-1整体原理图知识运用#酒精检测模块实物图如图4-2所示图4-2酒精检测模块实物图智能酒精检测仪的实物图见4-3所示图4-3酒精检测仪的实物图第5章检测仪的软件实现5.1A/D转换的软件实现A/D转换的软件控制流程如图5-1所示知识运用#开始延时转换结束?数字量输出调用数据处理程序酒精浓度结束YN图5-1AD转换流程控制A/D转换的启动必须依靠下降沿触发,在START置低后延时一段时间(约10ms)转换才正式开始.转换过程中的所需输入时钟允许范围为10KHZ1280KHZ,在本次设计中选用500KHZ,通过定时器产生,转换完成后得到的数字量即为由酒精传感器检测到环境中的酒精含
31、量而产生的电压值,调用数据处理程序从而可得到酒精浓度的真实值.5.2阈值设定及显示的软件控制酒精浓度的阈值设定及显示的具体软件控制流程如图5-2所示知识运用#开始外部中断响应?重设酒精浓度阈值I2C通信存储LCD显示结束YN图5-2酒精浓度的阈值设定及LCD显示的软件控制流程当系统进行完初始化后,该检测仪在将检测到的酒精浓度进行A/D转换的同时,还在时刻检测有无外部中断的响应,一旦有按键按下,将会根据按键按下的次数选择酒精浓度表中的酒精浓度值,而且这个值将会立刻被保存于外部存储单元(AT24C08),以便与监测到的环境中的酒精浓度进行比较,完成接下来的声光报警功能.5.3整体软件控制流程本酒精
32、检测仪的软件流程图见图5-3所示知识运用#开始系统初始化LCD显示AD转换调用数据处理程序得出酒精浓度值有无外部中断?启动设定酒精阈值操作大于设定的阈值?声光报警结束YNYN图5-3软件方案总体流程图该仪器软件程序主要使用C语言编写,采用了模块化结构程序设计方法,包括主程序、中断程序等。系统在开机或者复位后,首先进行初始化、自检,然后进入中断等待,A/D转换,液晶显示三个状态,最终根据所得结果判断是否执行声光报警。中断子程序包括预设阀值、数据存储、信息显示等操作,在进行阀值判断时用到了LM393电压比较器,程序的绝大部分时间处在数据处理上,而STC89C52单片机在一次处理数据的时间约为6us
33、,故总体的平均功耗低。知识运用#第6章检测仪的软件功能调试本检测仪的软件功能通过方便灵活、移植性好的C语言编程来实现,采用分模块化程序设计思想,对不同模块分别进行调试后,最后再进行整合调试。总体说来包括6个模块,即:按键设置阀值模块、模数转换模块、液晶显示模块、声光报警模块、存储模块、延时模块。6.1按键修改酒精阈值程序下面这段程序是用来设置酒精浓度的阈值的,检测仪只要处在工作状态中,不停地扫描按键,一旦检测有按键按下,通过检测按下的次数调用酒精浓度值数组就可知道酒精浓度设在哪个阈值。那么只要阈值在没修改前,检测仪实时检测的酒精浓度值就会跟该值进行比对,超过界限蜂鸣器将会就会发出响声,同时蜂鸣
34、器旁边的灯会亮。经测试,虽然整个反应过程慢了点,但是效果还是符合预定的思路。程序6-1:Staticunsignedcharset_Value=6;voidINTER0(void)interrupt0set_Value+;I2c_Write_Char(DEV_24c08ID,0 x00,set_Value);if(set_Value20)set_Value=0;6.2模数转换测试选择第0通道作为酒精浓度模拟量输入端,首先得对ADC0809的初始化,知识运用#初始化完后,进行酒精浓度的监测、分析、运算和处理,最终结果通过单片机控制8255输至液晶上显示出来,同时这个值还将与所设定的阈值进行比对以
35、判断是否超标。下面是关于A/D转化的模块化程序(程序6-2).程序6-2:ucharAD_Convert(void)Start=LOW;delay(2);Start=HIGH;delay(2);Start=LOW;while(!EOC);OE=HIGH;temp=P0;returntemp;6.3液晶显示程序设计该仪器用到的是LCD1602液晶,即可显示两行字符,每行16个字符。以下是对其的初始化程序,为了达到实时正确显示所需要的信息,我们将对检测仪的液晶显示模块进行单独的测试。要想1602液晶正常显示,得对其进行写命令操作和写数据操作,以下的程序可以在液晶的第一行显示“Mycollege!”
36、.程序6-3:#include#include#includeABSACC.H#definea8255_PAXBYTE0 xD1FF/*PA口地址*/#definea8255_PBXBYTE0 xD2FF/*PB口地址*/知识运用#definea8255_PCXBYTE0 xD5FF/*PC口地址*/#definea8255_CONXBYTE0 xD7FF/*控制字地址*/#defineucharunsignedchar#defineuintunsignedintucharcodetable=Mycollge!;voiddelay(intms)inti;while(ms-)for(i=0;i2
37、50;i+)_nop_();_nop_();_nop_();_nop_();/*遇忙等待函数*/voidWaitForEnable(void)_nop_();_nop_();while(a8255_PA/1忙a8255_PA=0 xbf;/10111111/*写命令*/voidwrite_com(ucharcom)知识运用#a8255_CON=0 x80;WaitForEnable();a8255_PA=0 x8f;/10001111a8255_PB=com;delay(2);a8255_PA=0 xcf;/11001111delay(2);a8255_PA=0 x8f;/10001111/*
38、写数据函数*/voidwrite_data(uchardat)a8255_CON=0 x80;WaitForEnable();a8255_PA=0 x9f;/10011111a8255_PB=dat;delay(2);a8255_PA=0 xdf;/11011111delay(2);a8255_PA=0 x9f;/*LCD1602初始化*/voidlcdinit(void)a8255_PA=0 xff;a8255_CON=0 x80;a8255_PA=0 x9f;write_com(0 x38);write_com(0 x0f);/00001111开显示,开光标,不闪烁知识运用#write_c
39、om(0 x06);/00000111指针加1write_com(0 x01);/清屏write_com(0 x80);/write_com(0 x80);voidmain()intnum;lcdinit();for(num=0;num=set_Value)Beep=0;delay_ms(200);Beep=1;delay_ms(20);知识运用#6.5整体功能调试程序本设计采用模块化程序设计结构,方便调试,易于查错,可移植性强。详细的模块程序请查看相应的附录,该检测仪的整体功能实现即由每个模块的分工协作来实现。将程序在Keil编译器中编译成功后,生成HEX文件,然后将程序烧录到单片机中,上电
40、即可进行工作了。上电后该酒精检测仪将按照初始化的程序进行工作,酒精浓度阈值为当初设定的,超过阈值则会产生报警。一旦有设定酒精浓度阈值的按键按下,并且检测按键按下的次数,则酒精浓度的阈值即被重新设定,在没被下一次设定前,实时检测的酒精浓度将与它进行比较,超过该界限值即报警,同时酒精浓度值一直将会显示出来。第7章结论经过近半年时间的不断查找资料、设计原理图、布板、焊接以及软、硬件调试,该检测仪基本实现了既定的功能。可以进行酒精浓度阈值设定、声光报警、以及酒精浓度的显示,不过整个检测仪的反应速率相对较慢,经分析可能与单片机的处理的位数、环境的温度有关,因为环境的温度会对酒精传感器的灵敏度造成很大的影
41、响,但酒精传感器良好的稳定性和选择性使得检测仪抗干扰性很强。结构简单、体积小、携带方便等优点相信会使它具有很好的市场前景。总之,虽然在这过程当中遇到过很多阻碍,比如原理图中有些元件设置不对导致没有导入PCB工程中,还有部分因为封装问题导致生成的PCB出现错误,不过有了这些错误同时让自己对知识有了更深一层的了解,培养了自己独立思考问题、解决问题的能力。知识运用#参考文献1纪宗南.单片机外围器件实用手册-输入通道器件分册(M).北京:北京航空航天大学出版社,2005:225-230.2赵家贵.新编传感器电路设计手册(M).北京:中国计量学出版社,2002:23-26.3张鑫.单片机原理及应用(M)
42、.北京:电子工业出版社,2005:161-258.4清源计算机工作室.Protel99SE原理图与PCB及仿真(M).北京:机械工业出版社,2004:10-345.5Neamen,D.A美电子电路分析与设计(M).北京:电子工业出版社,2003:86-104.6李伟諟.EPSON单片系列液晶显示器(M).北京:北京航空航天大学出版社,2001:142-150.7黄智伟.全国大学生电子设计竞赛电路设计(M).北京:北京航空航天大学出版社,2006:127-140.8韩广兴.电子元器件与实用电路基础(修订版(M)).北京:电子工业出版社,2005:340-356.9沙占友.中外集成传感器实用手册(
43、M).北京:电子工业出版社,2005:200-210.10Huddleston,C.美.IntelligentSensorDesign:UsingtheMicrochipdsPIC(智能传感器设计(M).北京:人民邮电出版社,2000:827-1124.11乔林.VisualC+6.0程序设计(M):精通篇.北京:中国铁道出版社,1999:20-64.12先锋工作室.单片机程序设计实例(M).北京:清华大学出版社,2002:46-50.13张大明.单片机控制实训指导及综合应用实例(M).北京:机械工业出版社,2007:668-710.14康华光.电子技术基础模拟部分(第五版(M)).北京:高等
44、教育出版社,2006:123-340.15康华光.电子技术基础数字部分(第五版(M)).北京:高等教育出版社,2006:10-256.知识运用#附录附录A:全局变量头文件和延时模块/*-globle.h-*/#ifndef_GLOBLE_H#define_GLOBLE_H#include#includeABSACC.H#definea8255_PAXBYTE0 xD1FF/*PA口地址*/#definea8255_PBXBYTE0 xD2FF/*PB口地址*/#definea8255_PCXBYTE0 xD5FF/*PC口地址*/知识运用#definea8255_CONXBYTE0 xD7FF/*控制字地址*/typedefuns
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 单位入职面试题目及其答案
- 2026年下半年教师资格证面试试讲真题(高中物理)
- 疫情知识测试题及答案
- 供销部培训练习题及答案解析
- 《环境与资源保护法学》章节习题及答案
- 高一物理光学基础习题
- 技术学霸试题及答案高中生
- 执业律师考核测试题及答案展示
- 2026年重庆市部编版高一语文一轮复习第五单元文言文阅读测试题库试卷
- GB-T2423.8 自由跌落试验参数选型与判定标准解读文档
- 2026年上海市闵行区中小学教师招聘考试试卷及答案
- 2026 年秋季开学:新时代教师师德师风建设专题培训
- 新版2026西师大版数学六年级上册全册完整版教案教学设计合集
- 2026年山西调度规程考试试题及答案
- 蓝图绘就 十五五(2026-2030)山东省纺织服装产业升级建设方案报告
- 2026年幼儿园新生家长会后勤园长
- 2025年新疆医科大学第一附属医院医护人员招聘考试题库及答案详解
- 工程伦理第2版
- 人民医院病房改造提升项目监理大纲服务方案投标文件(技术标)
- ICU患者镇静镇痛状态评估量表
- 社区胸痛健康教育
评论
0/150
提交评论