【《基于STC89C51单片机的智能温度检测控制系统设计》10000字(论文)】_第1页
【《基于STC89C51单片机的智能温度检测控制系统设计》10000字(论文)】_第2页
【《基于STC89C51单片机的智能温度检测控制系统设计》10000字(论文)】_第3页
【《基于STC89C51单片机的智能温度检测控制系统设计》10000字(论文)】_第4页
【《基于STC89C51单片机的智能温度检测控制系统设计》10000字(论文)】_第5页
已阅读5页,还剩18页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

3-基于STC89C51单片机的智能温度检测控制系统设计摘要本文设计中采用STC89C51单片机进行温控系统的开发。该温度控制系统主要用于室内温度控制,系统主要有四部分组成,分别为温度检测部分、温度控制部分、显示部分、温度设定。其中温度检测部分主要采用了温度传感器对室内温度进行采集,并将信号传输至单片机,温度传感器型号为DS18B20;系统显示部分使用了LCD1602液晶显示屏,能够将温度显示的精度控制在0.1℃。温度设定部分主要通过设定按钮进行室内温度的设定,温度控制部分主要通过检测部分采集的温度与设定的温度之间的对比,通过两者之间的差值进行继电器的闭合与断开进行控制,实现室内的温度调节。在本文中温度控制的程序采用C语言设计,系统整体结构较为简洁,功能满足设计需求,成本较低能够在实际生活中进行使用。关键词:STC89C51单片机;温度传感器;DS18B20;LCD显示器;报警电路目录第一章温度控制系统方案设计 -4-1.1方案制定 -4-1.2功能的介绍 -4-第二章主要模块简介 -5-2.1控制模块 -5-2.2显示模块 -6-2.3温度传感器模块 -7-2.4调节模块介绍 -9-2.5报警模块介绍 -10-第三章系统硬件设计 -11-3.1单片机电路设计 -11-3.2DS18B20温度传感器电路设计 -11-3.3显示电路设计 -12-3.4按键电路设计 -12-3.5报警电路设计 -13-第四章系统软件设计 -14-4.1编程环境介绍 -14-4.2家用烟雾报警器运行总流程 -14-4.3DS18B20程序设计 -15-4.3.1DS18B20传感器操作流程 -15-4.3.2DS18B20传感器的指令表 -16-4.3.3DS18B20传感器的初始化时序 -17-4.3.4DS18B20传感器的读写时序 -18-4.3.5DS18B20获取温度程序流程图 -19-4.4显示程序设计 -21-4.3按键程序设计 -21-第五章实物制作及调试 -22-5.1硬件调试 -22-5.2软件的调试 -22-5.3注意事项 -23-第六章结论 1参考文献 3第一章温度控制系统方案设计1.1方案制定本次方案主要采用单片机进行控制。环境温度的检测主要依靠DS18B20型温度传感器。方案的整体流程为:温度传感器采集环境中的温度,并将采集的温度值与设定标准值进行对比,根据对比结果控制电阻丝加热的时间,进而实现对室内温度的控制,使其保持恒定。方案整体设计如下图所示:单单片机温度采集按键电路电源显示电路温控电路图2.1方案设计框图1.2功能的介绍本文设计的温控方案主要对象是室内环境,所要达到的实验目的是实现室内的恒温控制。当室内环境温度低于设定值时,温控系统能够通过继电器的闭合与断开来控制加热模块,对环境进行升温。当环境温度高于设定值时,将停止加热模块的工作。本文温控系统的特点如下:温度传感器通过检测环境温度,并将采集的信号以数字信号传输至控制单元即单片机。系统显示通过LCD1602液晶显示屏实现,系统温度的显示精度为0.1℃。系统的温度设定值通过按钮进行设置。系统的温度调节装置通过继电器进行执行。

