智能温度测量仪课程设计(共29页)_第1页
智能温度测量仪课程设计(共29页)_第2页
智能温度测量仪课程设计(共29页)_第3页
智能温度测量仪课程设计(共29页)_第4页
智能温度测量仪课程设计(共29页)_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上专心-专注-专业智智能能温温度度测测量量仪仪课课程程设设计计报报告告专 业: 班 级: 姓 名: 学 号: 指导教师: 精选优质文档-倾情为你奉上专心-专注-专业 -智能温度测量仪智能温度测量仪摘要:摘要:本文主要介绍了智能温度测量仪的设计,包括硬件和软件的设计。先对该测量仪进行概括性介绍,然后介绍该测量仪在硬件设计上的主要器件:“Pt100热电阻”、AT89C51单片机和LCD显示器以及描述测量仪的总体结构原理。在本设计中,是以铂电阻PT100作为温度传感器,采用恒流测温的方法,通过单片机进行控制,用放大器、A/D转换器进行温度信号的采集。总体来说,该设计是切实可行

2、的。关键词:关键词:温度;Pt100热电阻;AT89C51单片机;LCD显示器。引言:引言:温度是日常生活、工业、医学、环境保护、化工、石油等领域最常遇到的一个物理量,也是工业控制中主要的被控参数之一。对温度的测量与控制在现代工业中也是运用的越来越广泛。而传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。因此,不仅必须掌握各类传感器的结构、原理及其性能指标,还必须懂得传感器经过适当的接口电路调整才能满足信号的处理、显示和控制的要求,而且只有通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和信息通信与信息处理结合起来,适应传感器的生产、研制、开发和应用。另一方面,传

3、感器的被测信号来自于各个应用领域,每个领域都为了改革生产力、提高工效和时效,各自都在开发研制适合应用的传感器,于是种类繁多的新型传感器及传感器系统不断涌现。温度传感器是其中重要的一类传器。其发展速度之快,以及其应用之广。并且还有很大潜力为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本文利用单片机结合温度传感器技术而开发设计了这一温度测量系统。文中将传感器理论与单片机实际应用有机结合,详细地讲述了利用热电阻作为温度传感器来测量实时的温度,以及实现热电转换的原理过程。 本设计系统包括温度传感器,信号放大电路,A/D 转换模块,

4、数据处理与精选优质文档-倾情为你奉上专心-专注-专业控制模块,温度显示五个部分。文中对每个部分功能、实现过程作了详细介绍。整个系统的核心是进行温度测量与显示,完成了课题所有要求。Pt100Pt100 温度传感器温度传感器温度传感器从使用的角度大致可分为接触式和非接触式两大类,前者是让温度传感器直接与待测物体接触,而后者是使温度传感器与待测物体离开一定的距离,检测从待测物体放射出的红外线,达到测温的目的。在接触式和非接触式两大类温度传感器中,相比运用多的是接触式传感器,非接触式传感器一般在比较特殊的场合才使用,目前得到广泛使用的接触式温度传感器主要有热电式传感器,其中将温度变化转换为电阻变化的称

5、为热电阻传感器,将温度变化转换为热电势变化的称为热电偶传感器。热电阻传感器可分为金属热电阻式和半导体热电阻式两大类,前者简称热电阻,后者简称热敏电阻。常用的热电阻材料有铂、铜、镍、铁等,它具有高温度系数、高电阻率、化学、物理性能稳定、良好的线性输出特性等,常用的热电阻如 PT100、PT1000 等。近年来各半导体厂商陆续开发了数字式的温度传感器,如 DALLAS 公司 DS18B20,MAXIM 公司的MAX6576、MAX6577,ADI 公司的 AD7416 等,这些芯片的显著优点是与单片机的接口简单,如 DS18B20 该温度传感器为单总线技术,MAXIM 公司的 2种温度传感器一个为

6、频率输出,一个为周期输出,其本质均为数字输出,而ADI 公司的 AD7416 的数字接口则为近年也比较流行的 I2C 总线,这些本身都带数字接口的温度传感器芯片给用户带来了极大的方便,但这类器件的最大缺点是测温的范围太窄,一般只有-55+125,而且温度的测量精度都不高,好的才0.5,一般有2左右,因此在高精度的场合不太满足用户的需要。热电偶是目前接触式测温中应用也十分广泛的热电式传感器,它具有结构简单、制造方便、测温范围宽、热惯性小、准确度高、输出信号便于远传等优点。常用的热电偶材料有铂铑-铂、铱铑-铱、镍铁-镍铜、铜-康铜等,各种不同材料的热电偶使用在不同的测温范围场合。热电偶的使用误差主

