收藏 分享(赏)

酒精浓度测试.doc

上传人:精品资料 文档编号:10983471 上传时间:2020-01-30 格式:DOC 页数:52 大小:511.17KB
下载 相关 举报
酒精浓度测试.doc_第1页
第1页 / 共52页
酒精浓度测试.doc_第2页
第2页 / 共52页
酒精浓度测试.doc_第3页
第3页 / 共52页
酒精浓度测试.doc_第4页
第4页 / 共52页
酒精浓度测试.doc_第5页
第5页 / 共52页
点击查看更多>>
资源描述

1、课程设计报告设计题目: 酒精溶度测试仪 智能酒精浓度检测仪的设计摘 要:随着科技的进步,智能产品在社会生产和人们生活等方面扮演着越来越重要的角色。本文介绍的是一款智能酒精浓度检测仪的设计方案,以STC89C52 单片机和酒精传感器为核心,具有声光报警和 LCD 显示功能。为了满足不同环境下的监测,可根据不同的环境设置不同的阀值,超过阀值即进行声光报警,提示危害。该设计方案的优点是硬件电路设计简单,软件功能采用C 语言进行调试,方便灵活。而该仪器具有灵敏度高、工作性能好、低功耗、低成本,较高的性价比等优点。可用于交通检测、酒厂和食品工厂发酵监控等场所。关键词:智能;酒精浓度;检测仪;STC89C

2、52 单片机;阀值;C 语言;交通检测IDesign for Intelligent Alcohol Concentration DetectorAbstract: With the progress of science, intelligent products gradually play an important role in many aspects, such as social produce, peoples daily life. This paper introduces an intelligent alcohol concentration detector, whi

3、ch is based on STC89C52 single-chip microcomputer and alcohol sensor (transducer). It has several functions, including detecting alcohol concentration in different environment, giving an alarm with voice and glowing, and LCD display, except for this, we can also set the valve number of alcohol conce

4、ntration to meet different environments detecting, namely, when the detecting num over the value, the detector can suggest danger. The excellences of this design precept : easy hardware circuit ,software function adopt to C language to test, which is convenient and flexible .whats more, the detector

5、 with high delicacy, low energy consumption and spending. It can be used in traffic detect, wine factory, food factory and so on.Key words: intelligent; alcohol concentration; detector; STC89C52 single-chip microcomputer; value ;C language; traffic detectII目 录第 1 章 绪 论 11.1 选题的依据和课题的意义 11.2 国内外研究概况

6、11.3 课题研究方法 21.4 设计构成及研究内容 .2第 2 章 系统的工作原理与结构 .32.1 工作原理 .32.2 结构框图 .42.3 智能酒精浓度检测仪的整体结构特点 .4第 3 章 检测仪的硬件设计 43.1 单片机的选择 43.2 酒精浓度检测的设计 .63.2.1 MQ-3 气敏传感器的结构和外形 73.2.2 MQ-3 灵敏度特性曲线 .83.2.3 MQ-3 的标准工作条件和环境条件 83.2.4 酒精浓度信号的采集 9III3.3 模数转换电路的设计 103.3.1 ADC0809 的特点 .103.3.2 模数转换电路 103.4 按键设定阈值及阈值存储电路的设计

7、113.5 液晶接口电路的设计 113.6 声光报警电路的设计 123.7 单片机与 PC 机串口通讯 133.8 晶振电路的设计 .133.9 复位电路的设计 .143.10 附加功能电路的设计 14第 4 章 检测仪的整体原理图和实物图 .15第 5 章 检测仪的软件实现 165.1 A/D 转换的软件实现 .165.2 阈值设定及显示的软件控制 .175.3 整体软件控制流程 .18第 6 章 检测仪的软件功能调试 .206.1 按键修改酒精阈值程序 206.2 模数转换测试 206.3 液晶显示程序设计 .216.4 声光报警测试 246.5 整体功能调试程序 .24第 7 章 结 论

