1、(完整版)基于单片机的空气质量检测系统佳木斯大学毕业论文基于单片机的空气质量检测系统 学 院 信息电子技术 专 业 通信工程 班 级 12级1班 学 籍 号 12109940619 姓 名 潘琦 指导教师 田静佳 木 斯 大 学2016年6月10日摘要随着工业发展,国民经济日益增长,人民生活指数也在不断提高。但是给环境却带来不可逆的影响,因为空气质量的恶化,使人类引起一系列呼吸道病症,危害身心健康。国家政府出台政策,一方面从源头控制污染源,一方面增加空气质量监控.各大中城市也将PM2.5作为天气预报一项重要指标,时时提醒市民关注环境。本设计就是基于51系列单片机的PM2。5监控预警系统,对环境
2、里的PM2.5浓度进行实时监控,预警.本设计以STC89C52单片机为控制核心,用夏普GP2Y1010AU0F传感器实时采集空气中粉尘情况,然后由ADC0832模数转化芯片,将从粉尘传感器采集到的模拟信号转化成数字信号,然后传给单片机进行精确换算,在LCD1602液晶屏显示当前空气粉尘浓度和显示预置报警阈值,按键可以设置系统粉尘报警阈值,蜂鸣器报警模块可在环境PM2。5浓度超过设置值时进行报警。本系统电路稳定性高、抗干扰能力强,处理速度快,功耗低,操作简便,实时精准显示,实时反馈环境因素。关键字:PM2.5;单片机;粉尘浓度;GP2Y1010AU0F;报警Abstract With the i
3、ndustrial development of the national economy growing, people living index is also rising。 But the environment has brought irreversible impact because of the deterioration in air quality, weather haze phenomenon increased hazard phenomenon worse。 National government policies, on the one hand to cont
4、rol pollution from the source, on the one hand increase the air quality monitoring. PM2.5 major cities will also be an important indicator as the weather forecast, remind the public concern for the environment. This design is based on the 51 computers PM2.5 monitoring system on the environment in th
5、e PM2。5 concentration time monitoring, early warning。 This design STC89C52RC microcontroller to control the core, Sharp GP2Y1010AU0F sensor to collect dust in the air situation, LCD1602 display shows the current air concentration of dust and display the preset alarm threshold size, the keys can set
6、the system dust alarm threshold, the buzzer alarm module can alarm when the ambient PM2。5 concentration exceeds the set value. System works: collected by the sensor in the air PM2.5 PM2。5 concentration, and then converted to a digital signal through ADC0832 for STC89C52RC microcontroller reads, afte
7、r the system conversion, realtime display of the current PM2。5 concentration, and then set value, if less than the set value, the system remains; if it exceeds the set value, the system will alarm to alert the PM2。5 concentration exceeded。 The system circuit is simple, stable, highly integrated, eas
8、y to debug, high precision, has some practical value.Key words:Alarm; Dust concentration; GP2Y1010AU0F; PM2.5iii佳木斯大学信息电子技术学院13佳木斯大学信息电子技术学院目录摘要iAbstractii第1章 绪论11。1 课题研究背景11。2 课题研究的目的和意义21.3 课题的主要内容2第2章 设计方案论证42。1 题目解析42。2 方案论证与设计42。2。1 控制部分的方案选择42。2.2 显示部分的方案选择52.2.3 传感器模块的方案选择52.2.4 模数转化模块的方案选择52
9、.3 系统方案论证6第3章 硬件电路设计73。1 单片机最小系统73。2 ADC0832模数转化模块93.3 液晶屏显示模块103。4 夏普PM2。5传感器123。5 蜂鸣器143。6 按键电路143。7 污染级别提醒电路和程序下载电路143。8 总体原理图15第4章 软件部分设计174.1 系统流程设计174.2 ADC0832模数转化部分设计18第5章 仿真部分205。1 PWM驱动205。2 Keil的应用205.3 Protel 99se的应用225.4 Proteus的应用23结论25致谢26参考文献27附录1 系统原理图29附录2 元器件清单30附录3 程序清单31附录4 外文参考
10、资料翻译(原文、译文)3751佳木斯大学信息电子技术学院第1章 绪论1.1 课题研究背景21世纪的今天,科学技术的发展日新月异,科学技术的进步的同时也带动了测量技术的发展,现代控制设备不同于以前,我们已经进入了高速发展的信息时代,测量技术是当今社会的主流,广泛地深入到应用工程的各个领域。随着我国经济的发展,人民的生活质量的提高,人们对环境的问题及健康的问题日益重视,空气的状况也越来越受到关注。空气质量的好坏反映了空气污染的程度,它是依据空气中污染物浓度的高低来判断的,来自固定和流动污染源的人为污染物排放大小是影响空气质量的最主要因素之一。空气质量检测种类包括装修污染,作业现场所有有害物质检测,
11、食堂油烟检测,锅炉大气和工业窑炉检测及工厂排放的工业废弃检测等。目前在工业生产当中排放好多的有害工业气体,这些气体对环境的污染是越来越严重,而这些气体的泄露也严重的威胁到了许多操作人员的生命.因此设计一种能够有效的检测到当地的环境污染的实时数据,也可以有效的遏制这些有害气体泄露的事故的发生.因为空气质量的恶化,阴霾天气现象出现增多,危害现象加重.中国不少地区把阴霾天气现象并入雾一起作为灾害性天气预警预报。统称为“雾霾天气。雾霾主要由PM2。51、PM10、PM0.1以及重金属镍砷铬铅等颗粒组成。在空气动力学和环境气象学中,颗粒物是按直径大小来分类的,粒径小于100微米的称为TSP(TotalS
12、uspendedParticle)2,即总悬浮物颗粒;粒径小于10微米的称为PM10(PM为ParticulateMatter缩写),即可吸入颗粒物;粒径小于2。5微米的称为PM2.5,即可入肺颗粒物,它的直径仅相当于人的头发丝粗细的1/20。虽然PM2。5只是地球大气成分中含量很少的组分,但它与较粗的大气颗粒物相比,粒径小,富含大量的有毒、有害物质且在大气中的停留时间长、输送距离远,因而对人体健康和大气环境质量影响更大。世界卫生组织发布的报告显示,无论是发达国家还是发展中国家,目前大多数城市和农村人口均遭受到颗粒物对健康的影响。因此,对PM2.5的监测与治理便显得越来越重要。1.2 课题研究
13、的目的和意义众所周知,在日益发展的21世纪,人们对于环境的要求越来越高.不论在国内还是国外,都需要极佳的环境来提高生活指数。比如在国内,导致环境因素急剧下降的有以下几点:大气污染问题、水环境污染问题、垃圾处理问题、水土流失问题等严重问题。但大气污染问题迫在眉睫,由于我国目前还处于粗放型经济模式,多地为了追求经济效益,不顾对环境造成的严重影响,直接往空气中排放,使得国内出现严重雾霭天气。这不仅给人们带来心理上严重影响,而且对人体也带来严重的病痛影响.在大气污染中,表现最为突出的而且被提上日程的就是PM2。5。研究表明,PM2。5日平均浓度增加,会导致人类出现各种无法想象的严重后果。首先,表现最明
14、显就是医院的呼吸道门诊量增长迅速3,导致医疗资源跟不上增长速度,严重的还会引起纠纷。其次,上班一族,会在长期的雾霭中工作,心理会由于过度的压抑,导致患上抑郁症等精神疾病,一系列不可控疾病随即而来,严重到可能导致社会动荡。随着国内经济的迅猛发展,工业化4水平的越来越高,小康水平的基本普及,人们也日益追求高质量生活。自然,对于环境的要求也是有着苛刻的要求。在现今,人们使用的监控设备精度越来越高,空气里PM2。5浓度受到了实时关注,在各种严重后果面前,人们都希望有一个干净、舒适的环境供大家生存。所以也都纷纷加入到保护环境的队伍中来,一方面发挥监督作用,从源头控制污染源,另一方面实时监控环境因素,做到
15、合理安排日程。同时也有更多的人加入到植物造林中来,亲自动手参与环境建设,美化环境,创造出一个赖以生存的环境。1.3 课题的主要内容本课题是基于单片机所设计的空气质量检测系统,由STC89C52单片机最小系统、GP2Y1010AU粉尘传感器、ADC0832模数转换器模块、LCD1602液晶模块、蜂鸣器报警模块和按键等模块组成,主要的设计内容如下: (1)使用GP2Y1010AU传感器对粉尘颗粒的采集; (2)使用ADC0832作为采集样品的模拟量转化为数据量; (3)采用STC89C52单片机作为控制核心,计算其颗粒物浓度; (4)LCD1602作为显示屏显示所有测量值。通过按键设置报警值,作为
16、检测量最高值,当测量值高于报警值,蜂鸣器报警。基于单片机的空气质量检测系统既可以在工业生产实时检测到工业目标气体的浓度,也还可以完成数据的采集、分析、显示、存储、报警等任务,其具有操作简便,检测快速和便携性强的特点,适用于家庭和社区的医疗健康的保健,能够实时的知道空气中粉尘颗粒的含量。第2章 设计方案论证2。1 题目解析本设计要求制作一个基于51系列单片机5的PM2。5实时监控系统,它由控制器模块、ADC0832模数转化模块、按键模块、蜂鸣器报警模块、LCD显示模块、PM2.5传感器模块电路等组成.当传感器采集到空气中PM2.5浓度值后,然后经过ADC0832芯片,对GP2Y1010AU0F传
17、感器获取到的模拟信号转化成数字信号,然后经过单片机系统运算处理,在液晶LCD1602显示屏上面显示出实时测量到的PM2。5的浓度值,根据题目的要求,确定系统框图如2-1所示。图21 系统组成基本框图2.2 方案论证与设计2.2。1 控制部分的方案选择 (1)采用凌阳16位单片机,内存大,处理速度快,编程容易,而且其自身自带音频处理系统,可以不使用外部器件就可以实现语音报时功能,在一定程度上可以说大大节约成本比较适合此类规模系统.但是相对来说价格还是比较高,很多资源都被浪费掉了,不适合本设计,所以不采用该方案. (2)用STC89C52单片机,虽然他没有凌阳16位单片机的功能强大,但是他可以满足
18、该程序编程的需要以及各个功能部分也都可以实现,真正做到资源充分利用,而且在价格方面也比16位单片机的成本少好几倍,所以本设计选用该方案。2.2。2 显示部分的方案选择 (1)采用点阵式显示屏显示,点阵式显示屏是由八行八列的发光二极管组成,比较适合各种信息可以从左到右移动,也可以从右到左显示,给消费者一个真正的视觉冲击,但是对于这种显示方式似乎显得太浪费,对于单片机的扫描速度也是一个考验,且价格也相对较高,所以也不用此种作为显示。 (2)采用液晶屏显示方式显示。液晶显示美观性强,一目了然,可以运用菜单项来方便操作,液晶显示屏的显示功能强大,显示的信息量大,清晰可见。而且LCD1602价格低廉,控
19、制程序简单,稳定性高,使用寿命长等有点。所以,选择液晶屏显示方案。2.2.3 传感器模块的方案选择 (1)采用炜盛传感器,该传感器灵敏度高,但是体积大,不方便安装;电流大,不能使本设计做到低功耗.该方案不适合采用本设计。 (2)采用夏普PM2.5传感器,该传感器使用方便,体积小,方便安装,正常使用时,电流小,可做到电流的低功耗,有利于信号的储量过程,能够实现空气的流通,且利于AD转换,所以本设计采用该方案.2。2.4 模数转化模块的方案选择 (1)采用ADC0809模数转化芯片,ADC0809是一款8位逐次逼近式A/D模数转换器.他是通过地址锁存译码后的信号,选通ADC0809内部相对应的地址
20、通道,然后进行A/D信号转换,其一个芯焊接的脚位过多,占用的单片机IO口过多,而且目前仅在单片机初学应用设计中较片就可以有8个通道,功能非常强大,但是本设计只需要一个通道即可,再加上其需要为常见,而且价格也比较昂贵,不适合大规模应用。(2) 采用ADC0832模数转化芯片,ADC0832 是一款双通道8位分辨率A/D转换芯片。其封装为DIP-8或者SOC-8,方便焊接,调试.同时,其和单片机接口只有四条线,大大减少单片机的IO口损耗。同时由于其性价比高,广受消费者追捧。通过学习ADC0832我们就可以理解A/D转化芯片的工作原理.同时ADC0832模数转化芯片在本设计中,完全满足各种性能,自然
21、优先考虑ADC0832模数转化芯片,所以本设计采用该方案。2。3 系统方案论证 综上各方案所述,对此次设计的方案选定为:采用STC89C52RC作为主控制系统;以夏普GP2Y1010AU0F为核心传感器;以ADC0832作为系统模数转化模块;采用LCD1602作为系统的显示电路;采用蜂鸣器电路作为报警电路等,以完成PM2。5监控系统的设计。第3章 硬件电路设计3.1 单片机最小系统STC89C52RC6为宏晶推出的新一代高速、低功耗、超强抗干扰的单片机,指令代码完全兼容传统的8051单片机。单片机为DIP-40直插芯片,有四组I/O口P0,P1,P2,P3,每一条I/O线都能独立地作输出或输入
22、,单片机引脚图如31所示. 图3-1 单片机引脚图 该增强型8051单片机具有可任意选择的6时钟/机器周期和12时钟/两种机器周期,因为其内核依旧是51系列内核所以指令代码完全兼容传统8051系列。工作电压为5.5V3.3V(5V单片机)/3。8V2.0V(3V单片机),工作频率正常范围040MHz,相当于普通8051的080MHz,实际工作频率可达48MHz,用户应用程序空间为8K字节,片上集成512字节RAM,通用I/O口32个,复位后为P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。ISP(在系统可编程)/
23、IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3。1)直接下载用户程序,数秒即可完成一片,具有EEPROM功能,具有看门狗功能,共3个16位定时器/计数器。定时器T0、T1、T2,外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由外部中断低电平触发中断方式唤醒,通用异步串行口(UART),还可用定时器软件实现多个UART,工作温度范围:40+85(工业级)/075(商业级),PDIP封装.STC89C52RC单片机的省电工作模式有几种。掉电模式:典型功耗0.1A,可由外部中断唤醒,中断返回后,继续执行原程序。空闲模式:典型功
24、耗2mA正常工作模式:典型功耗4Ma7mA掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备.单片机的最小系统7就是让单片机能正常工作并发挥其功能时所必须的组成部分,也可理解为是用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、时钟电路、复位电路、输入、输出设备等,在单片机中复位电路是必须存在的电路,就像我们开启一台电脑一样,需要打开开机键.在单片机系统中,复位电路是非常关键的,当程序跑飞(运行不正常)或死机(停止运行)时,就需要进行复位,与复位电路同样至关重要的就是时钟电路,时钟电路就像是整个机器的心脏一样,控制着单片机的节奏。单片机
25、最小系统框图如32所示. 图32 单片机最小系统 (1)时钟电路时钟电路分为内部时钟方式和外部时钟方式8。外部时钟电路使用现成的外部振荡器产生脉冲信号,用于多片单片机同时工作以便于它们之间的同步。所以这个设计采用内部时钟方式的电路,单片机内部有一个用于构成振荡器的反相放大器,输入端引脚为XTAL1,输出端为XTAL2。两引脚接一个石英晶体和两个电容,每个电容的另一端再接到地构成一个稳定的自己振荡器.时钟电路用于给单片机工作时产生所需要的时钟信号,而时序所研究的是指令执行中各信号之间的工作关系,单片机的本事就如一个复杂的同步时序电路,为了确保同步工作方式的实现,电路就应该在唯一的时钟信号控制下进
26、行严格的工作.电容C1、C2的大小会影响振荡器频率的高低、振荡器的稳定性和起振的快速性,晶体振荡频率的范围通常是在1.2到12MHz,频率越高,系统的时针频率越高,单片机的运行速度也就越快.因为CPU完成一个基本操作所需要的时间称为机器周期,一个机器周期包括12个时钟周期,所以选12MHz方便计算初值.单片机的内部电路正是在时钟电路的控制下,严格地按时序指令进行工作。 (2)复位电路复位电路就是使单片机的CPU或系统中其他部件处于某一确定的初始状态时,并从这一状态开始工作时,除了进入系统的正常的初始化之外,而由于程序运行错误或操作错误使当前系统正处于死锁状态时,为摆脱此困境,也需要按复位电路进
27、行系统的重新启动。复位电路有上电自动复位和按键复位两种方式9。按键手动电平复位是通过RST端经电阻与电源VCC接通来实现。这个设计使用按键电平复位电路,当按键时电容器被短路放电,+5V直接加到RST上面达到高电平,进行复位.按键松开后电源开始对电容器充电,此时充电电流在电阻上,形成高电平送到RST,仍然是“复位状态”;稍后充电结束,电流降为0,电阻上的电压也将为0,RST降为低电平,开始正常工作.单片机的复位电路和时钟电路电路图分别如33和3-4所示。 图33 时钟电路图 图34 复位电路图3.2 ADC0832模数转化模块 ADC0832是8位分辨率A/D模数转换芯片10,其最高分辨高达25
28、6级;双通道A/D转换;输入输出电平与TTL/CMOS相兼容;5V电源供电时输入电压在0-5V之间;一般功耗仅为15mW;其封装为DIP8或者SOC-8,方便焊接,调试.商用级芯片温度范围为0C-+70C,工业级芯片温度范围为40C+85C,可以适应大部分场合的模数转换要求。同时,其和单片机接口只有四条线,大大减少单片机的IO口损耗.通过学习ADC0832,我们就可以理解A/D转化芯片的工作原理,可以帮助我们深入学习单片机其他相关知识,其电路设计图如图35所示. 图35 A/D电路设计图 芯片接口说明:片选使能,低电平芯片使能。CH0:模拟输入通道0,或作为IN+/使用。CH1:模拟输入通道1
29、,或作为IN+/-使用。GND:芯片参考0电位(地).DI:数据信号输入,选择通道控制。DO:数据信号输出,转换数据输出.CLK:芯片时钟输入。Vcc/REF:电源输入及参考电压输入(复用).3。3 液晶屏显示模块 LCD显示器11分为字段显示和字符显示两种.其字段显示和数码管显示原理类型,还是通过取模,然后单片机向LCD发送数组,方可实现显示要求,这个就无法真正体现出LCD液晶屏的优势点。所以在本设计中,采用自带字库的LCD显示模式,与传统的LED数码管显示器件相比,控制程序方便,显示内容切换方便,而且不需要外加驱动电路。同时LCD1602显示内容功能也非常强大,每行可以同时显示16个汉字,
30、一共可显示2行,其电路设计如3-6所示。 图3-6 LCD管脚图 LCD1602主要技术参数:显示容量为162个字符;芯片工作电压为4。55。5V;工作电流为2。0mA(5。0V);模块最佳工作电压为5.0V;字符尺寸为2.954。35(WH)mm。LCD1602采用标准的14脚接口,其中:第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:V0为液晶显示器对比度调整端。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平
31、时可以读信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线. 第1516脚:空脚。 1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平) 指令1:清显示,指令码01H,光标复位到地址00H位置 指令2:光标复位,光标返回到地址00H 指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移S:屏幕上所有文字是否左移或者右移.高电平表示有效,低电平则无效 指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平
32、表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁 指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标 指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符 指令7:字符发生器RAM地址设置 指令8:DDRAM地址设置 指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙. 指令10:写数据 指令11:读数据 3。4 夏普PM2
33、。5传感器灰尘传感器GP2Y1010AU是由日本夏普公司生产的,可以测试环境中的PM2。5值,其模块体积小,方便安装,可以适用于各类空气净化器中,作为检测环境因素传感器12。其灵敏度极高,可以用来测试直径在8um以上的烟尘、花粉、粉尘等微小颗粒。造成空气雾霭等肉眼看不见的颗粒,该传感器都可以方便的测试到。同时,其自带气流发生器,可以吸收外部空气,是自身达到一个清洁的效果,大大增加其使用寿命和灵敏度。而且在其内部自带LED显示灯,减少外界干扰,大大增加灵敏度,准确想外界传递实时空气质量.夏普灰尘传感器外形图如图37所示. 图37 夏普灰尘传感器GP2Y1010AU0F 应用领域: (1)空气净化
34、器和空气清新机; (2)空调; (3)空气质量监控仪; (4)空调等相关产品。 主要参数:灵敏度:0。5V/(0。1mg/m3);输出电压:0.9V(TYP);消耗电流:11mA;工作温度:1065;存储温度:-2080。粉尘器内部电路图如图38所。图38 粉尘器内部电路图根据粉尘传感器GP2Y1010AU的规划书中对管脚的描述,对应的管脚如图39所示。图3-9 粉尘传感器管脚图故粉尘传感器的电路设计如图310所示。图3-10 粉尘传感器的电路设计图粉尘传感器GP2Y1010AU通过对空气粉尘颗粒浓度进行检测测算,然后输出模拟电压。故在仿真原理图中,我们用滑动变阻器来模拟粉尘传感器发回的模拟信
35、号(电压值).ADC0832电路设计仿真图如图3-11所示。图3-11 ADC0832电路设计图3.5 蜂鸣器本设计中采用有源蜂鸣器,相对无源蜂鸣器而言,控制方式简单,无源蜂鸣器需要一个交变的信号去驱动,实现内部磁场变化。而有源蜂鸣器只需要在蜂鸣器上加直流,就可以驱动蜂鸣器正常工作。而且2者在价格上相差无几,所以会优先选择有源蜂鸣器。有源蜂鸣器对电压的适应范围广,寿命长,可以用个调整有源蜂鸣器的电压值,来控制蜂鸣器的声音响度,所以设计起来很方便。本设计的报警电路的控制输出使用了单片机的P1。7口,设计图如图312所示. 图312 报警电路图3。6 按键电路 本次设计的按键电路使用了单片机的P1
36、。3,P1。4,P1.5三个口,通过按键可以对报警值进行设置。设计图如图313所示. 图313 按键电路图3.7 污染级别提醒电路和程序下载电路 根据不同的浓度范围提醒当前污染级别的电路,采用了蓝、绿,黄,红四个LED灯,使用了单片机的P3.0,P3。1,P3。2,P3.4口来实现提醒功能,污染级别显示电路以及单片机的程序下载电路设计图分别如图314和3-15所示。 图314 级别显示电路 图3-15 程序下载电路图3.8 总体原理图 本设计包括信号采集模块、信号处理模块、显示模块、报警模块和按键设置模块组成,以此来完成信号的采集、处理、传输、报警等功能,系统原理图如3-16所示。图316 系
37、统原理图当PM2.5传感器采集到空气中PM2。5浓度值后,通过5号引脚将输出的模拟量经过ADC0832模数转换器将模拟信号转换成数字信号传送给单片机13号引脚,然后单片机对此信号进行运算处理,单片机P2口与LCD显示屏相连并在液晶LCD1602显示器上面显示计算出实时测量到的PM2。5的浓度值,然后通过与SCT89C52单片机8号引脚相连的蜂蜜报警器进行设定值进行比较,通信部分采用ISP程序下载器与单片机10。11号引脚相连来实现单片机与上位机之间的数据交换.如果小于设定值,系统保持;如果超过设定值,系统将报警,提醒PM2.5浓度超标。当蓝色灯亮时表示空气质量优,当绿色灯亮时表示空气质量良好,
38、当黄色灯亮时表示空气质量中等,当红色灯亮时表示空气质量差。第4章 软件部分设计4。1 系统流程设计软件主程序部分主要是ADC模数转化,获取PM2。5粉尘传感器发回来的数据,然后经过数据转化处理后,放入数组里面.然后再和预设值对比,如果实际值大于预设值,那么就会驱动声报警电路.当然,预设值大小可以根据需要进行修改。而且,在正常仿真过程中,会实时显示环境中PM2.5实时浓度,系统流程图如图4-1所示。图4-1 系统流程图4。2 ADC0832模数转化部分设计单片机对ADC0832的控制原理:单片机和ADC0832之间的接线,分别是CS、CLK、DO、DI总共4条线.但是在使用过程当中,单片机和AD
39、C0832只有进行单向通信,所以在此过程当中,要将DI/DO并联在一起使用.当ADC0832芯片禁用时,此时要控制CS输入端应为高电平,CLK和DO/DI的电平不做要求.当要进行A/D转换开始时,必须先将 CS使能端置于低电平并且保持低电平直至转换完全结束为止.此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1个时钟脉冲的下沉之前DI端必须是高电平,表示起始信号。在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能,其功能表见下图4-2所示。图4-2 ADC0832功能表如表所示,当此2位数据为“1”、“0”
40、时,只对CH0进行单通道转换。当2位数据为“1、“1时,只对CH1进行单通道转换。当2位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端 IN-进行输入。当2位数据为“0、“1”时,将CH0作为负输入端IN-,CH1作为正输入端IN+进行输入。到第3个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉 DO端输出下一位数据。直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。也正是从此位开始输出下一个相反字节的数据,即从第11个
41、字节的下沉输出DATA0。随后输出8位数据,到第19个脉冲时数据输出完成,也标志着一次A/D转换的结束。最后将CS置高电平禁用芯片,直接将转换后的数据进行处理即可。ADC0832 数据读取程序流程图如图4-3所示.图43 数据程序流程图第5章 仿真部分5.1 PWM驱动 粉尘传感器的LED指示灯需要由PWM13驱动,所以系统板需要提供一路PWM来驱动LED灯,以便粉尘传感器可以正常工作,仿真示意图如图5-1所示.图5-1 PWM仿真波形监控图5。2 Keil的应用Keil uvision2 C51软件是目前功能最强大的单片机c语言集成开发环境。我们通过图解的方式来Keil C51软件的使用教程
42、,学习最简单的,如何输入源程序 新建工程 工程详细设置 源程序编译得到目标代码文件。它在功能、结构、可读、可维护性上都有明显的优势,我们很容易学习,它的多数语句生成后的汇编代码我们都很容易理解。它提供了包括C编译器、宏汇编、连接、库管理和一个功能强大的仿真调试程序,完整的发展规划,通过一个集成开发环境(uVision)将这些元素结合在一起。掌握使用51系列单片机的软件是非常必要的,如果你想使用C语言编程,那么Keil14是一种不错的选择,即使没有C语言的基础和汇编语言编程的集成环境,学会使用这个功能强大的仿真软件调试工具,也会收到事半功倍的效果,Keil_c软件的界面图如图5-2所示。图52
43、Keil主界面Keil软件建立工程过程:第一步: 双击Keil uVision4的桌面快捷方式,启动Keil集成开发开发软件.第二步:新建文本编辑窗.单击工具栏【文件】【新建】,即可在项目窗口打开一个新的文本编辑窗Text1。第三步:编写程序。在新的Text1文本编辑窗中编写程序。第四步:保存程序。保存文件时必须加上文件的扩展名,“。c”.第五步:建立Keil工程。单击工具栏上的【工程】【新建工程】,出现保存对话框,一般情况下使工程文件名称和源文件名称相同即可,输入名称后保存,将出现”选择设备”对话框,在对话框中选择CPU的型号。第六步:选择CPU型号。为工程选择CPU型号,本新建工程选择了A
44、TMEL公司的AT89C52单片机.第七步:将编号的程序加到工程中。在选择好CPU型号后,点击确定按钮返回主界面,此时可见到工程管理窗中出现“目标1”,点击“目标1”前面的“”号展开下一层的“源组1文件夹,此时的新工程是空的,“源组1”文件夹中什么文件都没有,必须把刚才输入的源程序加入到该工程当中。右击工程管理窗中的“源组1”,出现下拉菜单,点击“增加文件到组源组1命令,将出现添加文件对话框。在添加文件对话框中,找到要添加到工程中的源程序文件.第八步:编译程序,生成hex文件。5。3 Protel 99se的应用Protel 99SE是PORTEL公司在80年代推出的一款软件软件。Protel
45、 99SE是在Windows9X/2000/NT操作系统下的EDA设计的软件,采用设计库管理模式,可以用于网设计,具有非常强的数据交换能力及3D模拟功能,是32位的设计软件,也可以完成电路原理图的设计、印制电路板设计及可编程逻辑器件设计等工作,可以设计32个信号层,16个电源-地层和16个机加工层。Protel 99se软件的界面图如图5-3所示。图5-3 Protel 99se主界面Protel 99SE软件还有有以下的特点: (1)可以生成30多种格式的电气连接网络表; (2)具有强大的全局性编辑功能; (3)可以在原理图中选择一级器件,同时在PCB中同样的器件也将被选中; (4)同时运行原理图和PCB,在已打开的原理图和PCB之间允许双向交叉查找元器件、引脚、网络; (5)既可以进行正向的注释元器件的标号(由原理图到PCB),还可以进行反向的注释(由PCB到原理图),目的是为了保持电气原理图和PCB在设计上保持一致; (6)满足国际化设计的要求(包括国标标题栏的输出,GB4728国标库); (7)方便数模混合的仿真; (8)支持使用CUPL语言和用原理图设计PLD,生成标准的JED下载文件; (9)PCB还可设计32个信号层、16个电源-地层以及16个机加工层; (10)非常强