毕业设计(论文)-四路土壤湿度测量显示系统.doc

上传人:爱问知识人 文档编号:3949787 上传时间:2019-10-11 格式:DOC 页数:29 大小:393KB
返回 下载 相关 举报
毕业设计(论文)-四路土壤湿度测量显示系统.doc_第1页
第1页 / 共29页
毕业设计(论文)-四路土壤湿度测量显示系统.doc_第2页
第2页 / 共29页
毕业设计(论文)-四路土壤湿度测量显示系统.doc_第3页
第3页 / 共29页
毕业设计(论文)-四路土壤湿度测量显示系统.doc_第4页
第4页 / 共29页
毕业设计(论文)-四路土壤湿度测量显示系统.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《毕业设计(论文)-四路土壤湿度测量显示系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-四路土壤湿度测量显示系统.doc(29页珍藏版)》请在三一文库上搜索。

1、四路土壤湿度测量显示系统摘要【内容与技术参数】1、用数码管显示 2、四路循环显示 3、精度达到1%【要求及摘要】本设计的要求: 1、画出完整的电路原理图 2、写出完整的程序 3、毕业设计说明书不少于8000字 本设计概要:本设计是关于四路土壤湿度测量与显示的设计与制作。该设计的工作原理是由单片机STC89C51和模数转换器ADC0809共同完成功能,首先湿度传感器将采集到的数据传送到ADC0809的IN端作为输入端的模拟信号,ADC0809根据送来的地址信号选通IN3通道,然后对输入的模拟信号进行模数转换,转换结束时,EOC输出高电平,通知单片机可以读取转换结果,单片机通过调用中断程序,读取转

2、换后的数据。最后,单片机把采集到的湿度数据经过软件程序处理后送到LED数码管进行显示。而且这个设计我只用一个湿度传感器,它包括模数转换,可直接接单片机输出数据。另外三路准备用可调电阻进行模拟,调节电阻阻值,改变输入电压,相当于改变土壤湿度,再传到模数转换器进行转换再输入单片机进行输出。【关键词】LED液晶;湿度传感器;AD转换器芯片;单片机STC89C52 Abstract【The content and the technical parameters 】 1, with LED display 2, four ways of cyclic display 3, 1% accuracy【 r

3、equirements and the 】 this design requirements: 1, draw the complete circuit principle diagram 2, write a complete program 3, graduation design specifications of not less than 8000 words This design summary: this design is about four ways of soil humidity measurement and display design and productio

4、n. The design principle of work is STC89C51 by single-chip microcomputer and adc ADC0809 together complete function, first humidity sensors will the collected data transfer to the ADC0809 IN end as input terminal of the analog signals, ADC0809 according to the address of the signal sent choose IN3 c

5、hannel, and then the input analog signal conversion module, at the end of the conversion, EOC output high level, notice the microcontroller can read the transformation results, SCM by calling the interruption program, read after converting data. Finally, the acquisition of the single chip microcompu

6、ter to humidity data after software program after processing LED digital display to pipe. And the design I only use a humidity sensor, it includes modulus conversion, which can be directly by single chip output data. Three other road with the resistance to simulate, adjust the resistance tolerance,

7、change the input voltage, equivalent to change the soil moisture, again to digital converter for conversion to input MCU output.【Key words 】 two digital tube ;humidity sensor; AD converter chip single-chip; microcomputer STC89C52 目录1 选择设计方案51.1 方案一:51.2 方案二:51.3 最终方案选择:62 本设计硬件的介绍与设计62.1 湿度采集62.2 本设

8、计元器件介绍72.2.1 A/D转换芯片ADC080972.2.1.1 ADCO809芯片的主要参数:82.2.1.2 内部结构82.2.1.3 ADC0809引脚及功能82.2.2 STC89C52单片机102.2.2.1 单片机的复位电路112.2.2.2 时钟电路122.2.2.3 单片机的编程122.2.2.4 单片机的最小应用系统122.2.2.5 单片机STC89C52引脚介绍132.2.3 LED数码管152.2.4 AM2302传感器152.2.4 LCD1602液晶显示162.2.4.1 命令格式及功能说明172.3 本设计硬件电路图的选择182.3.1 主控部分183 本设