8、 .25参考文献 26致谢 27附录 28附录 A:全局变量头文件和延时模块 28附录 B:AD 转化模块 .30附录 C:24c08 存储模块 .31IV附录 D:LCD 显示模块 35附录 E:主函数 410第 1 章 绪 论1.1 选题的依据和课题的意义根据 WTO 数据,全球 2003 年得人均纯酒精消费量为 6.2L,其中欧洲地区人均达 11.9L,美洲地区人均为 8.7L。俄罗斯及其周边的东欧国家酒精消费量最高,其次为欧洲其他国家。在人均国民生产总值(GDP)低于 7000 美元的低收入国家,酒精消费量与人均 GDP 有关,GDP 越高这个国家或者地区的酒精消费量也就越高。而随着我

9、国近年来高速发展的经济水平和居民生活水平,私家车的占有率直线上升,各式各样的汽车已经成为人们的代步工具。同时伴随而来的是频频发生的交通事故,尤其是因为酒后驾车所引发的交通事故,给自己和人们的生命财产安全带来威胁,同时也给国家和社会带来了严重的经济损失。因此,对于每个驾驶人来说拥有一个酒精浓度检测仪,在每次驾驶之前自行检测酒精浓度再决定是否安全驾驶,这是对自己、对家庭、对社会有责任感的体现。此外,从工厂企业到居民家庭,酒精泄露的检测、监控对居民的人身和财产安全都是十分重要和必不可少的。因此,酒精浓度检测仪具有十分广阔的实际应用价值和潜在的市场要求。1.2 国内外研究概况受 20 世纪信息技术快速

10、发展的影响,传感技术逐渐走向成熟,在生活生产中得到了广泛的应用。由于传感器在各个领域都有着举足轻重的作用,因此,高精度、高可靠性、微型化、低功耗和智能数字化成了其发展方向。为了检查酒驾,警察常常使用一种便携式的酒精呼吸检测仪。通过检测驾驶员呼出的气体判断驾驶者是否饮酒,而目前使用的酒精呼吸检测仪只能初步显示驾驶员是否饮酒,具体酒精浓度含量还得通过血检才能测得。为了简化其流程,英国内部已推出一种超级酒精呼吸检测仪,能够根据体温、呼吸频率等情况,当场判断出驾驶员体内的酒精含量。由此可见,高精度、高可靠性、微型化以及低功1耗是酒精浓度检测仪今后发展的主流方向。迄今为止,对气体中酒精含量进行检测的设备

11、有燃料电池型、半导体型、红外线型、气体色谱分析型和比色型五种类型,但由于使用方便的原因,目前常用的有燃料电池型和半导体型两种。燃料电池是当前世界都在广泛研究的环保型能源,它可以直接把可燃气体转变成电能,而不产生污染。酒精传感器只是燃料电池的一个分支。燃料电池酒精传感器采用贵金属白金作为电极,在燃烧室内充满特种催化剂,是进入燃烧室内的酒精充分燃烧转变为电能,也就是在两个电极上产生电压,电能消耗在外接负载上,此电压与进入燃烧室内气体的酒精浓度成正比。与半导体型相比,燃料电池型呼气酒精测试仪具有稳定性好,精度高,抗干扰性好的优点,但是由于燃料电池酒精传感器的结构要求非常精密,制造难度相当大,目前仅有

12、美国、英国、德国等少数几个国家能够生产,加上材料成本高,因此价格相当昂贵,通常是半导体传感器的几十倍。1.3 课题研究方法(1)文献索引法:利用学校图书馆资料和文献及通过网络查询相关资料对本课题有足够深的了解,为本设计的具体模块电路做好理论准备。(2)调查法:与身边的同学和朋友进行交流,充分考虑本设计实现的功能,尽可能完善该设计的功能。 (3)对比分析法:与目前市场上相关产品进行比较,发现该酒精检测仪存在的不足以及可以优化的部分,加以改进。1.4 设计构成及研究内容本文设计的智能酒精浓度检测仪采用的是气敏传感器,属于半导体型,该传感器实质是个可变电阻,在它两端加以固定的电压,随着所处环境酒精浓

