毕业论文-基于stc12c5a16ad单片机与mq-3型气体传感器的酒精浓度探测仪设计内容摘要:

Keil和 Hitech等开发工具的 c源码和汇编的调试。 (5)内置超过 6000标准 SPICE模型,完全兼容制造商提供的 SPICE模型。 (6) DLL接口为应用提供特定的模式。 (7)基于工业标准的 SPICE3F5混合模型的 i“ 路仿真器。 (8) 14种虚拟仪器:示波器、逻辑分析仪、信号发生器、规程分析仪等。 (9)高级仿真包括强大的基于图形的分析功能:模拟、数字和混合瞬时图形,频率,转换,噪声,失真,傅立叶,交流、直流和音频曲线。 (10)模拟信号发生器包 括直流、正弦、脉冲、分段线性、音频、指数、单频 FM;数字信号发生器包括尖脉冲、脉冲、时钟和码流。 (11)集成 PROTEUS PCB设计形成完整的电子设计系统。 二、 Proteus ISIS ISIS是 PROTEUS系统的中心,它远不仅是一个图表库。 它是具有控制原理图画图的外观的超强设计环境。 无论是实现复杂设计的仿真以及 PCB设计,还是设计精美的原理图 ISIS都是最好工具。 双击桌面上的 ISIS 6 Professional图标或者单击屏幕左下方的“开始”一“程序”一“ Proteus”一“ ISIS 6 Professional”菜单启动了 Proteus ISIS集成环境。 Proteus ISIS的工作界面是一种标准的 Windows界面。 包括:标题栏、主菜单、工具栏、预览窗口、挑选元件按钮、库管理按钮、原理图编辑窗口。 元件列表、对象选择按钮、预览对象方位控制按钮、仿真控制按钮、状态栏。 毕业设计用纸 第 8页 共 28 页 第三章 硬件电路设计 设计框图 本研究设计的酒精浓度测试仪框图如图 31所示。 MQ3乙醇气体传感器输出信号经信号调理电路处理,输出随乙醇浓度变化的电压信号,该电压信号送入单片机系统,经 AD 转换,与设定的醉酒阈值进行比较,并显示或报警。 M Q 3 气 体 传 感 器信 号 调 理 电 路M Q 3 传 感 器 模 块模 / 数 转 换电 压 / 酒 精 浓 度转 换阈 值 比 较 外 部 E E P R O M醉 酒 阈 值模 拟 电 压 信 号酒 精 浓 度 显 示 过 阈 报 警S T C 1 2 C 5 A 1 6 A D 单 片 机 图 31 酒精浓度测试仪方框图 乙醇信号检测及调理电路 MQ3乙醇气体传感器可以应用用于机动车驾驶人员及其他严禁酒后作业人员的现场检测,也用于其他场所乙醇蒸汽的检测。 其技术特点为: 1:对乙醇蒸汽有很高的灵敏度和良好的选择性 2:快速的响应恢复特性 3:长期的寿命和可靠的稳定性 4:简单的驱动回路 MQ3乙醇气体传感器灵敏度曲线如图 32所示,其传感原理为气敏电阻的输出阻值随乙醇气体等浓度变化而变化。 毕业设计用纸 第 9页 共 28 页 图 32 MQ3乙醇气体传感器灵敏度曲线 MQ3乙醇气体传感器管脚与测试电路如图 33所示。 (a) 管脚图 (b) 测试电路 图 33 MQ3乙醇气体传感器管脚及测试电路 MQ3 乙醇气体传感器及其调理电路原理如图 34 所示。 其外形如图 35 所示。 经过调理,检测信号由电阻值转变成电压值,便于后续电路进行 A/D 转换和处理。 毕业设计用纸 第 10页 共 28 页 ABH136452QMN10VCC VCC VCCR3LEDC1VCC23418U1AR11234P1Rp汇诚科技 网址: 产品有售淘宝店: R2+5VDOUTAOUTGND 图 34 传感器及调理模块原理图 图 35 MQ3传感器模块外形图 该传感器模块具有如下特点,方便与单片机系统接口组成检测仪器。 具有信号输出指示。 毕业设计用纸 第 11页 共 28 页 双路信号输出(模拟量输出及 TTL电平输出) TTL输出有效信号为低电平。 (当输出低电平时信号灯亮,可直接接单片机 ) 模拟量输出 0~5V电压,浓度越高电压越高。 单片机电路 本设计选用高性能单片机 STC12C5A16AD,其管脚如图 36所示。 PDIP40, STC12C5A16AD 图 36 STC12C2052AD单片机管脚图 该芯片为 52内核 8位单片机,内部集成了 10位多路 A/D转换模块,适用于常用检测电路。 由STC12C5A16AD组成的单片机系统原理图如图 7所示。 图中 AOUT为 MQ3传感器模块输出的检测电压信号,送入 ADC7 端口进行处理, DOUT 为传感器模块输出的数字电平信号,该信号可以根据乙醇气体浓度直接输出报警信号,报警阈值通过模块上的电位器进行调节。 图 37 单片机系统原理图 图 37中,按键 K2和 K3为醉酒阈值调整键,其中 K2为“增加”, K3为“减小”按键。 L2 和L3为报警指示灯,分别可以进行酒后和醉酒两级报警。 毕业设计用纸 第 12页 共 28 页 显示电路 显示部分采用 SMC 1602液晶屏进行数据显示,其主要技术参数为: 表 31 液晶屏技术指标 接口信号说明如表 32所示。 表 32 液晶屏接口信号说明 与单片机接口电路如图 38所示。 其中 J2 的 3脚为背光引脚, R9 和 R10 电阻用于调节背光亮度。 J2的 6引脚分别接液晶的 RS、 E/W和 E控制引脚, J2 的 7— 14 引脚为数据引脚。 毕业设计用纸 第 13页 共 28 页 图 38 LCD与单片机接口电路 阈值存储 醉酒阈值存储在 EEPROM 芯片 AT24C04 中,并可以通过 “增加”、“减少”按键调节并保存。 AT24C04是 IIC接口的 EEPROM芯片,可以用于掉电不易失数据的存储。 其电路如图 39所示。 图中A0、 A1和 A2为芯片的地址引脚,一般接地即可。 SCL 和 SDA 为 AT24C04和单片机 IIC 通信的时钟线和数据线。 图 39 EEPROM存储电路 毕业设计用纸 第 14页 共 28 页 第四章 软件设计 软件流程图 本设计软件主程序流程图如图 41所示。 数 据 初 始 化A / D 转 换 初 始 化定 时 器 初 始 化显 示 初 始 化进 入 后 台 w h i l e 循 环触 发 A / D 转 换换 算 酒 精 浓 度酒 精 浓 度 显 示超 过 阈 值 吗。 有 键 按 下 吗。 按 键 处 理酒 精 浓 度 显 示报 警是是否否 图 41 主程序流程图 include //头文件 define uchar unsigned char //宏定义无符号字 符型 define uint unsigned int //宏定义无符号整型 code uchar seg7code[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}。 //显示段码 数码管字跟 uchar wei[4]={0XEf,0XDf,0XBf,0X7f}。 //位的控制端 //位控制码 毕业设计用纸 第 15页 共 28 页 sbit ST=P3^0。 //A/D启动转换信号 sbit OE=P3^1。 //数据输出允许信号 sbit EOC=P3^2。 //A/D转换结束信号 sbit CLK=P3^3。 //时钟脉冲 uint z,x,c,v,AD0809, date。 //定义数据类型 延时函数 void delay(uchar t) { uchar i,j。 for(i=0。 it。 i++) { for(j=13。 j0。 j)。 {。 } } } 数码管动态扫描 void xianshi() //显示函数 { uint z,x,c,v。 z=date/1000。 //求千位 x=date%1000/100。 //求百位 c=date%100/10。 //求十位 v=date%10。 //求个位 P2=0XFF。 P0=seg7code[z]amp。 0x7f。 P2=wei[0]。 delay(80)。 P2=0XFF。 P0=seg7code[x]。 P2=wei[1]。 delay(80)。 P2=0XFF。 P0=seg7code[c]。 P2=wei[2]。 delay(80)。 P2=0XFF。 P0=seg7code[v]。 P2=wei[3]。 delay(80)。 P2=0XFF。 } CLK振荡信号 void timer0( ) interrupt 1 //定时器 0工作方式 1 毕业设计用纸 第 16页 共 28 页 { TH0=(655362)/256。 //重装计数初值 TL0=(655362)%256。 //重装计 数初值 CLK=!CLK。 //取反 } 主函数 void main() { TMOD=0X01。 //定时器中断 0 CLK=0。 //脉冲信号初始值为 0 TH0=(655362)/256。 //定时时间高八位初值 TL0=(655362)%256。 //定时时间低八位初值 EA=1。 //开 CPU中断 ET0=1。 //开 T/C0中断 TR0=1。 while(1) //无限循环 { ST=0。 //使采集信号为低 ST=1。 //开始数据转换 ST=0。 //停止数据转换 while(!EOC)。 //等待数据转换完毕 OE=1。 //允许数据输出信号 AD0809=P1。 //读取数据 OE=0。 //关闭数据输出允许信号 if(AD0809=251) //电压显示不能超过 5V AD0809= date=AD0809*20。 //数码管显示的数据值,其中 20为采集数据的毫安值 xianshi()。 //数码管显示函数 } } 当测量浓度大于设定浓度时,单片机 IO口输出低电平 include //库文件 define uchar unsigned char//宏定义无符号字符型 define uint unsigned int //宏定义无符号整型 第五章 调试 当程序在 uVision环境下编写完成,并编译生成 .hex文件后,就可以下载并进行调试了。 一、 USB转串口驱动安装 毕业设计用纸 第 17页 共 28 页 打开 USB 驱动文件夹下的 安装 文件,按提示安装 USB 转串口驱动程序。 安装完成后,插入 USB 下载线后,在 [开始 ][控制面板 ][打印机和其他硬件 ][设备管理器 ],在“端口”分支下有( Prolific USBtoSerial Comm Port(COMX)。 X 表示串口号,如果没有说明 USB转串口驱动没有安装,须重新安装。 记住括号里的 COM口号。 图 51 成功安装 USB转串口驱动示意图 二、下载程序 打开 STC单。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。