9、计的软件设计193.1汇编语言与C语言的比较194 安装与调试214.1 安装的准备214.2 安装与调试过程记录224.3 参数测试22致谢24【参考文献】25附录26附录一:元器件清单26附录二:电路图27附录三:实物图271 选择设计方案1.1 方案一: 由湿度传感器采集土壤湿度,再经过ADC模数转换把模拟信号转换为数字信号以方便显示,然后再用译码器将转换后的数字信号传给二位显示电路实现显示,ADC转换电路所需脉冲由555构成的多谐振荡器来提供。如图1.1-1所示 特点:此方案没有用到单片机,整体较简单,但粗糙误差大,而且译码器74HC4511存在消隐状态,即当ADC转换后的数据超过10

10、01时,对于10101111六个代码,译码器输出均为低电平,显示器不能正常显示出每一单位下的湿度值。 方框图:湿度采集A/D转换译码器LED数码管显示 图 1.1-1 流程方框图1.2 方案二: 首先湿度传感器采集土壤湿度的模拟信号,传送给模数转换器ADC0809进行模数转换,转换出的数字信号传送给单片机AT89C51进行实时处理,同时由单片机控制ADC0809的转换开始与结束,单片机把处理后的数据经过处理传送给二位数码管LED进行数据显示。如图1.1-2所示特点:此方案中用到单片机AT89C51,其精度及反应速度远高于方案一中,且此方案较复杂,更能发挥自己的本领。 方框图: LED显示电路A

11、T89C51单片机 时钟电路 A/D转换电路 复位电路 数据采集 图1.1-2 流程方框图1.3 最终方案选择:考虑到以上两种方案的优缺点,综合考虑各方面,选择方案二,能较快较准确的测量出土壤的湿度。2 本设计硬件的介绍与设计2.1 湿度采集传感器是能响应规定的被测物理量,并按照一定的规律转换成为可用信号输出的器件或装置。它通常由直接响应于被测物理量的敏感元件和产生可用信号输出的转换元件及相应的电子电路组成。 传感器的分类:按构成分可分为基本型传感器、组合型传感器和应用型传感器;按机理可分为结构型传感器,物理性传感器、混合型传感器和生物型传感器;按作用形式可分为主动型传感器和被动传感器;按变换

12、工作能量的供给形式可分为能量变换型传感器和能量控制型转换器;按输出信号形式分为温度、压力、湿度、流量、流速、磁场和光通量等传感器。湿度的采集可以用湿度传感器来实现。将湿度传感器看作可调变阻器,当湿度传感器采集到湿度时,电阻值发生变化,湿度最小时的电阻值为10K,湿度最大时为0.1。变化的幅度是根据湿度传感器采集到的湿度大小而定。随着电阻值的变化,电路的输出电压也跟着变化。调节电阻值的大小,可得到想要的电压,满足电路的需求。综上所述选择AM2302传感器。2.2 本设计元器件介绍2.2.1 A/D转换芯片ADC0809ADC0809模数转换芯片是美国国家半导体公司所生产的CMOS管工艺8通道,8

13、位逐次逼近式A/D模数转换器。其内部有一个8通道多路开关,可以根据地址码所锁存译码后的信号来选通8路模拟输入信号中一个进行模数转换,是目前我国应用最多的8位通用A/D芯片。A/D转换器地作用就是把模拟量转换成为数字量输出,便于单片机进行数据处理。因为A/D转换器的输入量是随时间连续变化的模拟信号,而输出量是随时间离散变化离散数字信号,因此在转换中,必须对模拟信号进行采样、保持、量化和编码才行。首先采样就是在一断很短时间内对采样模拟信号,把一个在时间上是连续的信号变换为在时间上是离散的信号。然后就是保持,即采样完后将此模拟信号保持一段时间,以使A/D转换器能有充分的时间进行A/D转换,这样就完成