13、度的升高阻值将进行线性变化,从而将酒精浓度的含量转变为电压的变化。该酒精检测仪以 C51 单片机和气敏酒精传感器为核心,具有声光报警和 LCD 显示功能。为了满足不同环境下的监测,可根据不同的环境设置不同的阈值,超过阈值即进行声光报警,提示危害。采用 C 语言来实现其软件功能。本设计只要包2括以下内容:(1)主控芯片的选择;在此设计中选择了 C51 系列单片机,熟悉 C51 系列芯片怎样控制外围硬件电路。(2)酒精浓度检测模块的设计;酒精浓度常用酒精传感器来检测,了解该传感器的工作原理,制作数据采集模块完成数据的采集。(3)A/D 转换模块的设计;A/D 转换器的选择,将采集的酒精浓度模拟信号

14、进行转换后送至单片机存储、处理。(4)键盘模块的设计;要通过键盘完成设定不同环境中酒精浓度的阈值。(5)声光报警模块的设计;超过设定的阈值直观地给予警示。(6)液晶显示模块的设计;准确显示出检测到的数据。(7)各个硬件模块电路衔接。(8)PCB 的布板、元件焊接及功能调试。第 2 章 系统的工作原理与结构2.1 工作原理酒精浓度检测仪是用来检测所处环境中的酒精浓度的,并显示出检测的结果数值。而本设计所做的智能酒精浓度酒精检测仪除具有这个基本功能外,还可通过手动随意设置酒精浓度的阀值,以划定不同环境条件下酒精的安全界限,同时具有声光报警功能。它主要由酒精传感器、模数转换器、单片机、LCD 显示、

15、键盘模块以及声光报警部分组成。数据的采集由酒精传感器完成,酒精传感器将检测的酒精浓度转换为电信号,然后将电信号传递给模数转换器,经过模数转换器转换后,把转换后得到的数字信号传给单片机,单片机对所输入的数字信号进行分析处理,最后将分析处理的结果通过显示器显示出来。同时与根据键盘设定的酒精浓度阀值进行比对,如果检测到所处环境中的酒精浓度超过设定的界线,那么单片机将会控制蜂鸣器发出声音报警和发光 LED 不断闪烁,以提示危害。32.2 结构框图硬件系统结构框图如下图 2-1 所示单片机L C D 显示酒精传感器 模数转换器键盘声光报警图 2-1 系统结构框图2.3 智能酒精浓度检测仪的整体结构特点本

16、文设计的智能酒精浓度检测仪具有如下特点:(1)数据采集系统以单片机为控制核心,外围电路带有 LCD 显示和键盘响应电路,无需其他计算机,用户就可与之进行交互工作,完成数据的采集、存储、计算、分析等过程。(2)系统具有低功耗、小型化、高性价比、灵敏度高等特点。(3)从便携式的角度出发,系统通过键盘设置酒精浓度的阀值,结合单片机的控制,实现了人机交互操作、界面友好。(4)软件系统采用 C 语言进行编写,在兼顾实时性处理的同时,也方便了对数据的处理。第 3 章 检测仪的硬件设计3.1 单片机的选择MCS-51 单片机是美国 Intel 公司于 1980 年推出的一款相当成功的产品,该4系列或其兼容的

17、单片机仍是应用的主流产品之一,该系列单片机主要包括8031,8051,8751 和 89C51 等通用产品。本次设计选用的是 STC89C52 单片机,STC89C52 是低功耗、高性能的 CMOS8 位微控制器,具有 8K 在系统可编程Flash 存储器。使用宏晶高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容。片上 Flash 允许程序存储器在系统上可编程,亦适于常规编器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得STC89C52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52 具有以下标准功能:8 字节的 Fl

