热电阻温度传感器热时间常数测试设计静态法.doc_第1页
热电阻温度传感器热时间常数测试设计静态法.doc_第2页
热电阻温度传感器热时间常数测试设计静态法.doc_第3页
热电阻温度传感器热时间常数测试设计静态法.doc_第4页
热电阻温度传感器热时间常数测试设计静态法.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

系统软件设计热电阻温度传感器热时间常数测试系统软件设计主要由主程序、D/A转换子程序、读取电压值子程序、中断方式DATA0809子程序、T0定时器定时20ms子程序、带借位减法子程序、显示子程序和延时程序组成。其中可以分为以下几个功能模块:(1) 主模块,分为系统的初始化、各子程序的调度管理等部分。(2) 数模转换模块,主要通过D/A转换器将AT89C51从P1口送出的数字转换为相应的模拟量。(3) 温度检测模块,分为采样保持与温度对应的电压值和通过DATA0809输入给单片机。(4) 热时间常数计算模块,通过20ms定时的巡回检测,由带借位减法子程序和无符号数乘除法程序计算热时间常数。(5) 基于74LS164的显示模块(它又可以分为初始化子程序、写入处理子程序及显示子程序等部分)。我们在做系统软件设计之前,还应该注意的是首先要开辟一些数据缓冲区,用以存放临时数据。因为本系统软件用到的寄存器很多,为防止破坏寄存器中的数据,特在AT89C51的数据存储区RAM中开辟一些存储单元。从30H5FH用来存放一些结果/数据,显示缓冲区在72H-74H。在程序运行的开始,首先初始化。4.1初始化程序设计初始化程序中包括系统的初始化以及各芯片的初始化。系统的初始化主要是设置各输出/输入口的初始状态、开中断、置定时器的工作方式及定时常数、显示缓冲区清零。各芯片的初始化程序设计,我们可以通过芯片管脚与单片机不同的连接方式,来设计相应的软件,这在硬件电路部分已详细介绍。确定传感器温度采样值T(n)计算=M开始 输入测试小电流AT89C51送D/A转换延时1s等信号输出单元输出信号确定介质温度读取温度值存30H中输入加热大电流AT89C51送D/A转换调D/A程序延时等待10s,信号输出单元输出电流计算温度传感器温度下降百分比KK632?送显示结束N确定热平衡温度置计数单元M=0置T=20ms定时A/D转换及结果输入20ms定时到?M+1MYNY初始化输入小电流以便保证测量4.2主程序设计 图4-1主程序流程图热电阻温度传感器热时间常数测试系统软件设计必须充分考虑到各部分器件的特点。其主程序流程图如图4-1所示。4.3A/D转换程序流程图YN程序入口初始化数据缓冲区选0809通道0清中断发生标志启动A/D开中断中断发生标志是否为0?读A/D结果送数据缓冲区置中断发生标志子程序结束图4-2A/D转换程序流程图图4-2是A/D转换子程序流程图,采用中断方式。由AT89C51,启动A/D(P2.7=0、=0或非后控制);读数据(P2.7=0、=0或非后控制),硬件撤消中断4.4显示子程序当系统传送一个字节数给74LS164时,利用UART模式0。把显示缓冲区的初始数显示到LED0、LED1和LED2,显示缓冲区72H-74H共三个单元中,对应数码管LED0-LED2。程序流程图如图4-3所示。Y显示子程序入口送设定值(72H)到A 带C标志移位送C到I/O口(8次)字节送完?NY送采集值(73H)到A 带C标志移位 送C到I/O口(8次)字节送完?送采集值到(74H)到A带C标志移位送C到I/O口(8次)字节送完?N子程序结束YN 图4-3显示子程序流程图4.5定时子程序流程图本设计中我们选用T0,方式1。方式1与方式0相似,但采用了16位计数器,即高位,低位各8位。定时器的编程包括:(l)置工作方式。 (2)置计数初值。 (3)中断设置。 (4)启动定时器。 子程序流程图如下:TIMER0中断服务程序置T0工作方式1置TH0、TL0计书数初值置TR0、启动计数TF0=1?N中断返回Y 图4-4定时子程序流程图4.6延时程序设计系统中要调用延时子程序。当然这里所要的延时时间也并没有特别要求像时钟一样的精度,大致可以就行。 下面就延时1ms的子程序作简要的说明,其它的延时程序的设计和这个原理是一样的,就不再一一说明了。说是1ms的延时,其实更精确的说应该是1.251ms。设一个机器周期的时间为TP。一条MOV指令要用一个TP,一个NOP指令也要一个TP,而DJNZ指令要用两个TP,所以,内部循环延时时间:TP+TP+2TP70=142 TPs。外循环延迟时间:TP+(内部延时+2 TP )8=1153TP=115312/11.0592=1251s=1.251ms即运行完这个程序需要1.251ms,也就是我们所要用的近似于1ms的延时。延时时间主要与两个因素有关:一是内循环指令的执行时间;二是外循环时间常数(内循环的循环次数)的设置,子程序流程图如图4-5所示。延时子程序入口置外循环时间常数置内循环时间常数内循环时间常数=0?外循环时间常数=0?NN子程序结束YY图4-5延时子程序流程图总 结本设计通过AT89C51单片机和外围器件的配合使用,介绍了一个完整的单片机系统设计的全部过程,给出了一种智能型热电阻温度传感器热时间常数测试设计(静态法)的实现方法。在这个设计中首先介绍了现如今存在的多种测量方法和器件,经过各方面的论证最后得到适合本系统的一种方案;然后详细的介绍了系统的硬件电路设计要点;最后给出了系统的软件设计和部分设计的程序流程图。由于本系统中所需要连接的硬件电路相对的复杂,而且在制作的过程中电路板中电线连接的繁杂而导致的信号干扰,再加上设计时间的限制和能力的有限,硬件电路的后期的调试过程中,最终没有达到我们预期的目标。而本方案也一个完美无缺的测量热电阻温度传感器热时间常数的方案,比如我们还可以在显示热时间之前还可以显示环境的实际温度来使我们的方案和功能更加的完善,所以不足之处,在所难免,还望大家指正和批评。通过这次毕业设计,我学到了很多东西,从开始检索资料到最终系统设计完成的整个步骤,我们投入了许多的时间和精力,但是从中我们学到的知识更多。我学到了怎样去查详细而丰富的资料,怎样使用Protel

温馨提示

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

评论

0/150

提交评论