14、了采样和保持。接下来是量化,每一个数字量大小都是以某个最小数量单位整数倍来表示的,所以在需要用数字量来表示采样电压时,就必须也把它量化成那个最小数量单位的整数倍,这个过程就叫做量化。最后是编码,编码意味着逻辑地使用一种特定的语言比如C语言或C+来执行一个程序,把量化后的数据转换为一种代码或者编码字符,而且能解译为原来的数据形式。A/D转换器的主要技术参数:转换时间和转换速率:转换时间是指A/D完成一次转换所需要的时间,转换时间的倒数为转换速率。 分辨率:在A/D转换器中,分辨率是衡量A/D转换器能够分辨出输入模拟量最小变化程度的技术指标。分辨率取决于A/D转换器的位数,所以习惯上用输出的二进制

15、位数或BCD码位数表示。量化过程引起的误差称为量化误差,量化误差是由于有限位数字量对模拟量进行量化而引起的误差。量化误差理论上规定为一个单位分辨率的正负1/2LSB,提高A/D转换器的位数既可以提高分辨率,又能够减少量化误差。转换精度:A/D转换器的转换精度定义为一个实际A/D转换器与一个理想A/D转换在量化值上的差值,可用绝对误差或相对误差表示。2.2.1.1 ADCO809芯片的主要参数: 具有8位A/D转换器和8路出入通道,也即分辨率是8位。 具有转换开始停止控制端。 转换时间为100s(时钟为640kHz时),130s(时钟为500kHz时)有单个5V电源供电 其模拟输入电压范围为05

16、V,不需零点和满刻度校准 工作温度范围为-4085 功耗低,约15mW2.2.1.2 内部结构 ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如下图所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制电路和定时电路组成。 2.2.1.3 ADC0809引脚及功能ADC0809芯片共有28个引脚,采用双列直插式封装,引脚及连线如图2.2.1.3-1所示,结构框图如2.2.1.3-2,其主要引脚的功能如下:图2.2.1.3-1 ADC0809引脚排列 图2.2.1.3-2 ADC0809结构框图IN0IN7:8路模拟信号输入端。D0D

17、7:转换完毕的8位数字量输出端。A、 B、C:控制8路模拟输入通道的切换。A、B、C、分别与单片机的三条地址线相连,三位编码对应8个通道地址端口。C、B、A=000111分别对应IN0IN7通道的地址。各路模拟输入之间的切换由软件改变C、B、A引脚上的编码来实现。 ALE:地址锁存允许信号,当输入高电平时有效。 START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使ADC0809复位,下降沿启动A/D转换)。 EOC: A/D转换结束信号,输出转换的数据,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。 OE:数据输出允许信号,输入高电

18、平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端,要求时钟频率不高于640KHZ。 VR(+)、VR(-):基准电压输入端。 Vcc:电源,单一5V。 GND:接地端。 表1 输入通道的选择CBA选中的通道0 0 001111001100110101010101234567 ADC0809的工作过程:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将寄存器复位,下降沿启动 A/D转换,之后EOC输出信号为低电平,表示模数转换正在进行。直到A/D数据转换完成,EOC变为高电平

19、时,表示A/D转换结束,转换后的数据已存入锁存器,这个信号可用作中断申请。当OE输入为高电平时,输出三态门被打开,转换后的数字量输出到数据总线上。状态如上表1所示2.2.2 STC89C52单片机单片机是指单片微型计算机的简称,通俗的来讲单片机就是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、RAM、ROM、多种I/O接口和中断系统、定时器或计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。单片机特别适合应用在控制领域,因此又称为微控制器MCU,单片机只要能和适当的软件及

20、外部设备相结合,便可够成一个单片机控制系统,功能很强大。 单片机的分类:a、 通用型和专用型:这是按单片机适用范围来区分的。例如,80C51是通用型单片机,它不是为某种专用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。 b、 总线型和非总线型:这是按单片机是否提供并行总线来区分的。总线型单片机普遍有并行地址总线、数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,可以大大减省封装成本和芯