18、ash,256 字节的 RAM,32 位的 I/O口线,看门狗定时器,2 个数据指针,3 个 16 位定时器/计数器,1 个 6 向量 2级中断结构,全双工串行口,片内晶振及时钟电路。除此,STC89C52 可降至0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,内容被保存,振荡器被冻结。STC89C52 单片机作为控制核心,为了提高 IO 口的利用率,通过扩展一片8255 芯片来实现液晶显示的功能。单片机的 IO 口控制图如下图 3-1-1 所示图 3-1-1 STC89C52 的接口控制图P

19、0 口用于接收模数转换的输出,P2.0 用于模数转换的时钟控制 ,8255 的扩5展通过 P2.1,P2.2,P2.5 口来控制, P2.3 用于作为模数转换的使能控制,P2.6,P2.7口用于模拟 I2C 连接外部存储芯片 AT24C08,P3.3 口为外部中断控制口,由它来控制酒精阈值的设定,液晶显示模块通过单片机控制 8255 来实现相应的功能.8255 芯片的引脚控制图如图 3-1-2 所示:图 3-1-2 8255 的引脚控制图8255 芯片是一种典型的可编程通用并行接口芯片,用来扩展单片机的端口,它具有 3 个 8 位的并行口,有三位工作方式,可作为单片与各种外部设备连接的接口电路

20、。CS:片选信号线,当该引脚为低电平时,8255 被选中,允许 8255 与 CPU通讯。RESET:复位输入线,当该引脚为高电平时,内部寄存器被清除,所有 I/O口均被置成输入方式。A0、A1:地址输入线。当 A0A1=00 时,PA 口被选中;当 A0A1=01 时,PB 口被选中;当 A0A1=10 时,PC 口被选中;当 A0A1=11 时,控制寄存器被选中。3.2 酒精浓度检测的设计酒精浓度的准确检测是决定该设计成功与否的关键因素,而酒精的检测依6靠酒精传感器来实现信号的采集。在本设计中选用灵敏度高、稳定性好的 MQ-3 气敏传感器,该传感器对乙醇蒸汽有很高的灵敏度和良好的选择性,快

21、速的响应和恢复特性,长期的寿命和可靠的稳定性,以及简单的驱动电路。它的工作原理是在确定的环境条件下,环境中的酒精浓度变化将会引起电阻值的变化,且这两种变化存在着线性关系。3.2.1 MQ-3 气敏传感器的结构和外形MQ-3 气敏元件的结构和外形如图 3-2-1 所示图 3-2-1 MQ3 气敏元件结构外形图在上图中,由微型 AL2O3 陶瓷管、SnO 2 敏感层,测量电极和加热器构成的敏感元件固定在塑料或不锈钢制成的腔管内,加热器为敏感元件提供必要的工作条件。封装好的气敏元件有 6 只针状管脚,其中 4 只用于信号提取,2 只用于提供加热电流。73.2.2 MQ-3 灵敏度特性曲线图 3-2-

22、2 MQ-3 气敏元件的灵敏度特性曲线在图 3-2-2 中给出了 MQ-3 气敏元件的灵敏度曲线,其中:温度 20;相对湿度:65%;氧气浓度:21%; RL:200k. Rs:气敏元件在不同气体、不同浓度时的电阻值。R 0:气敏元件在洁净空气中的电阻值。3.2.3 MQ-3 的标准工作条件和环境条件图 3-2-3 MQ-3 气敏传感器阻值变化率与酒精浓度、外界温度的关系为了更好地使用酒精传感器 MQ-3,现将 MQ-3 的标准工作条件和环境条件进行介绍,分别如表 3-2-1 和表 3-2-2 所示:8表 3-2-1 工作条件符号 参数名称 技术条件 备注VC 回路电压 15V AC or D

