基于单片机的水平角度仪系统设计_第1页
基于单片机的水平角度仪系统设计_第2页
基于单片机的水平角度仪系统设计_第3页
基于单片机的水平角度仪系统设计_第4页
基于单片机的水平角度仪系统设计_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

本科论文目录摘要 IAbstract II引言 11控制系统设计 31.1系统方案设计 31.2系统工作原理 42硬件设计 62.1单片机 62.1.1单片机最小系统 62.1.2STC89C52单片机的性能 72.2角度采集电路 82.2.1ADXL345传感器的工作原理 92.2.2ADXL345传感器倾角测量的原理 92.2.3ADXL345寄存器的介绍 122.2.4ADXL345传感器的通信设计 122.3温湿度采集电路 132.4ATK-HC05蓝牙串口 142.5LCD液晶显示器 142.6蜂鸣器报警电路 152.7按键电路 163软件设计 173.1软件环境 173.2程序设计 19结论 20参考文献 21附录1主要源程序 22附录2原理图 30致谢 31本科论文摘要为了让水平仪成为生产制造过程中的得力助手,实现倾角的高精度、便捷测量的功能。使其拥有多种功能应对检测情况,在生产过程中可以有效地减小生产误差,保证产品质量,落实安全生产等等。本设计提出了一个将软硬件相结合,电路设计简单、稳定的系统设计。利用STC89C52单片机作为微处理器,与ADXL345加速度传感器和DHT11温湿度传感器组合,通过单片机进行控制以及运算并分析处理数据。实现对角度和温湿度的数据采集与检测,通过按键电路用户可自由设定角度报警值,由LCD显示屏显示,也可通过手机显示测量数值。结果表明,基于单片机的水平角度仪系统设计在技术上是可行的,并且整套系统的运行性能和安全性能表现良好。关键词:STC89C52单片机;ADXL345加速度传感器;DHT11温湿度传感器;角度