7、要来自于分度误差、延伸导线误差、动态误差以及使用的仪表误差等。非接触式温度传感器主要是被测物体通过热辐射能量来反映物体温度的高低,这种测温方法可避免与高温被测体接触,测温不破坏温度场,测温范围宽,精选优质文档-倾情为你奉上专心-专注-专业精度高,反应速度快,既可测近距离小目标的温度,又可测远距离大面积目标的温度。目前运用受限的主要原因一是价格相对较贵,二是非接触式温度传感器的输出同样存在非线性的问题,而且其输出受与被测量物体的距离、环境温度等多种其它因素的影响。本设计的要求是采用“PT100”热电阻,测温范围是-200+600,精度0.5%,具体的型号选为 WZP 型铂电阻。AT89C51AT

8、89C51 单片机单片机AT89C51 是一种带 4K 字节闪存可编程可擦除(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能 CMOS 8 位微处理器,俗称。AT89C2051 是一种带 2K 字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除 1000 次。该器件采用 ATMEL高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51 是一种高效微控制器,AT89C2051

9、 是它的一种精简版本。AT89C51 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。LCDLCD 显示器显示器 液晶显示器是一种采用了液晶控制透光度技术来实现色彩的显示器。和 CRT显示器相比,LCD 的优点是很明显的。由于通过控制是否透光来控制亮和暗,当色彩不变时,液晶也保持不变,这样就无须考虑刷新率的问题。对于画面稳定、无闪烁感的液晶显示器,刷新率不高但图像也很稳定。LCD 显示器还通过液晶控制透光度的技术原理让底板整体发光,所以它做到了真正的完全平面。系统总体设计介绍系统总体设计介绍测温的模拟电路是把当前 PT100热电阻传感器的电阻值,转换为容易测量的电压值,经过放大器放大

10、信号后送给 A/D 转换器把模拟电压转为数字信号后传给单片机 AT89C51,单片机再根据公式换算把测量得的温度传感器的电阻值转换为温度值,并将数据送出到 LCD 显示器进行显示。本设计系统主要包括温度信号采集单元,单片机数据处理单元,温度显示单元。其中温度信号的数据采集单元部分包括温度传感器、温度信号的获取电路(采样) 、放大电路、A/D 转换电路。精选优质文档-倾情为你奉上专心-专注-专业系统的总结构框图如图 1-1 所示。 1-1 系统的总结构框图 本温度测量系统设计,是采用 PT100 温度传感器经过放大和 A/D 转换器送到单片机进行控制温度显示。另外本系统还可以通过外接电路扩展实现

11、温度报警功能,从而更好的实现温度现场的实时控制。经过多次的修改和调试测量,本设计基本符合设计要求,由于受人为因素和软硬件的限制,系统难免不了带来一些误差,但通过调节和精确计算可以减小误差。通过本次温度测量系统的设计,我对温度测量控制有了进一步的熟悉和更深入的学习。在整个设计的过程中,本设计的重点和难点是:怎样将 PT100 热电阻的非电量信号转换为单片机单片机能识别的电量信号,其中的信号如何放大及放大倍数的确定等等。 硬件设计硬件设计PT100PT100 传感器特性和测温原理传感器特性和测温原理 电阻式温度传感器(RTD, Resistance Temperature Detector)是指一

12、种物 质材料作成的电阻,它会随温度的改变而改变电阻值。 PT100 温度传感器是一种以铂(Pt)做成的电阻式温度传感器,属于正电阻系 数,其电阻阻值与温度的关系可以近似用下式表示: 在 0600范围内:精选优质文档-倾情为你奉上专心-专注-专业 Rt =R0 (1+At+Bt2) 在-2000范围内: Rt =R0 (1+At+Bt2+C(t-100)t3) 式中 A、B、C 为常数, A=3.9684710-3; B=-5.84710-7; C=-4.2210-12;由于它的电阻温度关系的线性度非常好,因此在测量较小范围内其电阻和温度变化的关系式如下:R=Ro(1+T) 其中 =0.0039

13、2, Ro 为 100(在 0的电阻值),T 为华氏温度,因此铂做成的电阻式温度传感器,又称为 PT100。PT100 温度传感器的测量范围广:-200+600,偏差小,响应时间短,还具有抗振动、稳定性好、准确度高、耐高压等优点,其得到了广泛的应用,本设计即采用 PT100 作为温度传感器。主要技术指标:1. 测温范围:-200600 摄氏度;2. 测温精度:0.5 摄氏度;3. 稳定性:0.5 摄氏度 Pt100 是电阻式温度传感器,测温的本质其实是测量传感器的电阻,通常是将电阻的变化转换成电压或电流等模拟信号,然后再将模拟信号转换成数字信号,再由处理器换算出相应温度。采用 Pt100 测量

14、温度一般有两种方法:1、设计一个恒流源通过 Pt100 热电阻,通过检测 Pt100 上电压的变化来换算出温度;测温原理:通过运放U1A将基准电压4.096V转换为恒流源,电流流过Pt100时在其上产生压降,再通过运放U1B将该微弱压降信号放大(图中放大倍数为10) ,即输出期望的电压信号,该信号可直接连AD转换芯片。根据虚地概念“工作于线性范围内的理想运放的两个输入端同电位” ,运放U1A的“+”端和“-”端电位V+V-4.096V;假设运放U1A的输出脚1对地电压为Vo,根据虚断概念, (0-V-)/R1+(Vo-V-)/RPt1000,因此电阻Pt100上的压降VPt100Vo-V-V-

15、*RPt100/R1,因V-和R1均不变,因此图1虚线框内的电路等效为一个恒流源流过一个Pt100电阻,电流大小为V- /R1,Pt100上的压降仅和精选优质文档-倾情为你奉上专心-专注-专业其自身变化的电阻值有关。设计及调试注意点: 1. 等效恒流源输出的电流不能太大,以不超过1mA为准,以免电流大使得Pt100电阻自身发热造成测量温度不准确,试验证明,电流大于1.5mA将会有较明显的影响。2. 运放采用单一5V供电,如果测量的温度波动比较大,将运放的供电改为15V双电源供电会有较大改善。3. 电阻R2、R3的电阻值取得足够大,以增大运放的U1B的输入阻抗。 图 1恒流源式测温电路由于封装问

16、题,实际原理图如下:精选优质文档-倾情为你奉上专心-专注-专业方案二:采用惠斯顿电桥,电桥的四个电阻中三个是恒定的,另一个用Pt100 热电阻,当 Pt100 电阻值变化时,测试端产生一个电势差,由此电势差换算出温度。 测温原理:电路采用TL431和电位器VR1调节产生4.096V的参考电源;采用R1、R2、VR2、Pt100构成测量电桥(其中R1R2,VR2为100精密电阻) ,当Pt100的电阻值和VR2的电阻值不相等时,电桥输出一个mV级的压差信号,这个压差信号经过运放LM324放大后输出期望大小的电压信号,该信号可直接连AD转换芯片。差动放大电路中R3R4、 R5R6、放大倍数R5/R

17、3,运放采用单一5V供电。 设计及调试注意点: 1. 同幅度调整R1和R2的电阻值可以改变电桥输出的压差大小; 2. 改变R5/R3的比值即可改变电压信号的放大倍数,以便满足设计者对温度范围的要求 3. 放大电路必须接成负反馈方式,否则放大电路不能正常工作。4. VR2也可为电位器,调节电位器阻值大小可以改变温度的零点设定,例如Pt100的零点温度为0,即0时电阻为100,当电位器阻值调至109.885时,温度的零点就被设定在了25。测量电位器的阻值时须在没有接入电路时调节,这是因为接入电路后测量的电阻值发生了改变。5. 理论上,运放输出的电压为输入压差信号放大倍数,但实际在电路工精选优质文档

18、-倾情为你奉上专心-专注-专业作时测量输出电压与输入压差信号并非这样的关系,压差信号比理论值小很多,实际输出信号为4.096*(RPt100/(R1+RPt100)- RVR2/(R1+RVR2) (1)式中电阻值以电路工作时量取的为准。 6. 电桥的正电源必须接稳定的参考基准,因为如果直接VCC的话,当网压波动造成VCC发生波动时,运放输出的信号也会发生改变,此时再到以VCC未发生波动时建立的温度-电阻表中去查表求值时就不正确了,这可以根据式(1)进行计算得知。 图2三线制接法桥式测温电路放大电路的设计放大电路的设计本次放大电路我选用的是 LM358,其内部包括有两个独立的、高增益、内部频率

19、补偿的双运算放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。它的使用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运算放大器的场合。LM358 特性(FEATURES): 信号调理电路信号调理电路调理电路的作用是将来自于现场传感器的信号变换成前向通道中 A/D 转换器能识别的信号,作为本系统,由于温度传感器是热电阻 PT100,因此调理电路完成的是怎样将与温度有关的电阻信号变换成能被 A/D 转换器接受的电压信号。A/DA/D 转换器的选择与设计电路转换器的选择与设计电路在我们所测控的信号中均是连续变化的物理量,通

20、常需要用计算机对这些信号进行处理,则需要将其转换成数字量,A/D 转换器就是为了将连续变化的精选优质文档-倾情为你奉上专心-专注-专业模拟量转换成计算机能接受的数字量。根据 A/D 转换器的工作原理,常用的A/D 转换器可分为两种,双积分式 A/D 转换器和逐次逼近式 A/D 转换器。1. 双积分 A/D 转换器工作原理2. 逐次逼近型 A/D 转换器工作原理在本设计系统中,为了将模拟量温度转换成数字量,采用德州仪器公司生产的 4 通道 12 位串行输出采样模数转换器 ADS7841。具体连线如下图所示:单片机控制电路单片机控制电路本设计是采用 AT89C51 单片机作为主控电路,AT89C5

21、1 单片机是 Atmel 公司的产品,与 Intel 公司的 MCS51 系列兼容。在 AT89C51 单片机内部有作为程序存储器的 Flash 存储器,其容量为 4KB,可以承受不低于 1000 次的反复擦写,调试比较方便。其中 P1 口为 A/D 转换器的通信端口,P2 口为按键控制,P0 口为 LCD 的数据端口,具体电路图如下:精选优质文档-倾情为你奉上专心-专注-专业按键和显示电路按键和显示电路本次设计使用 4x4 矩阵键盘,将其行线以及列线接到单片机的 P2 口,其中列线接上拉电阻然后在通过异或逻辑门在接至单片机的 P2.0 到 P2.3 口。具体连线如下图所示:显示电路显示电路本

22、次设计使用 LCD12864 来显示温度采集结果,其中将 LCD 的数据口接入单片机的 P0 口,具体接线如下图所示:精选优质文档-倾情为你奉上专心-专注-专业 软件设计软件设计系统软件设计说明系统软件设计说明进行微机测量控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个测量对象的实际需要设计应用程序。因此,软件设计在微机测量控制系统设计中占重要地位。对于本系统,软件设计更为重要。在单片机测量控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便达到测量控制目的。软件设

23、计主要是对温度进行采集、显示,通过按键操作,进行时间的设置与修改。因此,整个软件可分为温度采集子程序、时钟读取程序、按键子程序、显示子程序、及系统主程序。软件的有关算法软件的有关算法1、最小二乘理论获取温度电阻公式 根据误差理论,我们要获得较高精度的温度测量值,办法一般有 2 个,要精选优质文档-倾情为你奉上专心-专注-专业么采用查表法,要么建立高精度的数学模型。如果用查表法,主要有 2 个问题,如果要提高测量精度,则需要建立大量的表格,而且得提前做大量得试验来进行多点校正,还有一个问题是程序的通用性差,这台仪器上校正好得数据可能在另一台上不合适。而采用已知的分度表,建立数学模型,然后通过工程

24、量(标度)变换,通过测量 A/D 转换的结果后计算得到。这里我们考虑第 2 种方法的优点,首先采用分段的方法,将测量范围分段,然后查出该段的数学模型的各个系数,然后计算出温度值,这里,由于时间的关系,我们对整个测量范围分了 3 段,分别为 049、5070、71100,利用分度表进行离线的数学拟合,得到各段的数学模型系数。同时,可通过再将标度值代入可粗略估计在各个测量段内的最大误差值。 我们通过最小二乘法进行线性拟合,得到如下的数学模型为: T1=2.5772R-257.7708 0-49 T2=2.6366R-267.01 5070 T3=2.7206R-281.90 71100上述 3 个

25、数学模型中,最大的理论误差值都小于 0.5,能够满足精度要求,实际上如果有足够的时间,我们完全可以分得再细一些,这样理论的误差将会变得更小。2、标度变换公式的获取根据上述的线性拟合结果:T=AR-B,这里的 A、B 是上述不同温度段的系数,而 R 值由于在输出为 0V 时,实际上有个对应于 100 欧姆的偏置电路,因此根据 R-R0=U/I,而 I=2.500V/1.500K,而 AD/U/G=4096/4.900V,这里的 AD 值为 A/D 转换得结果 G 为放大器的增益,本设计中的二级放大器放大的倍数为 80倍。将上述条件代入得:T=A(4.9AD/4096/G/I+100)-B软件的流

26、程图软件的流程图精选优质文档-倾情为你奉上专心-专注-专业 开始系统初始化PT100 温度数据采集处理读到的数据送 LCD 显示结束开始初始化函数A/D 转换器进行 A/D 转换将转换后的电压转换为温度返回 图 1 系统总流程图 图 2 温度转换程序流程图 开始系统初始化调用温度子程序调用显示子程序调用扫描按键程序开始将温度数据写入到LCD读取温度值显示温度值返回 图 3 显示流程图 图 4 主函数流程图主程序主程序ADS7841 驱动程序驱动程序#include #include #include delay.h#include ads7841.h#include LCD1602.h/-AD

27、S7841 控制字节-精选优质文档-倾情为你奉上专心-专注-专业#define control_byte 0b/bit val description/bit7 1 start,恒为 1/bit6,5,4 001 选择 CH0 为+IN/bit4 1 选择为单端输入/bit2 X 外部 MODE 接 GND,该位无作用,恒为 12 位/bit1,0 00 转换期间 ADC 为掉电模式void port_init(void) PORTA = 0 xFF;/将所有端口初始化为输入,打开上拉 DDRA = 0 x00; PORTB = 0 xFF; DDRB = 0 x00; PORTC = 0 x

28、FF; DDRC = 0 x00; PORTD = 0 xFF; DDRD = 0 x00; PORTE = 0 xFF; DDRE = 0 x00; PORTF = 0 xFF; DDRF = 0 x00; PORTG = 0 xFF; DDRG = 0 x00;void main() unsigned int result; unsigned char i,array4,table=;精选优质文档-倾情为你奉上专心-专注-专业 port_init(); /端口初始化 LCD1602_init(); /1602 液晶初始化 ads7841_init(); /ADS7841 初始化 LCD_w

29、rite_string(0 x80,result:); while(1) ads7841_start(); /启动 ADS7841,即拉低 CS delay_nus(10); result=ads7841_W_R(control_byte); /发送控制字,并得到转换数据 result&=0b11111; /屏蔽掉高四位 delay_nus(10); ads7841_finish(); /停止 ADS7841,即拉高 CS for(i=0;i4;i+) /以下均为显示部分 arrayi=result%10;/ esult/=10; for(i=0;i4;i+) LCD_write_on

30、echar(0 x87+i,tablearray3-i); delay_nms(300);#ifndef _ads7841_h#define _ads7841_hdefine DCLK PD0#define DCLK_ddr DDRD精选优质文档-倾情为你奉上专心-专注-专业#define DCLK_port PORTD#define DCLK_pin PIND#define CS PD1#define CS_ddr DDRD#define CS_port PORTD#define CS_pin PIND#define DIN PD2#define DIN_ddr DDRD#define DI

31、N_port PORTD#define DIN_pin PIND#define BUSY PD3#define BUSY_ddr DDRD#define BUSY_port PORTD#define BUSY_pin PIND#define DOUT PD4#define DOUT_ddr DDRD#define DOUT_port PORTD#define DOUT_pin PINDdefine ads7841_start() CS_port&=(1CS) /启运 ADS7841#define ads7841_finish() CS_port|=(1CS) /停止 ADS7841vo

32、id ads7841_init(void);unsigned int ads7841_W_R(unsigned char byte);#endif#include #include #include delay.h#include ads7841.h/*精选优质文档-倾情为你奉上专心-专注-专业* * 函数名称:ads7841_init()* * 函数功能:初始化 ADS7841 端口* * 备 注:无*/void ads7841_init(void)DCLK_port&=(1DCLK); /时钟端初始化为输出低电平DCLK_ddr|=(1DCLK);CS_port|=(1CS); /

33、片选端初始化为输出高电平CS_ddr|=(1CS); /即不选中 ADS7841DIN_port&=(1DIN); /数据输入端初始化为输出低电平DIN_ddr|=(1DIN);BUSY_port|=(1BUSY); /忙信号初始化为输入,打开上拉BUSY_ddr&=(1BUSY);DOUT_port|=(1DOUT); /数据输出初始化为输入,打开上拉DOUT_ddr&=(1DOUT);/* * 函数名称:ads7841_W_R* * 函数功能:向 ADS7841 写入控制字节,读出转换好的数* * 输入参数:unsigned char byte : 控制字节 uns

34、igned int result: AD 转换好的数* * 备 注:数据从高位到低位写入,从高位到低位读出精选优质文档-倾情为你奉上专心-专注-专业*/unsigned int ads7841_W_R(unsigned char byte)unsigned char i,temp;unsigned int result=0;for(i=0;i8;i+) /8 位数据计数 DCLK_port&=(1DCLK); /拉低时钟端 if(byte&0 x80) /当前位是否是 1 DIN_port|=(1DIN); /当前位是 1,拉高数据端 else DIN_port&=(1

35、DIN); /当前位是 0,拉低数据端 delay_nus(10); /调整时钟和脉冲宽度 DCLK_port|=(1DCLK); /时钟上升沿 delay_nus(10); byte=1; /数据左移 1 位,为送出新数据位做准备 delay_nus(10);DCLK_port&=(1DCLK); /拉低时钟端delay_nus(10);i=BUSY_pin; /读 BUSY 的状态delay_nus(10);if(i&(1BUSY) /如果为高则说明转换完成,应将其读出精选优质文档-倾情为你奉上专心-专注-专业/-以下先读出高八位- for(i=1;i=8;i+) resu

36、lt=1; /保存读入的数据位 DCLK_port|=(1DCLK); /时钟上升沿 delay_nus(10); DCLK_port&=(1DCLK); /拉低时钟端 elay_nus(10); if(DOUT_pin&(1DOUT) result|=0 x01; else result&=0 xfe; /-以下读出低四位- for(i=1;i=4;i+) temp=1; /保存读入的数据位 DCLK_port|=(1DCLK); /时钟上升沿 delay_nus(10);精选优质文档-倾情为你奉上专心-专注-专业 DCLK_port&=(1DCLK); /拉

37、低时钟端 delay_nus(10); if(DOUT_pin&(1DOUT) temp|=0 x01; else temp&=0 xfe; for(i=1;i=4;i+) /再给 ADS7841 四个时钟 DCLK_port|=(1DCLK); /时钟上升沿 delay_nus(10); /调整时钟和脉冲宽度 DCLK_port&=(1DCLK); /拉低时钟端 delay_nus(10); /调整时钟和脉冲宽度 result=(result=32) /再送 X 地址 lcdwc(GXPOS/16+8)|0 x80); else lcdwc(GXPOS/16)|0 x

38、80);精选优质文档-倾情为你奉上专心-专注-专业 lcdwc(0 x30); /恢复为基本指令集void lcdon(void) /LCD 显示开启子程序 lcdwc(0 x30); /设置为基本指令集 lcdwc(0 x0c);void lcdoff(void) /LCD 显示关闭子程序 lcdwc(0 x30); /设置为基本指令集 lcdwc(0 x08);void lcdgraphon(void) /绘图区域显示开启子程序 lcdwc(0 x36); lcdwc(0 x30); /恢复为基本指令集void lcdgraphoff(void) /绘图区域显示关闭子程序 lcdwc(0

39、x34); lcdwc(0 x30); /恢复为基本指令集void lcdwd(unsigned char d) /向液晶显示控制器写数据 CSPIN=1; /片选使能 transbyte(0 xfa); /SYNCODE=0F8H,RW=0,RS=1,D0=0 transbyte(d&0 xf0); /送高四位数据,低四位补零精选优质文档-倾情为你奉上专心-专注-专业 transbyte(d&0 x0f)4); /送低四位数据 CSPIN=0; /片选禁止void lcdwc(unsigned char c) /向液晶显示控制器送指令 CSPIN=1; /片选使能 trans

40、byte(0 xf8); /SYNCODE=0F8H,RW=0,RS=0,D0=0 transbyte(c&0 xf0); /送高四位数据,低四位补零 transbyte(c&0 x0f)4); /送低四位数据 CSPIN=0; /片选禁止void transbyte(unsigned char d) /送 1 字节数据到液晶显示控制器子程序 unsigned char i; for(i=0;i8;i+) if(d&0 x80) = 0 x80) transbit(1); else transbit(0); d=1; /从高到低位送字节位数据到液晶显示控制器 void