23、CVH 加热电压 5.0V0.2V AC or DCRL 负载电阻 可调RH 加热电阻 313 室温PH 加热功耗 900mW表 3-2-2 环境条件符号 参数名称 技术条件 备注Tao 使用温度 -1050Tas 储存温度 -2070RH 相对湿度 95%RHO2 氧气浓度 21%(标准条件)氧气浓度会影响灵敏度特性 最小值大于 2%3.2.4 酒精浓度信号的采集详细的酒精浓度采集电路见下图 3-2-4 所示:图 3-2-4 酒精浓度采集电路在上图中传感器将环境中的酒精浓度转化电压信号,在第 4 引脚直接输出电压信号模拟量,该模拟量将送到模数转换,通过单片机控制最终得出环境中酒精的含量,同时

24、可以通过对电位器 WR1 的调节来改变输出的灵敏度。93.3 模数转换电路的设计由于本设计中所用的是单一电源+5V,故由酒精浓度转化的电压信号也将在05V 范围,并且考虑到转换的速度应该要快,在此我们选用典型的 8 位逐次逼近型 A/D 转换器 ADC0809.3.3.1 ADC0809 的特点该转换器具有如下特点:(1) 分辨率为 8 位;(2) 转换时间为 100us;(3) 很容易与微处理器连接;(4) 无须零位或者满量程调整;(5) 带有锁存控制逻辑的 8 通道多路转换开关,便于选择 8 路中的任一路进行转换;(6) 带锁存器的三态数据输出。3.3.2 模数转换电路具体模数转换电路见图

25、 3-2-1 所示图 3-2-1 模数转换在该检测仪的设计中只用到两路通道,即通道 IN0 和 IN1.分别为酒精浓度的电压模拟信号和电压比较器 LM393 的基准电压信号,D0D7 为由酒精浓度10引起而产生的电压数字量输出,结果将送至单片机进行分析和处理。3.4 按键设定阈值及阈值存储电路的设计为了适应对不同环境中酒精浓度的检测和监控,必须调整该仪器的酒精浓度阀值以符合既定的工作要求。同时为了节省硬件资源的消耗,于是在此通过外部中断的按键操作来改变酒精浓度的不同阀值,外部中断电路见下图 3-4-1所示图 3-4-1 外部中断按键电路阈值存储电路的添加,既可以明确地看出具体设定的酒精浓度值,

26、又能以备调出来与检出的酒精浓度作比较,增强了直观性。于此选用了 AT24C08 作为存储器件,用单片机的 P2.6,P2.7 口模拟 I2C 与之通信,从而完成数据的读写操作。相应的电路如图 3-4-2 所示图 3-4-2 AT24C08 存储电路3.5 液晶接口电路的设计酒精浓度的显示采用 1602 液晶,LCD1602 可显示两行英文字符,且内带ASCII 字符库。LCD1602 模块内部可完成显示扫描,单片机只要向 LCD1602 发送命令和显示内容的 ASCII 码。具体的接口电路见图 3-5 所示11图 3-5 液晶接口电路图控制信号 RS、R/W 和 E 分别由单片机控制 8255

27、 的 PA4,PA5,PA6 口实现,要显示的信息通过调用数据处理程序传到 8255 的 PB 口。3.6 声光报警电路的设计当酒精浓度超过所设定标准时,通过控制单片机的 P3.3 口的电平来实现警报功能。其电路见图 3-6 所示图 3-6 声光报警电路如上图所示,酒精浓度超过设定的阀值时,给单片机的 P3.3 口低电平,则三极管导通,同时蜂鸣器工作,发光二极管也亮。否则,单片机的 P3.3 口维持在高电平,三极管截止,蜂鸣器不工作,二极管也不发光。123.7 单片机与 PC 机串口通讯“串行通信”是系统之间用一根数据信号线,数据在这根数据线上一位一位地进行传输,每一位数据都占据一个固定的时间

28、长度。目前个人的 PC 机上都有这种接口(COM1,COM2) ,即 RS-232 口。电脑的 RS-232 口共 9 根线,在简单的应用中,需要三根线即可完成通信,分别是第 2 脚 RXD,第 3 脚 TXD,第 5 脚 GND.串行通信与单片机之间的接口:由于串行通信的电平逻辑定义是+15V(高电平 1) ,-15V (低电平 0) ,而单片机中分别用 5V,0V 来表示高电平 1,低电平 0.它们之间必须通过电平转换才能完成通信。最常用的是 MAX32 电路,该连接图见图 3-7 所示图 3-7 串口通信电路单片机串口通信原理:51 系列单片机内部集成了两个同名不同地址的串口缓冲区 SB