21、片体积,这类单片机称为非总线型单片机。 c、控制型和家电型:这是按照单片机应用的领域进行区分的。一般来说,工控型寻址范围较大,运算能力强;而用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。 2.2.2.1 单片机的复位电路所谓复位即是使CPU和系统中的其他功能部件回到初始状态,并从此状态重新开始工作。复位可发生在单片机刚开始接上电源,或者断电后或者程序运行出错或操作错误使系统处于死锁状态时都要复位,单片机复位可直接按复位键即RST脚为高电平,此期间必须使RST引脚(9脚)加上持续两个时钟周期以上的高电平。复位的方式可分为上电复位和按键复位:a、 手动复位电路:手动

22、复位电路需要人为的在复位输入端RST上加高电平。一般采用的办法是在RST引脚端和电源Vcc之间接一个开关按钮。当人为的按下按钮时,则电源的+5V电平就会直接加到RST引脚端。但是即使人的动作再快也会使按钮保持接通数十毫秒,因此完全能够满足复位所需要的时间。 b、 上电自动复位:只要在RST复位引脚上接一电容至Vcc端,下端接一个电阻到地即可。对于CMOS型单片机,由于在RST引脚内部有一个下拉电阻,故可将电阻R去掉,而将外接电容C选为10uF。上电自动复位是通过外部复位电路给电容C充电加至RST引脚一个短的高电平信号,此信号随着Vcc对电容C的充电过程而逐渐回落,即RST引脚上的高电平持续时间

23、取决于电容C的充电时间。因此为保证系统能可靠的复位,RST引脚上的高电平必须维持足够长的时间。按照本设计的需要,选择手动复位电路,其图及连线引脚如图2.2.2.1-1所示图2.2.2.1-1 手动按钮复位2.2.2.2 时钟电路 时钟电路是用于产生单片机工作时所必须的控制信号,在执行指令时,CPU首先到程序存储器中取出需要执行的指令操作码,然后译码,并由时序电路产生一系列控制信号完成指令所规定的操作。单片机就是一个同步时序电路系统,其必须在统一的时序控制下才能正常运行。单片机各功能部件的运行都以时钟控制信号为基准,有条不紊、一拍一拍的工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直

24、接影响单片机系统的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种是外部时钟方式。 a、内部时钟方式:单片机内部有一个用于构成振荡器的高增益反相放大器,它的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体和微调电容,构成一个稳定的自激振荡器 b、外部时钟方式:外部时钟方式使用现成的外部振荡器产生脉冲信号,常用于多片单片机同时工作,以便于单片机之间的同步,一般为低于12MHz的方波。外部时钟源直接接到XTAL1端,XTAL2端悬空。所选时钟电路如图所示2.2.2.2-1所示图2.2.2.2-1 晶振2.2.2.3 单片机的编程此设计主要是利用单片机的外部接口

25、电路与单片机软件编程共同来实现的,所以程序的正确与否是能否实现该方案的关键。编程所用的语言一般为汇编语言和C语言,C语言用的较多。在编程时要结合所用的实际电路图来确定每个接口的功能,必须一一对应,不然所编程序不能实现所要的功能,而且要结合调试去完成。2.2.2.4 单片机的最小应用系统如图2.2.2.4-1所示:图2.2.2.4-1 单片机的最小应用系统2.2.2.5 单片机STC89C52引脚介绍 单片机STC89C52是一种功耗低、性能高的CMOS管 8位单片机,具有 8K的系统可编程Flash存储器。在单片基芯片上,拥有灵巧的8位CPU 和在系统可编程的Flash,因此单片机STC89C