第二章主要模块简介2.1控制模块STC89C51单片机是深圳宏晶公司生产的低功耗,高性能CMOS8位单片机,片内含有8kb的可系统编程的Flash只读程序存储器,器件采用宏晶科技公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。在单芯片上,拥有灵巧的8位CPU和在系统可编程的Flash,使得STC89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C51具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C51可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。整个系统中,微控制器是烟雾报警系统中最重要的组件之一。它用于控制A/D转换器芯片的操作并处理传感器收集的信息,以及打开声音和警告灯电路以及液晶显示电路。通常设计所选的单片机不仅需要价格便宜,重量轻,而且还必须满足高精度,耐用性和强大的抗干扰能力的要求。经过对系统的分析,STC89C51单片机被选为该温度控制设计中使用的单片机。STC89C51微控制器是深圳宏晶科技开发的带有片上闪存的AT89S5x系列微控制器之一。[9]与AT89C5x系列相比,STC89C51显着提高了时钟频率和工作速度。该单片机的片上体系结构包括:8位CPU,4个8位可编程并行I/O端口,4KB快闪ROM,128BRAM,1个全双工收发器,USART串行端口,2个可编程端口16位定时器/计数器和中断系统,具有5个中断源和5个中断向量,以及26个特殊功能寄存器,3位程序编码键和1组看门狗定时器。STC89C51单片机的引脚分布如图2.1所示。其引脚的特定功能是:端口P0是双向I/O开放端口。当扩展外部存储器和I/O接口芯片时,端口P0是8位本地时分复用端口,数据总线为低电平。端口P1,P2,P3是半方向和上拉电阻I/O端口,其中端口P1可以完全提供给用户。RST端口是复位信号输入,仅有效为高;当EA为1时,如果是芯片,则如果芯片上的PC值不超过0FFFH,则微控制器将读取芯片上4KB程序存储器的程序代码。如果PC值超过0FFFH,它将读取60KB片外程序存储器中的程序存储器;当CPU访问外部程序和数据存储器时,ALE提供一个低8位低地址锁存信号。端口P0发送的低8位地址固定在片外地址引脚中。PSEN端子接受片外程序存储器闪烁信号读取,并且仅在信号为低电平时才生效。XTAL1和XTAL2端子分别是片上晶体振荡器的输入和输出。XTAL1也是外部时钟发生器的输入。当连接外部时钟源时,当外部时钟振荡器信号施加到XTAL1端子时,XTAL2端子处于浮动状态。图2.12.2显示模块液晶显示器作为一个有一定的彩色像素构成的平面超薄显示设备而言,其自身显示器功耗低、体积小、显示信息清晰而一直被广泛地应用于小型的便携式电子设备,液晶屏是通过电力刺激了液晶分子,液晶屏后的背光灯管与刺激后的液晶分子构成了我们看到的画面。1602LCD显示屏是在常用的HD44780液晶芯片的基础上改良而成的,可以显示32个字节,1602液晶最为一个显示字母、数字等简易的液晶显示模块可以说是物美价廉,但是在图形上的显示效果就很差,因为1602液晶主要由5*7的点阵字符组成,显示的字符就会有一定的间距。图2-2液晶显示模块图1602显示屏是标准的16个引脚接口,如下表所示。

