




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机和LCD的电子防潮箱看板设计摘要本设计为电子防潮箱的看板设计,电子防潮箱看板的主要作用为检测防潮箱内的温湿度以及设置数值。它主要由温湿度传感器,单片机以及显示屏组合而成,同时附带一些其他的功能。防潮箱看板将传感器采集到的温湿度通过单片机处理产生相应的温湿度数值,而后将所得的数值输入到显示屏中进行显示以便用户直观的观察当前环境的温度以及湿度。如果需要可以在看板的基础上加上报警模块,以及功能按键模块。使用功能按键设置温湿度上下限,当温度或者湿度超过最值时数据异常,此时报警模块会开始工作,放出警报。本文首先介绍电子防潮箱的功能,以及在各个领域中的应用,接着列出最初的两个设计方案,经过对比选择其中之一并进行电路设计;之后是介绍硬件电路,先说明整体框架,其次开始介绍各个模块,主要为各个模块的电路以及所用到的元器件的引脚及功能;再之后是软件设计部分,先介绍总体,然后通过流程图与表格具体介绍模块功能效果并列出系统全局变量和函数功能表;最后放上实物图以及功能效果的照片。关键词:单片机温湿度传感器液晶显示多功能按键目录TOC\o"4-4"\h\z\t"标题1,2,标题2,3,标题3,4,标题,1"1、系统概述 52、方案对比 62.1方案一 62.1方案二 62.1方案总结 73、硬件设计 83.1硬件框架 83.2单元电路 83.2.1晶振电路 83.2.2温湿度采集电路 83.2.3温湿度显示电路 93.2.4多功能按键电路 103.2.5报警控制电路 113.2.6MCU电路 123.3器件清单 134、软件设计 144.1软件流程图 154.2温湿度采集 174.3温湿度显示 174.4多功能按键电路 174.5系统全局变量和函数功能表 205、调试 215.1硬件调试 215.2软件调试 215.3实际效果 22结束语 23参考文献 24
1、系统概述潮湿的空气容易使数码产品内部的部件收到腐蚀,为了保护好这些数码产品不受潮湿的影响,最好的办法是买一只专用的防潮箱。[1]电子防潮箱作为一种储物设备,虽然一是次性投入虽然较贵,不过依照器材价值和稳定保存依然十分值得。[2]它能够实现内部温湿度恒定,除了存放电子产品外,在医疗,军事等领域也有着广泛的应用。防潮箱看板作为防潮箱的核心部件,能够实现温湿度的显示、显示、温湿度设定等基本功能;但随着用户需求的进一步提升,客户对显示方式、智能化提升等不断提出了新的需求[3]。本毕业设计在了解电子防潮箱基本功能的基础上,防潮箱看板进行设计,实现温湿度液晶显示。将所设计的系统应用于现有的防潮箱,完成实验室调试[4]。2、方案对比2.1方案一采用DHT11温度传感器STC89C52STC89C52LCD显示模块DHT11LCD显示模块DHT11晶振电路晶振电路按键模块报警模块按键模块报警模块图2-1方案一 如图2-1所示,方案一采用的是DHT11温度传感器;传感器采集的温湿度经过STC89C52处理产生温湿度数值,然后由温湿度显示模块显示出来;STC89C52芯片内置了ISP(In-SystemProgramming)就是在线编程技术,而且支持ISP接口的引脚和串口的引脚一致,所以STC单片机只需要外接一个串口电路就可以烧录程序;然后可以通过按键模块切换温湿度参数设置,调节温湿度报警上下限;如果数据超出所设置的温湿度上下限,报警模块就会发出异常警告。2.1方案二采用数字式的STH11温湿度传感器报警模块SHT11STM32报警模块SHT11STM32晶振电路USB-TTL通信 TONGXIN1晶振电路USB-TTL通信 TONGXIN1LCD显示模块LCD显示模块按键模块按键模块图2-2方案2框图如图2-2所示,方案二温湿度采集电路的核心器件是SHT11[5]温湿度传感器。STM32接收到传感器采集的温湿度数值由LCD显示模块显示出来;通过USB-TTL通信模块连接电脑传输数据;通过按键模块可以切换温湿度设置参数,调节温湿度报警上下限;如果数据超出按键设置的温湿度上下限,那么报警模块就会发出异常警告。2.1方案总结方案一与方案二的区别主要在于传感器以及集成电路芯片的选择。方案二中采用的STH11传感器本身内部自带校准,同时还自带AD转换电路,无需在外部增加AD转换电路,使得电路构成简单;而方案一STC89C52内置ISP,且支持ISP接口的引脚与串口的引脚一致,所以无需USB-TTL通信模块,只需要外接串口就可以完成通信传输数据,且STC芯片价格比起STM更便宜。相较方案二,利用方案一实现电子防潮箱看板的设计所需成本更低、电路简单,需要搭建的模块也更少,所以本次毕业设计选择用方案一来实现。
3、硬件设计3.1硬件框图整个系统功能由软件程序配合硬件电路共同实现,[6]本次设计的硬件部分设计框图如下,设计分为温湿度采集、显示、报警电路、晶振电路、多功能按键电路等模块。多功能按键电路MCU多功能按键电路MCU温湿度显示电路报警电路 温湿度显示电路报警电路温湿度采集电路温湿度采集电路晶振电路晶振电路图3-1硬件设计整体框图如图3-1所示,本次的电子防潮箱看板设计以单片机芯片作为MCU,使用STC整合其他功能电路。使用晶振电路为CPU提供时钟基准;用温湿度采集电路采集当前环境下的温度和湿度传入单片机,经过处理后将温湿度数值传入显示电路进行显示;用多功能按键设定报警阈值,超出阈值时报警电路发出警报。3.2单元电路3.2.1晶振电路图3-2晶振电路如图3-2所示,C1,C2为电容,X1为11.0592MHZ晶振。为CPU提供时钟基准。使其可以进行定时,延迟等功能。3.2.2温湿度采集电路图3-2温湿度采集电路图3-3DHT11实物图湿度测量具有重要的研究意义和应用价值[13],本次设计由温湿度采集电路提供MCU所需要处理的温湿度数值,如图3-2所示。该电路以DHT11温湿度传感器为核心采集温湿度数值,DHT11传感器实物如图3-3所示。DHT11一共包含四个端口;其中GND为电源端口;VDD为电源正极,VCC为3-5.5V直流电压;DATA端口为串行数据,单总线端口,通过此端口与MCU连接;NC端口空脚。该传感器湿度精度为±5%,温度精度为±2%,可以测量5-95%RH范围的湿度和-20~+50℃范围的温度。3.2.3温湿度显示电路图3-4温湿度显示电路图3-5LCD1602实物图液晶显示器可以通过编程控制显示任何想要显示的内容,包括字符、汉字和图像。[12]温湿度传感器采集的数据经过MCU处理后传输到LCD中显示温湿度数值,可以让用户观察到当前环境的温湿度。显示电路如上图所示。 LCD1602显示屏是字符型液晶,液晶显示模块具有体积小、功耗低、显示内容丰富、超薄轻巧等优点,[7]且控制简单成本较低,所以本次设计使用该显示屏来制作显示电路,LCD实物如图3-5。编号符号引脚说明编号符号引脚说明1VSS电源地9DB2数据2VDD电源正极10DB3数据3V0液晶显示偏压11DB4数据4RS数据/命令选择12DB5数据5RW读/写选择13DB6数据6E使能信号14DB7数据7DB0数据15A背光源正极8DB1数据16K背光源负极 表3-1LCD1602主要引脚功能表如表3-1所示,LCD1602芯片共有16个端口:端口1:VSS为地电源。端口2:VDD接5V正电源。端口3:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高。端口4:RS为寄存器选择脚,高电平时选择数据寄存器、低电平时选择指令寄存器。端口5:RW为读/写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或显示地址;当RS为低电平,R/W为高电平时,可以读忙信号;当RS为高电平,R/W为低电平时,可以写入数据。端口6:E端为使能端,当E端由高电平跳变为低电平时,液晶模块执行命令。端口7~14:D0~D7为8位双向数据线。端口15:背光源正极。端口16:背光源负极。[8]
3.2.4多功能按键电路图3-6多功能按键电路在单片机系统设计应用过程中,一般会选择键盘显示器的同步运用。[10]本设计以多个按键组成多功能按键电路来调节显示屏所呈现的数值,输入模块,采用独立按键模式,每个按键各接一根输入线,彼此相互独立,互不干扰。[9]电路如图3-6所示,在本设计中共采用了3个按键来对数值进行调整,分别为SETUP、UP、DOWN。这三个按键的电路类似,它们一端接地,另一端连接MCU,以SETUP为例,当按下时,由于电路的导通,设置端与GND相连,给MCU提供低电平。按键功能效果SETUP设置选择所要修改的数值UP修改数值所选中数值加一DOWN修改数值所选中数值减一表3-2按键功能表按键名称初始第一次按下第二次按下第三次按下第四次按下SETUPH-LH-HT-LT-HH-L表3-3SETUP具体功能表三个按钮的功能如以上两表所示,UP和DOWN的作用是修改数值,其中UP的作用是“1”即按下UP会使所选中的数值加一,与之相对 DOWN的作用是让所选中的数值减一;SETUP为设置按钮,它的作用是切换需要修改的温湿度报警上下限参数,本设计共有四种参数:H-H为湿度报警上限参数;H-L为湿度报警下限参数;T-H为温度报警上限参数;T-L温度报警下限参数。初始默认的参数为H-H,如有需求可以使用UP或者DOWN对H-H的数值进行修改;在第一次按下SETUP按钮后会切换到H-H;第二次按下会切换到T-L;第三次按下切换到T-H;第四次按下就完成了一个循环,重新回到H-L。3.2.5报警控制电路图3-7声音报警电路图3-8蜂鸣器实物图是否有异常数据BEEP端口三极管蜂鸣器无高电平不导通不响有低电平导通响表3-4报警电路功能图 系统中蜂鸣器报警电路主要由PNP型三极管组成,低电平有效。[11]如果传感器收集的温湿度数值超过之前按键电路所设置的阈值,BEEP给一个低电平有效,使三极管导通,蜂鸣器报警,蜂鸣器为电路的主要器件,图3-8为蜂鸣器的实物图。报警电路的功能如表3-4所示,如果MCU处理的温湿度数值超过或不足按键电路设置的温湿度上下限就会给出异常报警信号,此时BEEP端收到信号为低电平,蜂鸣器开始工作,发出叫声,起报警作用。若未检测到异常数据,BEEP端为高电平,蜂鸣器不工作,不发出报警信号。3.2.6MCU电路图3-12STC89C52RC单片机引脚图图3-13STC89C52RC实物图本次设计使用成本较低的STC89C52芯片作为设计核心,实物如图3-13。在此次设计中需要实现温湿度采集、温湿度显示、多功能按键、阈值设置、报警等功能。如图3-12所示,STC89C52共有40个引脚,在此次设计中用到了其中22个引脚,其中P0.0~P0.7连接显示屏D0~D7端口,P2.5~P2.7分别连接显示屏的RS,RW以及E,以此实现液晶显示功能;P1.0连接着温湿度采集电路的P1.0端口,实现温湿度采集功能;P2.0、P2.1、P2.2连接着多功能按键电路的三个按钮,实现阈值设置功能;P3.7连接着报警控制电路,实现报警功能。表3-5说明了MCU主要引脚及其功能.编号网络标号端口配置功能说明1DB0P0.0数据2DB1P0.1数据3DB2P0.2数据4DB3P0.3数据5DB4P0.4数据6DB5P0.5数据7DB6P0.6数据8DB7P0.7数据9RSP2.5数据/命令选择10RWP2.6读/写选择11EP2.7使能信号12SETUOP2.0温湿度上下限参数切换13UPP2.1加‘1’键14DOWNP2.2减‘1’键15XTAL1XTAL1延迟16XTAL2XTAL2延迟17BEEPP3.7报警18DHT11T2/P1.0温湿度采集19P4.6P4.6内部存储20RSTRST复位21GNDGND电源接地22VCCVCC电源正极表3-5STC89C52单片机引脚连接功能说明表3.3主要器件清单编号器件描述标号数量1STC89C52RC集成电路U112DHT11集成电路U213LCD1602集成电路LCD1411.0592M49S晶振晶体振荡器X11510uF100V电容电解电容C11630pF瓷片电容瓷片电容C2,C31、271k1%1/4W金属膜电阻电阻R1,R2,R3,R4,R5,R6,R7,R8,R9,R10,R11,R121286*6立式开关开关SETUP,UP,DOWN393V有源蜂鸣器蜂鸣器BUZ111010K-1033296W电位器电位器RV1111Q8550三极管Q11表3-6硬件设计主要器件清单
4、软件设计4.1软件流程图本设计软件部分通过keil5软件实现电子防潮箱看板的程序设计。软件软件模块温湿度显示模块报警模块参数设定温湿度显示模块报警模块参数设定图4-1软件流程图如图4-1所示,软件主要包括三个模块:温湿度显示模块、参数设定、报警模块。1、温湿度显示模块,该模块中包括温湿度的采集和显示。2、参数设定,该模块负责通过按键对显示的数值进行修改设定。3、报警模块,当显示的温湿度数值超过设定的阈值发出警报下面给出具体程序运行流程图: 开始开始开始开始初始化初始化温湿度数值异常温湿度采集温湿度数值异常温湿度采集NONO不发送报警信号不发送报警信号温湿度是否正确温湿度是否正确NONOYESYES发送报警信号发送报警信号YESYES温湿度显示结束温湿度显示结束图4-2主程序流程图图4-3报警流程图开始开始显示界面显示界面NONO显示界面不变按下按键显示界面不变按下按键YESYES更新显示界面更新显示界面结束结束4-4参数设定流程图图4-2为主程序流程图,主要为温湿度的采集和显示,开始运行后先对显示屏进行初始化,采集完温湿度后进行判定如果温湿度大于0则向显示屏输出结果,否则重新采集数据。图4-3为报警流程图,开始后判断温湿度数值是否异常,异常则发送报警信号,否则不发送。图4-4位参数设定流程图,开始后显示界面,判断是否有按下按键,未按下则显示界面不变;否则改变参数并更新显示界面。温湿度采集开始4.2温湿度采集温湿度采集开始采集数据采集数据转换采集数据为温湿度数值转换采集数据为温湿度数值保存至全局变量保存至全局变量结束结束图4-5温湿度采集流程图图4-5为采集流程,首先采集数据,之后将采集到的温湿度转换成相应的温湿度数值并分别保存到温湿度的全局变量中,温度将保存到wendu,湿度将保存到shidu。温湿度采集代码:voiddht11_receive(){ucharrh,rl,th,tl,revise;dht11_start();if(data==0){while(data==0);dh_delay_us(40);rh=dh_recbyte();//湿度高位rl=dh_recbyte();//湿度低位th=dh_recbyte();//温度高位tl=dh_recbyte();//温度低位revise=dh_recbyte();//获取数据dht11_delay_us(25);if((rh+rl+th+tl)==revise){shidu=rh;wendu=th;} }}4.3温湿度显示开始开始温湿度温湿度显示结束结束图4-7温湿度显示流程图如图4-7所示,MCU在温湿度显示时初始界面为温湿度显示以及所设置的温湿度报警上下限显示。温湿度显示部分核心代码: voidLcdShowStr(unsignedcharx,unsignedchary,unsignedchar*str){LcdSetCursor(x,y);//设置起始位置,x,y为起始坐标while(*str!='\0')//写入字符串数据,直到检测到结束符{LcdWriteDat(*str++);}}4.4多功能按键按键功能效果SETUP设置选择需要修改的数值UP修改数值所选中数值加一DOWN修改数值所选中数值减一表4-1按键功能表如表4-1所示,一共有3个按键,一个设置按键和两个数值修改按键。SETUP用来选择需要修改的温湿度报警阈值;Up和Down对阈值报警值、温湿度等数值做出调整,UP是将所选数值加一,DOWN是将所选数值减一。按键名称初始第一次按下第二次按下第三次按下第四次按下SETUPH-LH-HT-LT-HH-L 表4-2SETUP具体功能表三个按钮的功能如以上两表所示,UP和DOWN的作用是修改数值,其中UP的作用是“+1”即按下UP会使所选中的数值加一,与之相对 DOWN的作用是让所选中的数值减一;SETUP为设置按键,它的作用是切换需要修改的温湿度报警上下限参数,本设计共有四种参数:H-H为湿度报警上限参数;H-L为湿度报警下限参数;T-H为温度报警上限参数;T-L温度报警下限参数。初始默认的参数为H-H,如有需求可以使用UP或者DOWN对H-H的数值进行修改;在第一次按下SETUP按钮后会切换到H-H;第二次按下会切换到T-L;第三次按下切换到T-H;第四次按下就完成了一个循环,重新回到H-L。由于每个状态的程序相似,就以湿度设置模式为例介绍。
开始开始NO按下NO按下SETUP保持原设置参数保持原设置参数YESYES切换报警上下限参数切换报警上下限参数NONONONO保持原参数按下DOWN保持原参数按下DOWN按下UPYESYESYESYES湿度设置值减一湿度设置值加一湿度设置值减一湿度设置值加一保存改变后的数值保存改变后的数值结束结束图4-8湿度设置流程图如图4-8所示,不按下SETUP保存原显示界面不变,按下按键SETUP则切换选中的报警上下限参数;之后若按下按键UP则对数值加一,若按下DOWN按键则对数值进行减一,在进行加一或减一之后会将修改后的湿度上下限作为阈值,并对修改后的数值进行保存。若既没有按下按键UP也没有按下按键DOWN则不会对选中的上下限参数进行任何修改。湿度设置模式部分核心代码:if(change==0)//change为当前选择的上下限参数 { if(up==0) { DHT11_delay_ms(2); if(up==0) { shidul++; } } if(down==0) { DHT11_delay_ms(2); if(down==0) { shidul--; } } }电路设置的阈值数值会被保存在EEPROM中,即使电路断电依旧会保存按键修改的数据,在电子防潮箱通电启动后会自动读取保存在EEPROM中的数据,从而实现断电保护功能。4.5系统全局变量和函数功能表系统主要全局变量表:全局变量名称功能rec_dat温湿度showset温湿度设置wendu湿度数值shidu温度数值shidul湿度报警数值下限shiduh湿度报警数值上限wendul温度报警数值下限wenduh温度报警数值上限change选中的报警上下限参数 表4-3系统主要全局变量表主要函数功能表:函数名称功能lcdshowsfr显示屏显示DHT11_receive温湿度采集Sector_Erase扇区擦除EEPROM_READ读取EEPROMEEPROM_WRITE存储至EEPROM 表4-4主要函数功能表5、调试5.1硬件调试电子防潮箱看板的正反面实物图如图5-1,图5-2所示。图5-1电子防潮箱看板正面图5-2电子防潮箱看板反面5.2软件调试本次毕业设计采用keil5作为开发软件,开发步骤为:编写、测试、下载运行。设计中使用STC89C52,只需外接串口电路就可以进行烧录,使用USB串口线连接PC与电路进行程序烧录。图5-2软件开发调试图5-4USB串口线图5-3程序烧录5.3实际效果 如图5-3所示,通电后电子防潮箱看板显示当前温湿度以及所设置的温湿度报警阈值,第一排H为当前湿度,T为当前环境温度。第二排HL为设置的湿度报警参数下限;HH为设置的湿度报警参数上限;TL为温度报警参数下限;TH为温度报警参数上限。当前温湿度超出阈值则蜂鸣器发出警报。图5-4则显示了修改湿度报警上限和下限后的结果。图5-3温湿度采集界面图5-4修改湿度报警上下限后
结束语温湿度检测模块采用DHT11温湿度传感器,为单片机采集环境温湿度;报警模块以蜂鸣器为核心,当数据异常时发出警报,可以让用户观测到异常;显示模块使用LCD1602,作为字符型液晶他可以更方便的显示出数值以及字母方便用户观察;多功能按键实现了在多个参数之间的切换以及数值的修改。本次毕业设计中,我对STC89C52有了一定的了解后,开始慢慢实现温湿度采集、温湿度显示等一些功能,并在不断地程序调试,电路修改的过程中渐渐完成了电子防潮箱的看板设计。在设计的过程中,我发现了自身许多的不足,首先是软件的使用,程序的编写,其次是对于元件的了解,最后还有动手操作的能力都有所欠缺。最初我的想法是使用altiumdesigner绘制原理图以及完成pcb封装,但由于时间紧迫已经软件的不熟悉,改用了ProteusProfessional8.8仿真软件,因为仿真软件只需搭建电路,之后将完成编译的程序导入仿真图。通过仿
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省金科大联考2025届高三3月质量检测数学试卷
- 多发伤疑难病例护理讨论
- 呼吸心跳骤停护理个案
- 办公室礼仪培训
- 单元七酒店安全管理(公共安全管理)
- 手外科患者的疼痛管理
- 侗族文化介绍
- 陕西省咸阳市2024-2025学年高三下学期高考模拟检测(二)化学试题(含答案)
- 截瘫病人的并发症护理
- 中国压缩机零部件行业发展状况及需求潜力预测报告2025-2030年
- 广东创新实验室建设计划书
- 四年级下册数学运算定律简便计算练习100题及答案
- 《数据中心液冷系统技术规程》
- 足浴技师沟通细节培训课件
- 输液器生产过程质量控制培训
- 咖啡师初级理论知识复习题及答案
- 《统计分析与SPSS的应用(第7版)》课件全套 第1-12章 SPSS统计分析软件概述
- 《疯狂动物城》全本台词中英文对照
- 教科版小学科学六年级下册《认识星座》教学设计
- 《质量方针与目标》课件
- 幼儿教师一日活动各环节站位
评论
0/150
提交评论