41、transbit(bit d) /送 1 位数据到液晶显示控制器子程序 STDPIN = d; /先送数据到数据口线 DI精选优质文档-倾情为你奉上专心-专注-专业 _nop_(); SCLKPIN = 1; /再使时钟口线发一个负脉冲 _nop_(); SCLKPIN = 0; _nop_(); SCLKPIN = 1; 总结总结 本温度测量系统设计,是采用 PT100 温度传感器经过放大和 A/D 转换器送到单片机进行控制温度显示。另外本系统还可以通过外接电路扩展实现温度报警功能,从而更好的实现温度现场的实时控制。 经过多次的修改和调试测量,本设计基本符合设计要求,由于受人为因素和软硬件的

42、限制,系统难免不了带来一些误差,但通过调节和精确计算可以减小误差。通过本次温度测量系统的设计,我对温度测量控制有了进一步的熟悉和更深入的学习。在整个设计的过程中,本设计的重点和难点是:怎样将 PT100 热电阻的非电量信号转换为单片机单片机能识别的电量信号,其中的信号如何放大及放大倍数的确定等等。这次课程设计虽然时间比较紧,从一开始的课题确定,到后来的资料查找、理论学习,再在后来的画原理图和编程,这一切都使我的理论知识和动手能力进一步得到提升。在画原理图、电路仿真和调试过程中不可避免地遇到各种问题,这要求保持沉着冷静,联系书本理论知识积极地思考,但是最后还是在老师以及同学的帮助下圆满解决了这些