29、UF,一个是发送缓冲区,一个是接收缓冲区。发送数据时 MCU 将数据写到发送 SBUF,接收到的数据自动放到接收 SBUF,无需程序指定。串口发送和接收事件发生时,由硬件标志来通知处理器,RI 为接收事件发生标志,TI为发送完成标志, “1”为事件发生。在串口中断打开的条件下,两者任意一种情况发生都会引起中断,单片机程序可以根据 RI=1 和 TI=1 进行相应的处理。本检测仪需要用串口线将程序下载到单片机中,以对之进行初始化过程。3.8 晶振电路的设计本系统采用的是 12MHZ 的晶振,其电路图如图 3-8 所示:13图 3-8 晶振电路图XTAL1:振荡器反相放大器和内部时钟发生电路的输入

30、端。XTAL2:振荡器反相放大器的输出端。3.9 复位电路的设计单片机的复位电路如图 3-9 示:图 3-9 复位电路图RST:复位输入。晶振工作时,RST 脚持续 2 个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出 96 个晶振周期的高电平。特殊寄存器AUXR 上的 DISRT0 位可以使此功能无效。DISRT0 默认状态下,复位高电平有效。3.10 附加功能电路的设计由于酒精浓度的检测在很大程度上受到温度的影响,为了更直观地测出不同环境中酒精的含量,这里增加一个温度传感器,以对应不同温度下酒精传感器所对应的线性关系。DS18B02 数字温度计 DALLAS 公司生产的单总

31、线器件,具有线路简单、体积小的特点。实际应用中不需要外部任何器件即可实现测温,测量温度范围在-5+125。C 之间,数字温度计的分辨率可以从 9 位到 12 位选择,且内部有上、下限告警设置,使用非常方便。数字温度计接口的电路图如 3-10 所示14图 3-10 DS18B02 电路P17 为数字信号输入 /输出端,将程序下载至单片机,开机运行,用手触摸DS18B02 温度传感器,液晶上将会显示当时所处环境的温度值。第 4 章 检测仪的整体原理图和实物图智能酒精检测仪的整体原理图见 4-1 所示图 4-1 整体原理图15酒精检测模块实物图如图 4-2 所示图 4-2 酒精检测模块实物图智能酒精

32、检测仪的实物图见 4-3 所示图 4-3 酒精检测仪的实物图第 5 章 检测仪的软件实现5.1 A/D 转换的软件实现A/D 转换的软件控制流程如图 5-1 所示16开始延时转换结束 ?数字量输出调用数据处理程序酒精浓度结束YN图 5-1 AD 转换流程控制A/D 转换的启动必须依靠下降沿触发,在 START 置低后延时一段时间 (约10ms)转换才正式开始.转换过程中的所需输入时钟允许范围为10KHZ1280KHZ,在本次设计中选用 500KHZ,通过定时器产生,转换完成后得到的数字量即为由酒精传感器检测到环境中的酒精含量而产生的电压值,调用数据处理程序从而可得到酒精浓度的真实值.5.2 阈

33、值设定及显示的软件控制酒精浓度的阈值设定及显示的具体软件控制流程如图 5-2 所示17开始外部中断响应 ?重设酒精浓度阈值I 2 C 通信存储L C D 显示结束YN图 5-2 酒精浓度的阈值设定及 LCD 显示的软件控制流程当系统进行完初始化后,该检测仪在将检测到的酒精浓度进行 A/D 转换的同时,还在时刻检测有无外部中断的响应,一旦有按键按下,将会根据按键按下的次数选择酒精浓度表中的酒精浓度值,而且这个值将会立刻被保存于外部存储单元(AT24C08),以便与监测到的环境中的酒精浓度进行比较,完成接下来的声光报警功能.5.3 整体软件控制流程本酒精检测仪的软件流程图见图 5-3 所示18开始