表2-11602液晶引脚说明编号符号引脚说明编号符号引脚说明1GND电源地9D2数据2VDD电源正极10D3数据3V1液晶显示偏压信号11D4数据4RA数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第一脚:GND作为模块的接地电源由5V电源供电。第二脚:VDD是正极电源,作为背光版的电源,同样由5V电源供电。第三脚:V1主要负责液晶显示屏对比度的调整,电源对液晶屏对比度强弱启主要的影响作用,若想将液晶屏的对比度调至最弱,可以将液晶屏接正电源,可以通过接地来增加对比度,使其增至对比度最大量,10k的电位器接入电路中,我们就可以通过调节电位器来清除对比度过高而产生的鬼影现象。第四脚:RA即寄存器选择,当处于高电平的的时候选择数据寄存器,当处于低电平的时候选择指令寄存器。第五脚:R/W担任读写信号线的职责,在电平高时进行读取操作,在电平低的时候写操作。其中RS与R/W的关系决定了当时状态,例如两端共同为0时能够写入命令或者显示其地址,当两端同为1时可以读忙碌信号,当RS为1,R/W为0时能够将数据录入。第六脚:使能端EN,当使能端处于高电平时读取单片机所反应的信息,当E端由高电平端(1)跳到低电平端(0)时,然后液晶模块开始执行指令。第七至十四脚:D0-D7均是8位双向数据端口,可用于传送命令和数据。第十五脚:背光源正极。第十六脚:背光源负极。2.3温度传感器模块DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个DS18B20可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.0~5.5v;零待机功耗;温度以9或12位二进制数字表示;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20采用3脚TO-92封装或8脚SO或µSOP封装,其其封装形式如图2-3所示。图2-3DS18B20的封装形式DS18B20的64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。温度报警触发器TH和TL,可通过软件写入户报警上下限。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM。高速暂存RAM的结构为8字节的存储器,结构如图2-4所示。图2-4DS18B20的高速暂存RAM的结构头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率,DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值,该字节各位的定义如表2-2所示。表2-2:配置寄存器D7D6D5D4D3D2D1D0TMR1R011111配置寄存器的低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率,“R1R0”为“00”是9位,“01”是10位,“10”是11位,“11”是12位。当DS18B20分辨率越高时,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625℃/LSB形式表示。当符号位s=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位s=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。输出的二进制数的高5位是符号位,最后4位是温度小数点位,中间7位是温度整数位。表2-3是一部分温度值对应的二进制温度数据。表2-3DS18B20输出的温度值温度值二进制输出十六进制输出+125℃000001111101000007D0h+85℃00000101010100000550h+25.0625℃00000001100100010191h+10.125℃000000001010001000A2h+0.5℃00000000000010000008h0℃00000000000000000000h-0.5℃1111111111111000FFF8h-10.125℃1111111101011110FF5Eh-25.0625℃1111111001101111FF6Fh-55℃1111110010010000FC90hDS18B20完成温度转换后,就把测得的温度值与RAM中的TH、TL字节内容作比较。若T>TH或T<TL,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应。因此,可用多只DS18B20同时测量温度并进行报警搜索。在64位ROM的最高有效字节中存储有循环冗余检验码(CRC)。主机ROM的前56位来计算CRC值,并和存入DS18B20的CRC值作比较,以判断主机收到的ROM数据是否正确。2.4调节模块介绍调节模块是由四个按键接地后直接接单片机的I/O口完成的。当按键没有按下时单片机管脚相当于悬空,默认下为高电平,当按键按下时相当于把单片机的管脚直接接地,此时为低电平。程序设计为低电平触发。2.5报警模块介绍报警模块是由一个PNP型的三极管9012驱动的5V蜂鸣器,和一个加一限流电阻的发光二极管组成的。报警时蜂鸣器间歇性报警,发光二极管闪烁。