43、问题,实现了整个系统设计与最后调试,相关指标达到预期的要求,很好地完成了本次设计任务。通过本次毕业设计,我了解并掌握了传感器的基本理论知识,更深入的掌握单片机的开发应用和编程控制。为以后从事单片机软硬件产品的设计开发、打下了良好的基础,树立独立从事产品研发的信心,并在这种能力上得到了比较充分的锻炼。 参考文献参考文献精选优质文档-倾情为你奉上专心-专注-专业【1】王化祥,张淑英。传感器原理及应用M。天津:天津大学出版社,2005年;【2】张俊謨。单片机中级教程M 。北京:北京航空航天大学出版社,2006年;【3】李志全等。智能仪表设计原理及应用M。国防工业出版社,1998 年;【4】郑建国。一

44、种高精度的铂电阻温度测量方案,自动化仪表M,1997 年;【5】杨振江等.智能仪器与数据采集系统中的新器件及应用M,西安电子科技大学出版社,2001 年;【6】周航慈.单片机应用程序设计M,北京航空航天大学出版社,1991 年;【7】李建民.单片机在温度控制系统中的应用M,江汉大学学报,1996 年。附录附录 1 1 WZP 型铂热电阻(Pt100)分度特性表(-140+140)温度0123456789电阻值()-20018.52-140-13043.8848.0043.4647.5943.0547.1842.6346.7742.2246.3641.8045.9441.3945.5340.9745.1240.5644.7040.1444.29精选优质文档-倾情为你奉上专心-专注-专业-120-110-10052.1156.1960.2651.7055.7959.8551.2955.3859.4450.8854.9759.0450.4754.5658.6350.0654.1558.2349.6553.7557.8249.2453.3457.4148.8352.9357.0148.4252.5256.60-90-80-70-60-5064.3068.3372.3376.3380.3163.906

温馨提示

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

评论

0/150

提交评论