26、52为众多嵌入式控制应用系统提供了高灵活、超有效的解决方案。其引脚及连线如图2.2.2.5-1: 图2.2.2.5-1 单片机的引脚排列图 A、主电源引脚GND和Vcc GND接地 Vcc正常操作时为+5V电源 B、外接晶振引脚XTAL1和XTAL2 XTAL1为内部振荡电路反相放大器的输入端,是外接晶体的一端。当采用外部振荡器时,此引脚接地。 XTAL2为内部振荡电路反相放大器的输出端,是外接晶体的另一引脚。当采用外部振荡器时,此引脚接外部振荡源。 C、控制或与其它电源复用引脚RST/VPD:当振荡器运行时,在此引脚上出现两个时钟机器周期的高电平(由低到高跳变),将使单片机复位为初试状态,在

27、Vcc掉电期间,此引脚可接电源。ALE/:在正常操作时为ALE功能(允许地址锁存端),把地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲。:外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,在每个时钟机器周期内两次有效。同样可以驱动八个LSTTL电路。/Vpp:/Vpp为内部程序存储器和外部程序存储器选择端。当/Vpp为高电

28、平时,访问内部程序存储器,当/Vpp 为低电平时,则访问外部程序存储器。 D、输入/输出引脚P0口(P0.0 P0.7)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。P1口(P1.0 P1.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。P2口(P2.0 P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。P3口(P3.0 P3.7)是一个带有内部提升电阻的8位准双向I

29、/O口。能驱动(吸收或输出电流)四个LSTTL负。2.2.3 LED数码管 数码管按段数可分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(即多一个小数点显示)。按能显示多少个“8”可分为1位、2位、4位等数码管型号,按发光二极管单元连接方式可分为共阳数码管和共阴数码管。共阳数码管是指将所有发光二极管地阳极接到一起形成公共阳极(COM),共阳数码管在应用时应该将公共端COM接到+5V,当某一字段发光二极管阴极为低电平时,相应字段就会点亮,而当某一字段的阴极为高电平时,相应字段就不点亮。而共阴数码管是指将所有发光二极管地阴极接到一起形成公共阴极(COM),共阴数码管在应用时

30、必须将公共端COM接到地线GND上,当某一字段发光二极管的阳极是高电平时,相应字段就点亮。相反当某一字段的阳极为低电平时,相应字段就不点亮。 在本次设计中采用的是1位LED数码管来显示此刻显示的是第几路湿度,LED具有功耗低、亮度高、视角大、线路简单、耐震及寿命长等有点。它由4个发光二极管组成,其中7个按“8”字型排列,另一个为圆点形状,位于右下角,常用语显示小数点,把8个发光二极管连接在一起,公共端接高电平,叫公阳极接法,相反,公共端接低电平叫共阴极接法。本次设计采用的是共阳接法,当发光二极管导通时,相应的一段笔画或点就发亮,从而形成不同的发光字符。驱动每个发光二极管的工作电流约 10mA,

31、工作压降约 1.5V 。2.2.4 AM2302传感器 AM2302是一种含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术与温湿度传感技术,来确保产品具有极高的可靠性与长期的稳定性。此传感器包括一个电容式感湿元件和一个高精度NTC的测温元件,并与一个高性能8位单片机相连接。所以该产品具有品质好、反应迅速、抗干扰能力强、性价高等许多优点。每个传感器都在极为精确的湿度校验室中进行校准过,且校准系数以程序的形式储存在单片机中,传感器内部在检测信号处理过程中要调用这些校准系数。该传感器有四个引脚及连线如图 2.2.4-1所示,连接方便,其四个引脚从左往右分别为VDD接电源、DAT

32、A串行数据、NC空脚悬空、GND接地。图 2.2.4-1所示 它的应用范围是暖气空调、测试及检测设备、除湿器、飞机、自动控制、数据记录器 、气象站、家中电器、湿度调节器、医疗等很多行业。该传感器的优点就是无需额外部件、标准单总线数字接口、稳定时间长、成本低、完全互换、体积小巧、超低能耗、相对湿度测量、数字输出、精确校准、超长的信号传输距离 技术参数: 供电电压: 3.36V DC 感测元件: 湿敏电容 工作范围: 湿度0-100%RH,温度-4080 测量精度: 湿度 +-2%RH, 温度 +-0.5 分辨率: 湿度0.1%RH, 温度 0.1 稳定性: +-0.5%RH/年 互换性: 可完全

33、互换2.2.4 LCD1602液晶显示图2.2.4-1所示本设计使用LCD1602液晶来显示所测的土壤湿度值,精确到1%其电路图及连接方式如图2.2.4-1所示2.2.4.1 命令格式及功能说明A、 清屏指令功能: 清除液晶显示器,即将DDRAM的内容全部填入“空白”的ASCII码20H; 光标归位,即将光标撤回液晶显示屏的左上方; 将地址计数器(AC)的值设为0。B、光标归位指令功能: 把光标撤回到显示器的左上方; 把地址计数器(AC)的值设置为0; 保持DDRAM的内容不变。 C、进入模式设置指令功能:设定每次定入1位数据后光标的移位方向,并且设定每次写入的一个字符是否移动。D、显示开关控

34、制指令功能:控制显示器开/关、光标显示/关闭以及光标是否闪烁。参数设定的情况如下: 位名 设置 D(DB2) 0=显示功能关 1=显示功能开 C(DB1)0=无光标 1=有光标 B(DB0) 0=光标闪烁 1=光标不闪烁E、设定显示屏或光标移动方向指令功能:使光标移位或使整个显示屏幕移位。参数设定的情况如下:S/C R/L 设定情况0 0 光标左移1格,且AC值减10 1 光标右移1格,且AC值加1 1 0 显示器上字符全部左移一格,但光标不动 1 1 显示器上字符全部右移一格,但光标不动 F、功能设定指令功能:设定数据总线位数、显示的行数及字型。参数设定的情况如下: 位名 设置DL 0=数据

35、总线为4位 1=数据总线为8位 N 0=显示1行 1=显示2行 F 0=57点阵/每字符 1=510点阵/每字符 7.设定CGRAM地址指令功能:设定下一个要存入数据的CGRAM的地址。G、设定DDRAM地址指令功能:设定下一个要存入数据的CGRAM的地址。H、读取忙信号或AC地址指令功能: 读取忙碌信号BF的内容,BF=1表示液晶显示器忙,暂时无法接收单片机送来的数据或指令; 当BF=0时,液晶显示器可以接收单片机送来的数据或指令; 读取地址计数器(AC)的内容。I、数据写入DDRAM或CGRAM指令一览功能: 将字符码写入DDRAM,以使液晶显示屏显示出相对应的字符; 将使用者自己设计的图

36、形存入CGRAM。J、从CGRAM或DDRAM读出数据的指令一览2.3 本设计硬件电路图的选择2.3.1 主控部分 方案一:此方案采用PC机实现,它可在线编程,可在线仿真的功能,这让调试变得方便,且人机交互好。但是PC机输出信号不能直接与AM2302通信,必须要通过RS232电平转换兼容,硬件的合成在线调试,较为繁琐,很不简便。而且在一些环境比较恶劣的场合,PC机的体积大,携带安装不方便,性能不稳定,给工程带来很多麻烦! 方案二:此方案采用STC89C52八位单片机实现,单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制。而且体积小,硬件实现简单,安装方便。既可以单独对多AM

37、2302控制工作,还可以与PC机通信.另外STC89C52在工业控制上也有着广泛的应用,编程技术与外围功能电路的配合使用都很成熟。通过以上各元器件的介绍和对各功能电路的分析,最终确定的电路图如图2.3-1所示。此电路图中一路是直接通过湿度传感器测量湿度,因为传感器自带模数转换,可直接输出。而另外三路是通过可调电阻改变输入电压来模拟湿度测量,此三路需经过模数转换才能输出给单片机。图2.3-1所示3 本设计的软件设计3.1汇编语言与C语言的比较 单片机应用系统的程序设计,可以采用汇编语言,也可以采用C语言。汇编语言是一种用记忆符来代表机器语言的符号语言因为它最接近机器语言,汇编语言对单片机的操作直

38、接、简捷,编制的程序紧凑、执行效率高。但移植难度很大,程序的可读性也很差。 而C语言可移植性好,与自然语言非常接近,同样功能可以用少量的语句完成 ,入门容易,编程效率较高,程序可读性好,并且可以嵌套汇编语言,以满足执行效率或操作有特殊要求的情况。与汇编语言相比C51具有下列优点:编程效率高、程序的可移植性好、程序的可读性和可维护性好、便于应用程序的模块化设计C51的程序结构与C语文基本相同、相对汇编语言,简单易学,便于使用。终观上述,结合本次毕业设计的实际情况,本人决定使用C51进行本设计的编程方法。提高设计的效率和成功率。程序如下所示:#include #define uint unsign

39、ed int#define uchar unsigned charuchar code LEDData= 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;sbit OE = P10;sbit EOC = P11;sbit ST = P12;sbit CLK = P13;void DelayMS(uint ms) uchar i; while(ms-) for(i=0;i120;i+); void Display_Result(uchar d) P2 = 0xf7; P0 = LEDDatad%10; DelayMS(5); P2 = 0xfb

40、; P0 = LEDDatad%100/10; DelayMS(5); P2 = 0xfd; P0 = LEDDatad/100; DelayMS(5);void main() TMOD = 0x02; TH0 = 0x14; TL0 = 0x00; IE = 0x82; TR0 = 1; P1 = 0x3f; while(1) ST = 0; ST = 1; ST = 0; while(EOC = 0); OE = 1; Display_Result(P3); OE = 0; void Timer0_INT() interrupt 1 CLK = !CLK;4 安装与调试4.1 安装的准备在

41、安装前要做好检查工作,确保元器件质量功能可靠,尤其要注意晶体管的型号,电容器的耐压和极性,按照原理图组装电路,使元件安装的位置、极性正确、布局合理;整机清洁无污物,导线不杂乱。由于电路的要求,所以我按照单元电路逐级安装,逐级调试然后联合调试的方法。在安装调试过程中用到的仪器主要有示波器,万用表。4.2 安装与调试过程记录首先安装的是ADC0809为主的采集与转换电路,电路简单很快就安装完成。接下来就是连接单片机的外围复位和时钟电路,我使用的晶振是12MHz的,所以单片机的机器周期就是1us.由于复位分为两种复位方式,自动上电复位和手动按键复位,我在设计中采用的是自动复位,所以用的极性电容是20

42、uF/25V的,复位电阻采用的8.2K的。接下来我连接的是显示电路,由于我设计中采用的是4段数码管,这种数码管的8个显示段码和4个公共引脚,这4个引脚分别各控制一个“8”字,我采用单片机的P0口控制数码管的a、b、c、d、e、f、g、dp,依次对应的是P0.0P0.7,四个公共端接在单片机的P2口的P2.1,P2.2,P2.3,因为在设计电路中要求我显示的湿度值是100%,所以我就用到3段数码管。接着连接的是ADC0809与AT89C51单片机之间的线路了,我根据电路图用单片机的P0口来连接ADC0809的控制引脚和时钟脉冲输入端,依次是P1.0连接OE,P1.1连接EOC,P1.2连接ALE和START端,P1.3就是时钟脉冲的输出端,给ADC0809提供时钟脉冲,剩下的3个脚分别接地址码输入端。接下来连接的是D7D08位数字量输出端,分别对应单片机的P3.0P3.7端口。就这样,安装电路阶段基本完成的了,下面就要进行调试阶段。4.3 参数测试如图4.3-1所示图4.3-1 时钟脉冲波形图幅度为4.96V,周期为1.55us,频率为635.16KHZ.电路通电后没湿度时的电压为2.4 V,有湿度时的最大电压为4.8V,如图表3表3 湿度值对应的传

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1