第三章系统硬件设计3.1单片机电路设计图3-1单片机系统原理图单片机系统是由晶振电路,上电复位、按键复位电路,ISP下载接口和电源指示灯组成。原理图如图3-1所示。由外部晶振和震荡电容组成的晶体振荡器电路连接到单片机的XTAL1和XTAL2引脚。该电路包含两个30pF电容器和一个12MHz晶体振荡器。晶体振荡器X1与引脚18/19并联连接,电容器C1和C2与单片机的引脚18/19串联连接,另一端接地。复位电路连接到单片机的第9RST引脚。该电路由一个10μF电容,一个10KΩ电阻和一个复位按钮组成。连接方法是将电容器C3与复位按钮并联,并将一端连接到电源,另一端与电阻R1连接。将RST引脚连接在一起,并将电阻器R1的另一端与源极接地。此外,最小的单片机系统中的其他EA,ALE,PSEN引脚(其中EA连接到电源的5V正电压)意味着只能调用和读取单片机的内部存储器。ALE引脚和PSEN引脚处于悬空状态,因为未使用这些引脚。上电期间,单片机需要保持复位状态,以避免在上电不稳定,故障甚至电路故障期间执行程序。在电源稳定后不久,RST引脚的电平开始下降,直到低于预设阈值。微控制器释放复位状态并可以开始启动。程序正常运行。3.2DS18B20温度传感器电路设计DS18B20温度传感器是单总线器件与单片机的接口电路采用电源供电方。电源供电方式如图3-2,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。图3-2DS18B20电源供电方式当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时VDD端接地。由于单线制只有一根线,因此发送接口必须是三态的。3.3显示电路设计显示电路主要由LCD1602液晶和RESPACK-8除外显示电路组成,LCD与单片机的连接方法及专用方法如下图所示。液晶显示器的D0-D7引脚顺序连接到单片机的P0.0-P0.7引脚。因为51系列的微控制器的P0端口内部没有上拉电阻,因此,当连接LCD液晶且液晶无法正常工作时,无法输出高电平。因此,必须连接一个电阻器,并将电阻器和端口1的公共端连接至VCC,以实现上拉并使LCD正常工作。电路如图3-3所示:图3-3显示电路3.4按键电路设计按键电路是用来实现调节设定报警温度的上下限和查看上下报警温度的功能。电路原理图如图3-4所示。图3-4按键电路原理图3.5报警电路设计报警电路是在测量温度大于上限或小于下限时提供报警功能的电路。该电路是由一个蜂鸣器和一个红色的发光二极管组成,具体的电路如图3-5所示。图3-5报警电路原理图第四章系统软件设计4.1编程环境介绍KeilC51是由KeilSoftware开发的编程软件,该软件可用于开发许多不同的制造商,一系列不同的单芯片计算机模型,Keil提供了完整的开发计划。模拟调试器。集成开发环境(μVision)包含以下部分,是用于许多编程语言(例如C语言和程序集)的集成开发平台。[11]与以前的版本相比,本设计中使用KeilμVision4添加了源代码,功能导航,模板编辑和搜索功能增强。此外,μVision4还提供了配置向导功能,可以加快启动代码并生成配置文件。设计软件编程中使用的编程语言是C语言,C语言可以很好的编译微控制器的程序,并且易于实现模块化,并且易于阅读,方便用于嵌套设计,并且还具有带有类似汇编的位操作功能的硬件控制指令。当使用汇编语言(低级语言)和高级语言进行微控制器编程时,高级语言主要使用C语言,汇编语言比C更易于控制和使用,并且在微控制器的开发中得到了改进。越来越多的处理器使用C语言,C语言匹配的可移植性高于汇编语言,当微处理器的内部结构不清楚时,语言转换器可以非常快速地使用编译器C语言。C语言具有良好的可移植性,清晰的逻辑和灵活的用法。作为一种编译语言,它还具有高级语言功能和汇编语言,并且在嵌入式开发领域具有明显的优势。C语言主导着自上而下的结构化编程方法。对于使用C语言编程的微控制器,无需深入了解微控制器的硬件结构,编译器本身就可以依靠顶级设计方法合理而有效地分配RAM和ROM。4.2运行总流程本设计采用模块化编程方法,有利于系统维护和功能程序扩展。通过调用子例程来执行系统中每个模块的功能。本设计中使用的程序是:主程序,温度采集子程序,声光报警子程序,液晶屏幕子程序,LCD液,按钮子程序等。主要过程如下图所示,启动程序后,必须先启动系统,然后温度传感器收集外部信息,处理和分析数据,然后由液晶显示模块显示该值,并评估该值是否超过设置的阈值,如果超过该值,则将启动声音和灯光警报子程序,如果没有,将返回继续数据采集。主程序流程如图4.1所示:开始初始化开始初始化温度采集采集数据≥设定值声光报警报警子程序结束液晶屏显示图4.1温度控制系统程序设计总流程4.3DS18B20程序设计4.3.1DS18B20传感器操作流程根据DS18B20的通讯协议,主机(单片机)控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位操作;复位成功后发送一条ROM指令;最后发送RAM指令;这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500μs,然后释放,当DS18B20收到信号后等待16~60μs左右,后发出60~240μs的存在低脉冲,主CPU收到此信号表示复位成功。DS18B20的操作流程如图4-2所示。图4-2DS18B20的操作流程4.3.2DS18B20传感器的指令表DS18B20传感器的操作指令如表4-1所示。传感器复位后向传感器写相应的命令才能实现相应的功能。