AbstractInordertomakethelevelbecomearight-handassistantintheproductionandmanufacturingprocess,andrealizethefunctionofhighprecisionandconvenientmeasurementoftheinclinationangle.Ithasavarietyoffunctionstodealwiththetestingsituation.Intheproductionprocess,itcaneffectivelyreduceproductionerrors,ensureproductquality,implementsafetyproductionandsoon.Thisdesignputsforwardasystemdesignwhichcombineshardwareandsoftware,andthecircuitdesignissimpleandstable.STC89C52isusedasmicroprocessor,whichiscombinedwithadxl345three-axisaccelerationsensorandDHT11temperatureandhumiditysensor.Thedataiscontrolled,calculatedandanalyzedbysingle-chipmicrocomputer.Realizethedataacquisitionanddetectionofangleandtemperatureandhumidity.Throughthekeycircuit,theusercanfreelysettheanglealarmvalue,whichcanbedisplayedbyLCDscreenorbymobilephone.Theresultsshowthatthedesignofthesystemisfeasibleintechnology,andtheperformanceofthewholesystemisgood.Keywords:STC89C52singlechipmicrocomputer;ADX345triaxialaccelerationsensor;DHT11temperatureandhumiditysensor;Angle引言在科学技术高速发展的21世纪,现代生产控制设备也日新月异,许多的性能和结构都发生了翻天覆地的变化,为了保证所生产产品的精确度与实用性,测量技术也要不断的进步。由于我们已经进入了信息时代,测量技术更是十分重要。多个领域都需要应用它,例如建筑行业在设计高楼、桥梁时,可能需要连续几个月甚至一年以上的时间对建筑环境在水平面的倾斜度进行测量和处理,因此需要采样进度很高的数字水平仪系统。由此可见,传统的电子水平仪愈来愈不能满足高进度、高精度测量情况的要求。这样看来,设计一种具有高精度和低功耗功能的新式电子水平仪是目前的发展方向。同时,在国家的倡导下,各种行业都在执行精密制造技术,新式电子水平仪这种量具会越来越急需,新式电子水平仪的市场前景会更加广阔。其实早在战国时期,我们伟大的祖先就用其博大精深的智慧发明了早期的水平仪,并应用于房屋建筑等日常生活中。对于水平这一定义的最早提出者就是墨子,也是我国著名的思想家、教育家。他说:“平,同高也”。可以理解为当物体在一样的高度时,这个状态就是水平状态。考古学家甚至认为,可能早在现存的文字记载之前,水平仪就已经实际应用于当时的城市建筑中了。最早的水平仪是运用水的流动性与地球间的吸引力这一特性发明的,当水在一定的地点、一定的时间位于一个相对水平的平面,即为水平。这种测量原理也一直沿用到今天,只不过不断的进行了优化和改进。随着发展人们已经不再利用水来粗略的测取水平,取而代之的是更为精确的气泡式水平仪。它由一个长圆形玻璃管和底座构成,管内充满着酒精或者醚,结构简单轻巧,便于携带。它的工作原理是在管内充满酒精或者醚,并且留一小气泡,因为气泡会永远保持在再高点,就可用其测量倾斜的角度[1]。当系统越灵敏时它的气泡移动范围就会越大。现在的电子式水平仪是经过多次更新后的,应用的范围也比以前广,在多个领域都出现了它们的身影。国内大部分的数显式电子水平仪的主要缺点有:灵敏度差、反应时间慢等,在生产与创新能力方面也相对落后,与国外有很大的差距。结果显而易见,目前国内水平仪技术的研发与应用已经相差了一定的距离。目前主要存在着系统智能化程度不高,缺乏多数据处理能力,无法快速测量等缺点。但是国内也有一些厂家在水平仪的研制与开发方面同国外一样取得了不小的进展。在国内的生产厂家中,台湾是做的比较好的,内地的华虹和海尔也不错。随着角度仪产业愈来愈蒸蒸日上,在这一大环境下,国内拥有种类齐全的厂家,产品向着速度越来越快,功耗越来越低,分辨率越来越高,性能越来越强的方向发展也指日可待。本毕业设计的主要目标为:设计出一种拥有高精度、大角度范围、多功能测量、超预设值报警、手机端实时显示的便携式智能水平仪。该水平仪可以判断角度的倾斜方向,感测当前环境的温度和湿度,即使在恶劣的现场工业环境中,仍能表现出优秀可靠的性能。通过查找相关的文献,在得到各种芯片和元件的资料后,确定设计方案。在硬件设计上,尽量选取可以减少设计时间,并且具有较好性能的元器件。在软件设计上,采用C语言在Keil软件中编程,通过I²C和单总线的通讯方式对数据进行传输。并且编译计算公式,计算测量角度,进行校准技术,减小测量的误差。这些功能的实现都是需要提前学习的,大都通过视频和资料的方式去自主学习,遇到不明白的地方及时请教指导老师。系统设计好后,利用仿真软件进行仿真处理,当所有的功能都成功实现后,就无需更改了。然后按照预先设计的小巧精致的外观做出实物模型,最后用多次实验来验证其合理性及实用性。本文将围绕设计一个完整的系统设计过程展开,具体内容如下:(1)第一章:系统方案设计。确定整体应用方案,并设计出结构框图。(2)第二章:硬件设计。将各模块分别介绍,分析不同器件的性能和选型原因,工作原理等。(3)第三章:软件设计。介绍程序软件的开发环境,程序的设计。1控制系统设计1.1系统方案设计在设计初期,对智能水平仪的设计拟定了两种可行性方案,根据具体情况选择最适合本设计的方案,两种方案如下:方案一:采用STM32单片机作为控制核心。采用MMA7455三轴加速度传感器与单片机共同作为倾角的测量系统,采用DS18B20与DHT11传感器,组成一个拥有复合式传感器的温湿度测量系统,一个用于检测环境温度的变化,另一个用于检测环境湿度的变化。最后交由单片机进行信号的处理。利用五位共阳极数码管以动态扫描的显示方式显示倾斜角度值及温湿度值。方案二:采用ST89C52单片机作为控制核心,将ADXL345加速度传感器和DHT11温湿度传感器结合,共同作为一个测量系统。采集角度倾斜的数据。然后通过I²C通信方式实现单片机和传感器之间的数据传输。对外界环境的温度和湿度的变化进行数据实时采集,以单总线的方式传输。用户还可通过按键电路,自定义设置角度的界限值,然后转换为电信号传递到单片机中,当超过预设报警值时单片机会给三极管发送一个低电平,驱动蜂鸣器报警。通过单片机进行控制以及运算,由微控制器分析处理数据,将模拟信号转化为数字信号,最终将倾角值和温湿度值以数字的形式直接在LCD液晶显示屏上进行显示,并通过HC-05远程数据传输到手机端显示。实现了倾角与温湿度的高精度、多功能、便捷直观的测量与显示。通过将两种方案多方面、多角度的进行对比,发现方案二更能贴近实现倾角与温湿度的高精度、多功能、便捷直观的测量与显示的设计初衷,故本次系统的设计为方案二。相对于方案一,以ST89C52单片机作为控制器,数值不但可以显示,用户还可以自由设置角度的界限值,如果超过就会报警提醒。而且通过已经预先编译好的程序来判断温湿度值可以更加精确的掌握环境中的细微变化。不但如此,ST89C52单片机在资料和性能上较全面,足以满足使用。还有成本低、操作简单的优点。并且ADXL345传感器内部自带的AD转换器,可以直接将模拟信号转换为数字信号,减少了电路的繁琐。在倾角的测量上也有很多优点,它既可以在静态时生成重力加速度还可以在运动或者振动时生成动态加速度,以此保证产品无论在动态还是静态状态时均可以检测任何轴上是否有动作产生,且判断加速度是否超过用户的设置值。相较于方案一中采用的MMA7455加速度传感器更加适合本设计。对于温湿度的采集设计,方案一中采用的复合式传感器,用数字式集成温度传感器DS18B20去单独感测环境温度,测温范围广为:-55~+125℃,温度分辨力高,虽然可以极大地缩小温度误差,但对于正常外部作业环境的温度来说,往往温度只需要一个大概的范围值,此时的温度只是起到一个对作业环境参考的作用。单独采用一个DHT11传感器就足以满足情况,无需在将温度湿度分别检测,这样就简化了系统程序设计,减少不必要的麻烦和浪费。在显示电路的设计上,方案一中数码管显示时五个LED灯会逐个被点亮,缺点就是在显示时会有闪烁,不能达到良好的观察效果。而方案二中的LCD液晶显示屏就可以避免这一缺陷,LCD字符显示的外形非常优美,显示清晰,为了要考虑整体的效果,还是采用LCD液晶显示屏。方案二还额外增加了在实际中更加方便使用的功能,即蜂鸣器报警和手机端监控显示的功能。这也是以往水平仪设计中没有涉及到的。1.2系统工作原理本毕业设计系统由单片机、加速度传感器、温湿度传感器、数码显示屏、蜂鸣器、按键以及电源七部分构成[2]。设计框图如图1.1。图1.1整体设计框图由ADXL345加速度传感器检测用户当前应用环境的三轴水平角度值,根据传感器产生的静态或动态加速度值与单片机内预先写好的程序去计算,判断出是否超过报警值。由DHT11温湿度传感器检测用户当前应用环境的空气温度和湿度变化值,方便用户可以确定当前作业环境温度与湿度的范围值,以此为依据去考虑对作业环境有没有影响,使角度仪不单单只可以测量倾斜角度,丰富了角度仪的应用功能。用户还可通过按键自主设置角度的上下限报警值,根据不同环境、不同要求结合情况自由设置。由传感器检测和用户设置的数据最终都传输到单片机中,由单片机按照预先编译好的程序输出到显示屏上显示,用户如有需要还可通过蓝牙连接将数据传输到手机端,将数据的显示多样化、便捷化。以此为设计原理完成一个智能化水平角度仪的设计。2硬件设计2.1单片机在本设计中需要用到数据的运算与处理功能,还要对数据进行存储[3]。就像是一个电脑需要安装在PC主板上的CPU、RAM、ROM、I/O这些单独的芯片一样。而本设计为了优化电路设计,需要集合这些功能于同一芯片的器件。而单片机可以将这些芯片所有的功能集中在了一个芯片上,并且STC89C52单片机因为其功耗低、性能高、存储量大的特点,所以被选做了系统的控制器,控制所有的核心程序。对传感器检测的各种数据进行信号处理,然后才能执行后续的操作。起到一个类似人体大脑的作用。2.1.1单片机最小系统单片机最小系统包括了STC89C52单片机、时钟电路、和复位电路[4],可以用来控制时间和其他设备,还具备输出设备和通讯的接口等等。单片机最小系统框架如图2.1所示,其引脚接线图如图2.2所示。图2.1单片机最小系统框架图2.2单片机最小系统引脚接线图一般情况下,复位电路是每个单片机系统中必须存在的,如果出现程序卡顿死机的情况,或者是出现其他未知的危害时,就可以通过这个复位电路来重新启动,保护系统的正常工作。本设计为简化电路的设计采用上电复位的方式。与复位电路一样在系统中起到至关重要的作用的就是时钟电路,在系统工作工程中,时钟电路就像是人的心脏一样,把握并控制着整个单片机的节奏[5]。2.1.2STC89C52单片机的性能单片机经常作为一个微控制器被使用在各种智能产品中,以实现多种复杂的功能。相较于51单片机,STC89C52单片机具有更多优质的性能。例如拥有更大的数据存储功能,8K字节的FLASH存储器可以进行更多的计算缓存。521字节的RAM大大提高了反应速度,满足各种设情况和性能的需求。能更好地与其他的设备兼容,32个I/O口可以连接更多的外设和传感器,这是控制与连接外设的基础。实行串行并行接口同时使用的功能能够更加快速的工作。同时还具有掉电保护功能,当系统突然断电时,它可以把数据都存储保护起来,不会造成损失,防止系统崩溃。于此同时,单片机的烧录过程也非常便捷,将TX和RX口连接适配的编译器即可[6]。STC89C52单片机是双列直插式设计,共有40个管脚,其引脚如图2.3所示。其中共设有32个外部端口可供用户使用。图2.3STC89C52引脚图2.2角度采集电路本设计需要设计一种可以测量相对水平倾角的器件,测量的结果必须精确,且测量的范围要尽可能的广泛。因为工业现场是此设计主要的应用环境,所以对于恶劣环境因素的影响必须考虑在内,使其性能得以发挥。ADXL345传感器小巧精致的外观下(如图2.4所示),却拥有超高的性能。可以直接以数字信号输出,且测量误差小,结果准确。因此非常适用在水平仪这种移动的设备中,它既能测量出由于物体运动或震动产生的动态加速度,又可测量出物体静止时的加速度,使测量的应用场景更加齐全。其拥有超高的分辨率,能够检测到低于1.0º的角度倾斜变化。并且可以通过判断三个轴的加速度正负值,检测倾斜的方向。图2.4ADXL345芯片2.2.1ADXL345传感器的工作原理由ADXL345加速度传感器测得数据,它的信号特征为模拟信号。并通过ADX345传感器内部转换为数字信号。但由于输出的数字信号为二进制编码,而加速度为十进制编码,所以需要通过将两者进行转换[7]。最后进行数据的读取,依靠数字滤波器及中断逻辑单元,可以实现这些指令。电路原理图与ADXL345的芯片功能框图分别如图2.5和2.6所示。图2.5ADXl345传感器的电路原理图图2.6ADXL345芯片功能框图2.2.2ADXL345传感器倾角测量的原理为了避免任何外加直流产生的加速度输出信号对计算结果的影响,每次在测量之前让物体在水平面静止一段时间,以保证物体没有产生其他的加速度,影响传感器接收信号的准确性[8]。同时在设计程序时,也要考虑到测量器件自身产生的向心加速度对测量结果准确性的影响。无论何时,保证加速度的大小只与重力相关。ADXL345三轴加速度传感器通过X、Y、Z轴上的重力加速度计算倾斜角度的基本原理如下:通过ADXL345测量出X、Y、Z轴上的重力加速度分量的大小,分别能得到X轴与水平面的夹角α,Y轴与水平面的夹角β,Z轴与水平面的夹角δ。设X轴的加速度分量为Ax,Y轴的加速度分量为Ay,Z轴的加速度分量为Az[9]。对重力进行力学分析可得如下公式[9]:AX=g×cos90°-α=gsinα(2-1)Az=g×cos90°-δ=gsin图2.7水平仪数学测量模型图如图2.7所示,DA代表X轴,DB代表Y轴,DG代表Z轴,DA⊥DB,假设X轴与水平面的夹角为α,Y轴与水平面的夹角为β,X轴与Y轴所组成的平面DAB与水平面的夹角为γ。过D点做水平面的垂线,垂足为点E,那么∠DAE=α。∠DBE=β。过E点做AB的垂线与AB交于C点,由几何知识得∠DCE是平面EAB与水平面的夹角γ,即水平仪要测量并显示的角度。下面推导α、β、γ之间的关系,假设DE=1,由DE⊥AE,DE⊥BE可知:DA=1/sinαDB=1/sinβ因为△ADB为直角三角形,所以:AB²=DA²+DB²将AB代入得:DC=DA×DB/DA²+DB²又因为△DEC为一直角三角形,所以可得:sinγ=DEDC=1将式代入式(2-4)得:sinγ=sin²α+sin²β因为sinα=Ax/g,sinβsinγ=Ay²g²+Ax²由cosγ=Az/gtanγ=Ax²+Ay²Az即可得出被测面与水平面间的夹角γ:γ=arctan(Ax²+Ay²根据图2.7的数学模型,加速度传感器的Z轴与自然坐标系的Z轴间夹为γ。那么同理,加速度传感器的X轴与自然坐标系的X轴的夹角α为:α=arctan(AxAy²+Az²)加速度传感器Y轴与自然坐标系Y轴的夹角β为:β=arctan(AyAx²根据以上结果,在单片机编写出对应程序,利用公式(2-10)的计算方法,算出可以直接显示使用的角度值。在本设计中,为了在使用过程中可以方便用户的读数。Z轴的加速度值无论是正数还是负数时,γ的值取永远保持在0º-90º之间[10]。2.2.3ADXL345寄存器的介绍寄存器是ADX345中至关重要的部分,它的功能主要就是通过单片机控制寄存器的读写来实现的。根据不同情况的需求,运用不同功能的寄存器,实现对不同功能的控制。例如,如果系统中需要识别一些设备,就要用到只读寄存器去识别设备上的标识,以此来区分不同设备。在本毕业设计中,ADX345用于存储数据的寄存器为OFSX、OFSY、OFSZ[11]。经测量得到的不同坐标的偏移量就存储在其中,然后添加到加速度计算的数据中,最后得到的结果就存储下来了。本设计在输出前进行了中断配置,通过设置位值,去使用相应功能,位值为1时就会生成中断,位值为0时就会阻止产生中断。然后读取寄存器内部数据。为了防止各寄存器间在进行读取指令时,系统数据发生变化,所以本设计使寄存器采用多字节的命令去进行读取[12]。寄存器字节格式见表2.1。表2.1寄存器INT_ENABLE字节格式D7D6D5D4DATA_READYSINGLE_TAPDOUBLE_TAPActivityD3D2D1D0InactivityFREE_FALLWatermarkOverrun2.2.4ADXL345传感器的通信设计本次设计DXL345的I2C通信连接方式如图2.8。为了适应I2C通信方式,选择了最恰当的输出数据速率,为12.5Hz。以此避免由于输出数据对通信速度造成的影响,避免通信效果不佳造成通信的失败。图2.8ADXL345的I2C通信连接方式2.3温湿度采集电路本系统中需要满足对环境温度和湿度变化的实时测量,并且保证测量结果准确有效,且具有较高的灵敏度和稳定性。基于以上要求,本设计采用了DHT11温湿度传感器,它同时具备两种采集功能,包括对环境温度的采集和环境湿度的采集。同时对于环境中外部因素的干扰抗击能力也表现很好,测量结果具有一定的稳定性,可以适合于多种场合。这款温度传感器转换时间为75ns,比传统DS1820传感器速度要快很多。检测精度为0.2,也满足本设计的需要,检测的结果采用单总线的数据传输方式到单片机进行控制。由于输出的是数字信号,无需转换,简化了电路的设计。电路图如图2.9所示。图2.9温湿度传感器模块电路图DHT11传感器通过感湿元件和NTC采集温湿度数据,然后经过处理器和存储器对采集到的数据进行处理和存储[13],并且,这些器件是传感器内部自带的,无需在外部添加,可以简化电路设计的复杂度。传感器的外部共有4个引脚。其引脚的功能见表2.2。表2.2DHT11引脚介绍引脚号引脚名称引脚功能1VCC供电电源正极2DATA单总线串型数据线3NC悬空脚4GND接地脚2.4ATK-HC05蓝牙串口

本系统需要通过蓝牙功能,实现与手机设备的连接,而ATK-HC05作为蓝牙串口模块,性能较高,所支持的波特率范围大,并且可以兼容于本设计使用的单片机。极其方便、灵活。本设计中对于数据的传输采用的方式为无线传输。与传统通讯采用定频的方式不同,蓝牙采用的是跳频和时分多址技术[14],既可以传送模拟信号同时也可以传输数字信号。2.5LCD液晶显示器本系统需要一个显示电路用来将经单片机处理后的数值显示出来,并保证显示屏的性能稳定,显示效果良好的要求。在这一基础上选取一种最为合适的显示器。以此为要求,本设计采用了LCD液晶显示器作为显示电路中的显示器件。LCD液晶显示器在显示时可以保持显示屏的色彩和光亮恒定,画质清晰,不会闪烁。并且接口简单,方便实物的连接。相较于传统的显示器还要轻很多,满足本设计简化电路的要求。单片机采集到信号后,经过运算处理,在液晶LCD1602上面显示出计算测量角度与温低湿度值。电路原理如图2.10。图2.10显示电路原理图液晶显示模块的读写功能也是通过预先做好的编程指令完成[15]。读写操作时序如图2.11和2.12所示。图2.11LCD读操作时序图2.12LCD写操作时序2.6蜂鸣器报警电路本系统需要一种报警装置,用来实现超出预设角度界限值就报警的功能。应用蜂鸣器作为报警元件[16]。将蜂鸣器的两个引脚分别连接三极管和地。本设计采用的PNP型三极管,可以起到放大电流和拉高电平的作用。由于本设计的单片机电路较小,不能提供给蜂鸣器所需的电流,所以三极管将电流放大200倍后,就可驱动蜂鸣器进行报警。同时三极管的上拉电阻起到限流的作用,因为单片机上电后引脚默认为高电平,所以为了防止三极管导通,只有我们想让三极管进行操作的时候才会给蜂鸣器一个低电平这样蜂鸣器才会进行报警。电路图如图2.13所示。图2.13蜂鸣器电路原理图2.7按键电路本次设计系统中,对于按键的要求只包括设置角度上限值和下限值,用于使用者自由设置报警值。其中共有三个按键,一个按键起到设置的作用,一个按键起到角度增加的作用,一个按键起到角度减少的作用。数量较少,所以采用了将按键单独接入电路的方式。电路连接如图2.14所示。图2.14按键电路连接图3软件设计3.1软件环境 性能的高低才是一个系统智能化的表现,本系统拥有了稳定的硬件基础,在这个条件下,我才可以利用Keil软件来编译程序功能代码,实现对硬件系统中各元器件的控制。通过软件程序与硬件的搭配,对所得信息的处理与计算,实现本次设计要求的各项功能。与此同时,在编写程序的过程中可能会出现很多的问题,这就需要在编写过程中不断地进行修改。编译界面如图3.1所示。图3.1编译界面在本次程序设计中,经过了不断的调试与功能优化,最终当全部功能都完美实现后,将所编译的代码转换为HEX文件,执行到单片机系统中[17]。下载界面如图3.2。图3.2下载界面3.2程序设计对于本毕业设计而言,整个程序设计中的主函数较为简单,主要的核心内容包括,蓝牙的初始化,DXL345加速度传感器的角度换算程序,LCD液晶显示驱动程序,以及角度报警值的自由设置和超值报警等程序的编译[18]。这些编写的程序在硬件上就体现为,单片机处理模块,蓝牙模块,角度检测模块,温度采集模块,按键模块以及显示模块等。以此提高了程序的可读性和可移植性,便于程序的调试,程序流程图如图3.3所示。图3.3系统软件流程图本系统程序的主要流程为:首先系统上电后,蓝牙串口进行初始化,ADX345传感器和DHT11传感器分别检测当前环境的倾斜角度值与温湿度值,然后有LCD显示屏显示,或者通过蓝牙传输到手机端显示,此时判断用户是否设置按键,如果未按下设置键,传感器继续根据环境实时检测并显示,如果按下设置按键,通过角度加和角度减按键来控制角度的上下限值。程序整个执行过程中系统会根据实时设定自动判断是否超过界限值,并由且由蜂鸣器报警提示。结论经过这几个月的不懈努力,最终如期完成了本次毕业设计,并且达到了预先设计的功能要求。在整个的系统设计过程中,我一直力求可以实现电路简单、成本经济实惠,测量精度高、实用性强、易携带等要求。但是由于一些条件的限制,所设计系统可能仍然存在着某些不足,有待继续改进。本水平仪的设计操作简单,有一定实际利用价值,虽然还存在一些细节问题有待优化,比如可以增加对于温湿度值进行上下限设置,超过预设值时就报警提示。还可以增添通过蓝牙进行手机端超值报警的功能,当用户一定时间没有查看到时,就将测量数值以短信的形式传到用户的手机中,这样对于报警的提示功能,就做到了更加全面的考虑。本次设计过程中除了要积累硬件设计、电路调试的经验。对于电路原理和专业知识也要理解透彻,以避免设计过程中出现设计的电路的布局布线不合理,电路焊接不良,外观制作不够精美,多次返工等问题。经过多次实践操作,做到理论与实际的结合。本设计还由于涉及到了众多的元器件,在本系统中应用的器件型号、芯片类型未必都是最佳的,还有许多的地方需要改进,以后我会继续努力学习电路设计,争取做到设计的产品无可挑剔。我也会多多地请教,多多地倾听别人提的优秀建议。无论做什么事情都坚持不懈,万事开头难,遇到困难勇敢的走下去,就会有不一样的收获与体验。最后希望我所设计的水平仪的可以真正帮助到人们的生活,可以给人们带来前所未有的智能享受。参考文献[1]牛燕雄,郭晓维等.激光水平仪理论模型的建立[J].光电子激光,1996,7(2):94-97[2]张玉华,干安敏,干成江.差动电容式传感器在智能电子水平仪中的应用[J].传感器技术,2002,21(12):52-55[3]夏家和,赵忠,卫育新.微型智能电子水平仪设计[J].测控技术,2005,24(1):69-71[4]贾伯年,俞朴等.传感器技术[M].南京:东南大学出版社,2000.8:25-56[5]马廷锋,耿世钧等.新型单片电容式新型传感器的研制[J].传感器技术.2003,22(6):25-26[6]谭显裕.军用光纤陀螺的发展,关键技术和应用前景[J].现代防御技术,1998,26(4):55-61[7]叶炜,倪永锋,赵为党等.闭环光纤陀螺全数字式信号检测方法研究[J].光子学报,1998,27(4):334-337[8]张维胜.倾角传感器原理与发展[J].传感器世界,2002,8(8):l8-21[9]何希才.传感器及其应用电路[M].北京:电子工业出版社,2001.1:12-36[10]张友德,赵志英,涂时亮.单片微型机原理、应用与试验(第三版)[M].上海:复旦大学出版社,2002.8:56-68[11]谭浩强.C程序设计(第二版)[M].北京:清华大学出版社,1999.8:18-59[12]李维提,郭强.液晶显示应用技术[M].北京:电子工业出版社.2006.20-35[13]彭伟.单片机C语言程序设计实训100例[M].北京:电子工业出版社.2009.1:108-152[14]霍孟友.单片机原理与应用[M].北京:机械工业出版社,2004.1:23-45[15]周润景,徐宏伟,丁莉.单片机电路设计、分析与制作[M].北京:机械工业出版社,2010.8:89-96[16]吴叶兰,王坚,王小艺,连晓峰.微机原理及接口技术[D].北京:机械工业出版社,2009.7[17]康光华.电子技术基础(第四版)[D].北京: 高等教育出版社,2001.7[18]孙立功,刘跃敏.电子技术[D].北京:高等教育出版社,2010.12附录1主要源程序#include<REG52.H>#include<math.h>//Keillibrary#include<stdio.h>//Keillibrary#include<INTRINS.H>#include"common.h"#include"lcd1602.h"#include"uart.h"#include"dht.h"#defineucharunsignedchar#defineuintunsignedintsbitSCL=P1^0;//IIC时钟引脚定义sbitSDA=P1^1;//IIC数据引脚定义sbitKEY1=P3^5;//设置sbitKEY2=P3^6;//加sbitKEY3=P3^7;//减sbitBEEP=P2^0;//蜂鸣器#defineSlaveAddress0xA6//定义器件在IIC总线中的从地址,根据ALTADDRESS地址引脚不同修改//ALTADDRESS引脚接地时地址为0xA6,接电源时地址为0x3AtypedefunsignedcharBYTE;typedefunsignedshortWORD;BYTEBUF[8];//接收数据缓存区ucharge,shi,bai,qian,wan;//显示变量intdis_data;//变量ucharsetnum=0;//设置变量shortAngle_X=0,Angle_Y=0,Angle_Z=0;//角度值floataX,aY,aZ;//加速度值bitfushux=0,fushuy=0,fushuz=0;//负值标志charxdataUART_SEND_BUF[]="X:00.0',Y:00.0',Z:00.0',T:00C,S:00%\r\n";///////////////////报警值charbjx1=-30,bjx2=30;charbjy1=-30,bjy2=30;charbjz1=0,bjz2=90;voiddelay(unsignedintk);voidInit_ADXL345(void);//初始化ADXL345voidconversion(shorttemp_data);voidSingle_Write_ADXL345(ucharREG_Address,ucharREG_data);//单个写入数据ucharSingle_Read_ADXL345(ucharREG_Address);//单个读取内部寄存器数据voidMultiple_Read_ADXL345();//连续的读取内部寄存器数据//voidDelay5us();voidDelay5ms();voidADXL345_Start();voidADXL345_Stop();voidADXL345_SendACK(bitack);bitADXL345_RecvACK();voidADXL345_SendByte(BYTEdat);BYTEADXL345_RecvByte();voidADXL345_ReadPage();voidADXL345_WritePage();////*********************************************************voidconversion(shorttemp_data){wan=temp_data/10000+0x30;temp_data=temp_data%10000;//取余运算qian=temp_data/1000+0x30;temp_data=temp_data%1000;//取余运算bai=temp_data/100+0x30;temp_data=temp_data%100;//取余运算shi=temp_data/10+0x30;temp_data=temp_data%10;//取余运算ge=temp_data+0x30;}/*******************************/voiddelay(unsignedintk){unsignedinti,j;for(i=0;i<k;i++){for(j=0;j<121;j++){;}}}/**************************************延时5微秒(STC90C52RC@12M)不同的工作环境,需要调整此函数,注意时钟过快时需要修改当改用1T的MCU时,请调整此延时函数**************************************/voidDelay5us(){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();}/**************************************延时5毫秒(STC90C52RC@12M)不同的工作环境,需要调整此函数当改用1T的MCU时,请调整此延时函数**************************************/voidDelay5ms(){WORDn=560;while(n--);}/**************************************起始信号**************************************/voidADXL345_Start(){SDA=1;//拉高数据线SCL=1;//拉高时钟线Delay5us();//延时SDA=0;//产生下降沿Delay5us();//延时SCL=0;//拉低时钟线}/**************************************停止信号**************************************/voidADXL345_Stop(){SDA=0;//拉低数据线SCL=1;//拉高时钟线Delay5us();//延时SDA=1;//产生上升沿Delay5us();//延时}/**************************************发送应答信号入口参数:ack(0:ACK1:NAK)**************************************/voidADXL345_SendACK(bitack){SDA=ack;//写应答信号SCL=1;//拉高时钟线Delay5us();//延时SCL=0;//拉低时钟线Delay5us();//延时}/**************************************接收应答信号**************************************/bitADXL345_RecvACK(){SCL=1;//拉高时钟线Delay5us();//延时CY=SDA;//读应答信号SCL=0;//拉低时钟线Delay5us();//延时returnCY;}/**************************************向IIC总线发送一个字节数据**************************************/voidADXL345_SendByte(BYTEdat){BYTEi;for(i=0;i<8;i++)//8位计数器{dat<<=1;//移出数据的最高位SDA=CY;//送数据口SCL=1;//拉高时钟线Delay5us();//延时SCL=0;//拉低时钟线Delay5us();//延时}ADXL345_RecvACK();}/**************************************从IIC总线接收一个字节数据**************************************/BYTEADXL345_RecvByte(){BYTEi;BYTEdat=0;SDA=1;//使能内部上拉,准备读取数据,for(i=0;i<8;i++)//8位计数器{dat<<=1;SCL=1;//拉高时钟线Delay5us();//延时dat|=SDA;//读数据SCL=0;//拉低时钟线Delay5us();//延时}returndat;}//******单字节写入*******************************************voidSingle_Write_ADXL345(ucharREG_Address,ucharREG_data){ADXL345_Start();//起始信号ADXL345_SendByte(SlaveAddress);//发送设备地址+写信号ADXL345_SendByte(REG_Address);//内部寄存器地址,请参考中文pdf22页ADXL345_SendByte(REG_data);//内部寄存器数据,请参考中文pdf22页ADXL345_Stop();//发送停止信号}//********单字节读取*****************************************ucharSingle_Read_ADXL345(ucharREG_Address){ucharREG_data;ADXL345_Start();//起始信号ADXL345_SendByte(SlaveAddress);//发送设备地址+写信号ADXL345_SendByte(REG_Address);//发送存储单元地址,从0开始ADXL345_Start();//起始信号ADXL345_SendByte(SlaveAddress+1);//发送设备地址+读信号REG_data=ADXL345_RecvByte();//读出寄存器数据ADXL345_SendACK(1);ADXL345_Stop();//停止信号returnREG_data;}//*********************************************************////连续读出ADXL345内部加速度数据,地址范围0x32~0x37////*********************************************************voidMultiple_read_ADXL345(void){uchari;ADXL345_Start();//起始信号ADXL345_SendByte(SlaveAddress);//发送设备地址+写信号ADXL345_SendByte(0x32);//发送存储单元地址,从0x32开始ADXL345_Start();//起始信号ADXL345_SendByte(SlaveAddress+1);//发送设备地址+读信号for(i=0;i<6;i++)//连续读取6个地址数据,存储中BUF{BUF[i]=ADXL345_RecvByte();//BUF[0]存储0x32地址中的数据if(i==5){ADXL345_SendACK(1);//最后一个数据需要回NOACK}else{ADXL345_SendACK(0);//回应ACK}}ADXL345_Stop();//停止信号Delay5ms();//*****************************************************************//初始化ADXL345,根据需要请参考pdf进行修改************************voidInit_ADXL345(){Single_Write_ADXL345(0x31,0x0B);//测量范围,正负16g,13位模式Single_Write_ADXL345(0x2C,0x08);//速率设定为12.5参考pdf13页Single_Write_ADXL345(0x2D,0x08);//选择电源模式参考pdf24页Single_Write_ADXL345(0x2E,0x80);//使能DATA_READY中断Single_Write_ADXL345(0x1E,0x00);//X偏移量根据测试传感器的状态写入pdf29页Single_Write_ADXL345(0x1F,0x00);//Y偏移量根据测试传感器的状态写入pdf29页Single_Write_ADXL345(0x20,0x05);//Z偏移量根据测试传感器的状态写入pdf29页}//***********************************************************************//根据x,y,x的加速度计算角度值voidADXL345_Get_Angle(){intdis_data_x,dis_data_y,dis_data_z;bitflag_x=0,flag_y=0,flag_z=0;dis_data_x=(BUF[1]<<8)+BUF[0];//合成数据dis_data_y=(BUF[3]<<8)+BUF[2];//合成数据dis_data_z=(BUF[5]<<8)+BUF[4];//合成数据if(dis_data_x<0){dis_data_x=-dis_data_x;flag_x=1;}if(dis_data_y<0){dis_data_y=-dis_data_y;flag_y=1;}if(dis_data_z<0){dis_data_z=-dis_data_z;flag_z=1;}aX=(float)dis_data_x*3.9;//计算数据和显示,查考ADXL345快速入门第4页aY=(float)dis_data_y*3.9;//计算数据和显示,查考ADXL345快速入门第4页aZ=(float)dis_data_z*3.9;//计算数据和显示,查考ADXL345快速入门第4页Angle_X=atan2(aX,aZ)*(1800/3.14159);//获取X轴角度值,精度0.1度if((flag_z==0&&flag_x==1)||(flag_x==1&&flag_z==1))//在第2,3象限,为负的角度{lcd_write_char(10,0,'-');//显示负号UART_SEND_BUF[2]='-';}else{lcd_write_char(10,0,'');UART_SEND_BUF[2]='';}Angle_Y=atan2(aY,aZ)*(1800/3.14159);//获取Y轴角度值,精度0.1度if((flag_z==0&&flag_y==1)||(flag_y==1&&flag_z==1))//在第2,3象限,为负的角度{lcd_write_char(2,1,'-');//显示负号UART_SEND_BUF[11]='-';}else{lcd_write_char(2,1,'');UART_SEND_BUF[11]='';}Angle_Z=atan2(aZ,aX)*(1800/3.14159);//获取Z轴角度值,精度0.1度if((flag_x==0&&flag_z==1)||(flag_x==1&&flag_z==1))//在第3,4象限,为负的角度{lcd_write_char(10,1,'-');//显示负号UART_SEND_BUF[20]='-';}else{lcd_write_char(10,1,'');UART_SEND_BUF[20]='';}}voiddisplay_set_val(chardat1,chardat2)//显示报警值{if(dat1<0)//下限为负数{lcd_write_char(2,1,'-');dat1=-dat1;}附录2原理图致谢时光荏苒,岁月如梭。转眼间我已经在美丽的沈阳城市学院度过了四个年头,这四年将是我人生中非常之重要的四年。在这四年中,我学到了很多,不仅包括书本上的知识还有很多为人之道,这是我在之前的学习生涯中不曾领略的。而这些都要感谢这四年中我接触到的许许多多的良师益友,他们不仅传授我知识与学问,还指导我的人生观与价值追求,让我的精神与思想达到一个更高的层次。在今后的漫漫人生路上,我可以更加坚定方向,更加有动力去追求成功。我非常感谢沈阳城市学院能给我学习的机会,感谢我的良师益友为我指点迷津,这四年我留下了大学生活中最美好的回忆。在此,我真诚地向我热爱的母校和尊敬的老师们表达深深的谢意。本次的毕业设计是在孟军红老师和张有成老师的悉心指导下完成的。在设计过程中,孟老师和张老师提出了许多很好的建议,修正我的一些不成熟的想法,使本设计应用在实际应用中更加便捷,且在设计过程中及时指出了系统设计中的错误和不妥之处,让我少走很多弯路,节省设计时间。此外,在设计中老师们还向我推荐了许多优秀学者、专家的文章和著作,我可以更加精确的掌握第一手参考资料,为我的设计方案打下坚实的基础。在二位老师的耐心指导下毕业设计最终顺利如期完成。经过这次毕业设计我收获了很多,做设计不仅仅需要对各种原理的熟练掌握还要有谦虚谨慎的态度,这样才能完成好的作品。同时,孟军红老师和张有成老师严谨的治学态度和高深的学术水平让我受益匪浅,他们身上的能量影响着我去发现、发挥自我更大的价值,回馈社会、母校、老师们对我的辛勤培养。谨此向孟军红老师和张有成老师表示衷心的感谢和崇高的敬意。最后感谢学院的领导、老师、同学们在大学四年学习期间对我的关心、支持和帮助。我会铭记你们的教导,做一个优秀、正直对社会有贡献的人。最后衷心祝愿母校的明天更加辉煌!美好!

怎样提高电脑系统运行速度WindowsXP的启动速度比Windows2000要快30%左右,但相对于Windows98仍然要慢了不少,不过,我们可以通过优化设置,来大大提高WindowsXP的启动速度。加快系统启动速度主要有以下方法:尽量减少系统在启动时加载的程序与服务;对磁盘及CPU等硬件进行优化设置;修改默认设置,减少启动等待时间等。这些方法大部分既可减少系统启动的时间,又可以节省系统资源,加快电脑运行速度。1.加快系统启动速度WindowsXP的启动速度比Windows2000要快30%左右,但相对于Windows98仍然要慢了不少,不过,我们可以通过优化设置,来大大提高WindowsXP的启动速度。加快系统启动速度主要有以下方法:尽量减少系统在启动时加载的程序与服务;对磁盘及CPU等硬件进行优化设置;修改默认设置,减少启动等待时间等。这些方法大部分既可减少系统启动的时间,又可以节省系统资源,加快电脑运行速度。(1)MsconfigWindowsXP的启动速度在系统安装初期还比较快,但随着安装的软件不断增多,系统的启动速度会越来越慢,这是由于许多软件把自己加在了启动程序中,这样开机即需运行,大大降低了启动速度,而且也占用了大量的系统资源。对于这样一些程序,我们可以通过系统配置实用程序Msconfig将它们从启动组中排除出去。选择“开始”菜单中的“运行”命令,在“运行”对话框中键入“Msconfig”,回车后会弹出“系统配置实用程序”对话框,选择其中的“启动”选项卡(如图1),该选项卡中列出了系统启动时加载的项目及来源,仔细查看每个项目是否需要自动加载,否则清除项目前的复选框,加载的项目越少,启动的速度就越快。设置完成后需要重新启动方能生效。(2)BootvisBootvis是微软提供的一个启动优化工具,可提高WindowsXP的启动速度。用BootVis提升WindowsXP的启动速度必须按照正确的顺序进行操作,否则将不会起到提速的效果。其正确的操作方法如下:启动Bootvis,从其主窗口(如图2)中选择“工具”菜单下的“选项”命令,在“符号路径”处键入Bootvis的安装路径,如“C:\ProgramFiles\Bootvis”,单击“保存”退出。从“跟踪”菜单中选择“下次引导”命令,会弹出“重复跟踪”对话框,单击“确定”按钮,BootVis将引导WindowsXP重新启动,默认的重新启动时间是10秒。系统重新启动后,BootVis自动开始运行并记录启动进程,生成启动进程的相关BIN文件,并把这个记录文件自动命名为TRACE_BOOT_1_1。程序记录完启动进程文件后,会重新启动BootVis主界面,在“文件”菜单中选择刚刚生成的启动进程文件“TRACE_BOOT_1_1”。窗口中即会出现“CPU>使用”、“磁盘I/O”、“磁盘使用”、“驱动程序延迟”等几项具体图例供我们分析,不过最好还是让BootVis程序来自动进行分析:从“跟踪”菜单中选择“系统优化”命令,程序会再次重新启动计算机,并分析启动进程文件,从而使计算机启动得更快。(3)禁用多余的服务WindowsXP在启动时会有众多程序或服务被调入到系统的内存中,它们往往用来控制Windows系统的硬件设备、内存、文件管理或者其他重要的系统功能。但这些服务有很多对我们用途不大甚至根本没有用,它们的存在会占用内存和系统资源,所以应该将它们禁用,这样最多可以节省70MB的内存空间,系统速度自然也会有很大的提高。选择“开始”菜单中的“运行”命令,在“运行”对话框键入“services.msc”后回车,即可打开“服务”窗口。窗口的服务列表中列出了系统提供的所有服务的名称、状态及启动类型。要修改某个服务,可从列表双击它,会弹出它的属性对话框(如图3),你可从“常规”选项卡对服务进行修改,通过单击“启动”、“停止”、“暂停”、“恢复”四个按钮来修改服务的状态,并可从“启动类型”下拉列表中修改启动类型,启动类型有“自动”、“手动”、“已禁用”三种。如果要禁止某个服务在启动自动加载,可将其启动类型改为“已禁用”。WindowsXP提供的所有服务有36个默认是自动启动的,实际上,其中只有8个是必须保留的(见下表),其他的则可根据自己的需要进行设置,每种服务的作用在软件中有提示。4)修改注册表来减少预读取,减少进度条等待时间WindowsXP在启动过程中会出现一个进度条,我们可以通过修改注册表,让进度条只跑一圈就进入登录画面。选择“开始”菜单中的“运行”命令,在“运行”对话框键入“regedit”命令后回车,即可启动注册表编辑器,在注册表中找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\PrefetchParameters,选择其下的EnablePrefetcher键,把它的键值改为“1”即可。(5)减少开机磁盘扫描等待时间当Windows日志中记录有非正常关机、死机引起的重新启动,系统就会自动在启动的时候运行磁盘扫描程序。在默认情况下,扫描每个分区前会等待10秒钟,如果每个分区都要等上10秒才能开始进行扫描,再加上扫描本身需要的时间,会耗费相当长的时间才能完成启动过程。对于这种情况我们可以设置取消磁盘扫描的等待时间,甚至禁止对某个磁盘分区进行扫描。选择“开始→运行”,在运行对话框中键入“chkntfs/t:0”,即可将磁盘扫描等待时间设置为0;如果要在计算机启动时忽略扫描某个分区,比如C盘,可以输入“chkntfs/xc:”命令;如果要恢复对C盘的扫描,可使用“chkntfs/dc:”命令,即可还原所有chkntfs默认设置,除了自动文件检查的倒计时之外。2.提高系统运行速度提升系统运行速度的思路与加快启动的速度类似:尽量优化软硬件设置,减轻系统负担。以下是一些常用的优化手段。(1)设置处理器二级缓存容量WindowsXP无法自动检测处理器的二级缓存容量,需要我们自己在注册表中手动设置,首先打开注册表,找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”,选择其下的“SecondLevelDataCache”,根据自己所用的处理器设置即可,例如PIIICoppermine/P4Willamette是“256”,AthlonXP是“384”,P4Northwood是“512”。(2)提升系统缓存同样也是在“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”位置,把其下的“LargeSystemCache”键值从0改为1,WindowsXP就会把除了4M之外的系统内存全部分配到文件系统缓存中,这样XP的内核能够在内存中运行,大大提高系统速度。通常来说,该优化会使系统性能得到相当的提升,但也有可能会使某些应用程序性能降低。需要注意的是必须有256M以上的内存,激活LargeSystemCache才可起到正面的作用,否则不要轻易改动它。(3)改进输入/输出性能这个优化能够提升系统进行大容量文件传输时的性能,不过这只对服务器用户才有实在意义。我们可在中新建一个DWORD(双字节值)键值,命名为IOPageLockLimit。一般情况下把数据设置8~16MB之间性能最好,要记住这个值是用字节来计算的,例如你要分配10MB的话,就是10×?1024×1024,也就是10485760。这里的优化也需要你的机器拥有大于256M的内存。(4)禁用内存页面调度在正常情况下,XP会把内存中的片断写入硬盘,我们可以阻止它这样做,让数据保留在内存中,从而提升系统性能。在注册表中找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”下的“DisablePagingExecutive”键,把它的值从0改为1即可禁止内存页面调度了。(5)关闭自动重新启动功能当WindowsXP遇到严重问题时便会突然重新开机,可从注册表将此功能取消。打开注册表编辑器,找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\”将AutoReboot键的Dword值更改为0,重新启动后设置即可生效。(6)改变视觉效果WindowsXP在默认情况下启用了几乎所有的视觉效果,如淡入淡出、在菜单下显示阴影。这些视觉效果虽然漂亮,但对系统性能会有一定的影响,有时甚至造成应用软件在运行时出现停顿。一般情况下建议少用或者取消这些视觉效果。选择桌面上“我的电脑”图标,单击鼠标右键,在弹出的快捷菜单中选择“属性”命令,打开“系统属性”对话框。选择“高级”选项卡,在其中的“性能”栏中单击“设置”按钮,会弹出“性能选项”对话框(如图4),可选择“调整为最佳性能”单选框来关闭所有的视觉效果,也可选择“自定义”然后选择自己需要的视觉效果。(7)合理设置页面虚拟内存同样也是在“性能选项”对话框中,选择“高级”选项卡,在其中的“虚拟内存”栏中单击“更改”按钮,接下来选择虚拟内存为“自定义大小”,然后设置其数值。一般情况下,把虚拟设为不小于256M,不大于382M比较合适,而且最大值和最小值最好一样。(8)修改外观方案WindowsXP默认的外观方案虽然漂亮,但对系统资源的占用也多,可将其改为经典外观以获得更好的性能。在桌面空白位置单击鼠标右键,从弹出的快捷菜单中选择“属性”命令,会打开“显示属性”对话框,在“主题”选项卡选择主题为“Windows经典”,即可将外观修改为更为经济的Windows经典外观。(9)取消XP对ZIP支持WindowsXP在默认情况下打开了对zip文件支持,这要占用一定的系统资源,可选择“开始→运行”,在“运行”对话框中键入“regsvr32/uzipfldr.dll”,回车确认即可取消XP对ZIP解压缩的支持,从而节省系统资源。(10)关闭Dr.WatsonDr.Watson是WindowsXP的一个崩溃分析工具,它会在应用程序崩溃的时候自动弹出,并且在默认情况下,它会将与出错有关的内存保存为DUMP文件以供程序员分析。不过,记录DUMP文件对普通用户则毫无帮助,反而会带来很大的不便:由于Dr.Watson在应用程序崩溃时会对内存进行DUMP记录,将出现长

温馨提示

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

最新文档

评论

0/150

提交评论