34、系统初始化L C D 显示A D 转换调用数据处理程序得出酒精浓度值有无外部中断 ?启动设定酒精阈值操作大于设定的阈值 ?声光报警结束YNYN图 5-3 软件方案总体流程图该仪器软件程序主要使用 C 语言编写,采用了模块化结构程序设计方法,包括主程序、中断程序等。系统在开机或者复位后,首先进行初始化、自检,然后进入中断等待,A/D 转换,液晶显示三个状态,最终根据所得结果判断是否执行声光报警。中断子程序包括预设阀值、数据存储、信息显示等操作,在进行阀值判断时用到了 LM393 电压比较器,程序的绝大部分时间处在数据处理上,而 STC89C52 单片机在一次处理数据的时间约为 6us,故总体的平

35、均功耗低。19第 6 章 检测仪的软件功能调试本检测仪的软件功能通过方便灵活、移植性好的 C 语言编程来实现,采用分模块化程序设计思想,对不同模块分别进行调试后,最后再进行整合调试。总体说来包括 6 个模块,即:按键设置阀值模块、模数转换模块、液晶显示模块、声光报警模块、存储模块、延时模块。6.1 按键修改酒精阈值程序下面这段程序是用来设置酒精浓度的阈值的,检测仪只要处在工作状态中,不停地扫描按键,一旦检测有按键按下,通过检测按下的次数调用酒精浓度值数组就可知道酒精浓度设在哪个阈值。那么只要阈值在没修改前,检测仪实时检测的酒精浓度值就会跟该值进行比对,超过界限蜂鸣器将会就会发出响声,同时蜂鸣器

36、旁边的灯会亮。经测试,虽然整个反应过程慢了点,但是效果还是符合预定的思路。程序 6-1:Static unsigned char set_Value=6;void INTER0(void) interrupt 0set_Value+;I2c_Write_Char(DEV_24c08ID,0x00,set_Value);if(set_Value20)set_Value=0;6.2 模数转换测试选择第 0 通道作为酒精浓度模拟量输入端,首先得对 ADC0809 的初始化,初始化完后,进行酒精浓度的监测、分析、运算和处理,最终结果通过单片机控制 8255 输至液晶上显示出来,同时这个值还将与所设定的

37、阈值进行比对以判20断是否超标。下面是关于 A/D 转化的模块化程序(程序 6-2).程序 6-2:uchar AD_Convert(void)Start=LOW;delay(2);Start=HIGH;delay(2);Start=LOW;while(!EOC);OE=HIGH;temp=P0;return temp;6.3 液晶显示程序设计该仪器用到的是 LCD1602 液晶,即可显示两行字符,每行 16 个字符。以下是对其的初始化程序,为了达到实时正确显示所需要的信息,我们将对检测仪的液晶显示模块进行单独的测试。要想 1602 液晶正常显示,得对其进行写命令操作和写数据操作,以下的程序可

38、以在液晶的第一行显示“My college! ”.程序 6-3:#include#include #include “ABSACC.H“#define a8255_PA XBYTE0xD1FF /*PA 口地址*/#define a8255_PB XBYTE0xD2FF /*PB 口地址*/#define a8255_PC XBYTE0xD5FF /*PC 口地址*/#define a8255_CON XBYTE0xD7FF /*控制字地址 */#define uchar unsigned char21#define uint unsigned int uchar code table=“My collge!“;void delay(int ms) int i;while(ms-)for(i = 0; i=set_Value)Beep=0;delay_ms(200);Beep=1;delay_ms(20);6.5 整体功能调试程序本设计采用模块化程序设计结构,方便调试,易于查错,可移植性强。详细的模块程序请查看相应的附录,该检测仪的整体功能实现即由每个模块的分工协作来实现。将程序在 Keil 编译器中编译成功后,生成 HEX 文件,然后将

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报