表4-1DS18B20的指令表指令指令代码功能读ROM0x33读DS1820温度传感器ROM中的编码(即64位地址)符合ROM0x55发出此命令之后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS1820使之作出响应,为下一步对该DS1820的读写作准备。搜索ROM0xF0用于确定挂接在同一总线上DS1820的个数和识别64位ROM地址。为操作各器件作好准备。跳过ROM0xCC忽略64位ROM地址,直接向DS1820发温度变换命令。适用于单片工作。告警搜索命令0xEC执行后只有温度超过设定值上限或下限的片子才做出响应。温度变换0x44启动DS1820进行温度转换,12位转换时最长为750ms(9位为93.75ms)。结果存入内部9字节RAM中。读暂存器0xBE读内部RAM中9字节的内容写暂存器0x4E发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。复制暂存器0x48将RAM中第3、4字节的内容复制到EEPROM中。重调EEPROM0xB8将EEPROM中内容恢复到RAM中的第3、4字节。读供电方式0xB4读DS1820的供电模式。寄生供电时DS1820发送“0”,外接电源供电DS1820发送“1”。4.3.3DS18B20传感器的初始化时序DS18B20传感器为单总线结构器件,在读写操作之前,传感器芯片应先进性复位操作也就是初始化操作。DS18B20的初始化时序如图4-3所示。首先控制器拉高数据总线,接着控制器给数据总线一低电平,延时480μs,控制器拉高数据总线,等待传感器给数据线一个60-240μs的低电平,接着上拉电阻将数据线拉高,这样才初始化完成。图4-3DS18B20初始化时序4.3.4DS18B20传感器的读写时序1.写时序DS18B20传感器的读写操作是在传感器初始化后进行的。每次操作只能读写一位。当主机把数据线从高电平拉至低电平,产生写时序。有两种类型的写时序:写“0”时序,写“1”时序。所有的时序必须有最短60μs的持续期,在各个写周期之间必须有最短1μs的恢复期。在数据总线由高电平变为低电平之后,DS18B20在15μs至60μs的时间间隙对总线采样,如果为“1”则向DS18B20写“1”,如果为“0”则向DS18B20写“0”。如图3-2的上半部分。对于主机产生写“1”时序时,数据线必须先被拉至低电平,然后被释放,使数据线在写时序开始之后15μs内拉至高电平。对于主机产生写“1”时序时,数据线必须先被拉至低电平,且至少保持低电平60μs。2.读时序在数据总线由高电平变为低电平之后,数据线至少应保持低电平1μs,来自DS18B20的输出的数据在下降沿15μs后有效,所以在数据线保持低电平1μs之后,主机将数据线拉高,等待来自DS18B20的数据变化,在下降沿15μs之后便可开始读取DS18B20的输出数据。整个读时序必须有最短60μs的持续期。如图3-2的下半部分。读时序结束后数据线由上拉电阻拉至高电平。图4-4DS18B20传感器的读写时序4.3.5DS18B20获取温度程序流程图DS18B20的读字节,写字节,获取温度的程序流程图如图4-5所示。图4-5DS18B20程序流程图4.4显示程序设计液晶屏显示驱动处于系统的最后端,属于人机交互界面,本次设计采用的液晶屏精确调整度是0.1MHZ。本设计系统开始时,系统赋予它一个初始值,如果有按键按下,初始值将会被清除,同时进行按键处理,液晶屏显示所相应的数值;若没有按键按下,液晶屏则直接显示原有的初始值。本设计用液晶屏显示,是因为液晶屏简单易设计,能够更加直观的观察与操作收音机。如图4-6为液晶屏显示控制子程序流程图。LCD1602液晶模块内部的控制器一共有11条控制指令,它的读写操作、屏幕和光标的操作都是通过指令编程来完成的,程序框架图如下:开始延时1ms开始延时1ms清显示延时10ms进入模式设置延时40ms显示开关控制功能设置初使化结束延时1ms图4-6LCD1602程序图4.3按键程序设计按键是用来设定上下限报警温度的。具体的程序流程图如图4-7所示。图4-7按键程序流程图第五章实物制作及调试首先检查系统的电路连接是否具有短路,然后按照硬件路设计检查电路连接是否有误,之后检查电路连接点是否连接牢固,是否有虚焊,最后对各路元器件进行检查,是否出现元件型号不匹配。5.1硬件调试硬件调试前首先要对硬件中的电路进行检查,此时的检查主要核对电路中的元件接入方向进行检查,避免元件接入方向错误造成上电后烧坏器件的情况。经过检查各模块芯片接入正确后,进行系统硬件商店,然后对电路进行检查确定电路是否正常,然后检查芯片是否正常。如果出现芯片温度异常需要立即断电,检测芯片问题。当一切正常后,借助检测仪表例如万用表、示波器等设备对主要模块的元器件进行电压测量,观察芯片的输出电压,然后对各个模块的芯片端口的波形进行检测,从而判断各个模块芯片的状态是否异常。当使用示波器进行波形检测时,如果出现了纹波,则需要在相应位置上焊接一个退耦电容,保证波形的正常。在对电路的电源进行检测时,需要对有源晶振进行重点检测,检查晶振的输出波形频率是否为8M赫兹。经过检测晶振正常工作后,然后按下复位键,将单片机状态置于复位,然后对单片机的各个接入引脚进行检测,并将测量结果与使用手册上的引脚状态进行对比,确定是否出现异常,当所有测量的结果显示正常时,就可以进行使用了。5.2软件的调试软件调试是基于硬件基础之上,软件程序的编辑设计是根据硬件电路中各个模块的接口位置、技术参数进行的。因此软件调试的第一步骤首先检查程序编写的接口是否匹配一致。之后对程序自身的结构进行检查,避免出现较为低级的编写错误。当检查完毕之后,通过编译软件将编写的软件程序下载至单片机中,然后检查软件与硬件之间的工作状态是否按照方案设计中的流程进行。1、测试环境本文系统的所使用的工况为:室内温度28°,室内面积大小为20m2测量时所使用的测量仪表有常用万用表,温度计。2、测试方法将系统置于正常工作状态,使用温度计测量室内的温度,每隔十分钟对温度数值进行记录。与此同时每隔十分钟将温控系统显示的温度进行记录。3、测试结果系统进行温度设定时,能够设定范围为0-40°,系统所能够标定的温度差值在1度范围内,系统对温度差值作出调节的时间在15秒内。静态调节误差在0.5度内。4、通过现场测量分析,在使用过程中可以对系统作出以下调整:第一,可以通过增加温度检测模块中的温度传感器个数提高温度采集数值的精度,通过多个传感器测量值的平均值正确反映环境中的温度。第二,在对环境温度进行调节时,除了设置加热电阻丝加热之外,可以添加风机等设备,对室内进行充分的对流,使加热更加均匀。将温控系统用于实际工况中,经过相应的测试和数据记录,得出以下结论:系统的温度检测模块精度能够达到0.03℃。当增加温度传感器后,不同传感器之间检测的温度数据差值较小。通过使用温度计进行复测比较之后,可以发现,增加温度传感器的数量可以进一步提升温度控制系统的精度,更好的调节室内的温度。5.3注意事项(1)在对温度显示模块进行调试时,发现LCD1602液晶显示屏会出现显示异常,经过排查发现异常原因是因为模块的连接处接触不良引起的。经过进一步的缩小范围,接触不良主要出现在线路接头处和芯片的引脚连接处。在检测时采用万用表逐步缩小排查范围,能够准确的确定接触不良的位置。对于线头连接处重新接线,芯片引脚接触不良处采用重现插拔焊接方法解决。(2)在进行系统程序调试时,出现程序运行不稳定,通过使用检测仪表对硬件进行检测完后,发现硬件状态正常,之后对程序的编写进行检查,发现程序的编写未出现错误。最后与老师进行交流,老师指出对单片机进行检查,最终发现由于程序中使用片内存储器,所以单片机的EA管

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论