




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于pt100热电阻的简易温度测量仪 摘摘 要要: 本文首先简要介绍了铂电阻 pt100 的特性以及测温的方法,在此基础上阐 述了基于 pt100 的温度测量系统设计。在本设计中,是以铂电阻 pt100 作为温 度传感器,采用恒流测温的方法,通过单片机进行控制,用放大器、a/d 转换 器进行温度信号的采集。通过对电路的设计,减小了测量电路及 pt100 自身的 误差,使温控精度在 0100范围内达到0.1。 本文采用 stc89c52rc 单片机,tlc2543 a/d 转换器,ad620 放大器,铂电 阻 pt100 及液晶系统,编写了相应的软件程序,使其实现温度及温度曲线的实 时显示。该系
2、统的特点是:使用简便;测量精确、稳定、可靠;测量范围大; 使用对象广。 关键词:关键词: pt100 单片机 温度测量 ad620 tl431 abstractabstract this article briefly describes the characteristics of pt100 platinum resistance and temperature measurement method, on the basis it describes the design of temperature measurement system based on pt100. in this
3、design, it is use a pt100 platinum resistance as temperature sensor, in order to acquisition the temperature signal, it use of constant-current temperature measurement method and use single-chip control, amplifier, a / d converter. it can still improve the perform used two-wire temperature circuit a
4、nd reduce the measurement eror. the temperature precision is reached 0.1 between 0100. the system contains scm(stc89c52), analog to digital convert department (tlc2543), ad620 amplifier, pt100 platinum, lcd12864, write the corresponding software program to achieve real-time temperature display. the
5、system is simple , accurate , stable and wide range. keywords:keywords: pt100 mcu temperature measures ad620 tl431 目录目录 前 言.4 第一章 方案设计与论证.6 1.1 传感器的选择.6 1.2 方案论证.7 1.3 系统的工作原理.8 1.4 系统框图.9 第二章 硬件设计.9 2.1 pt100 传感器特性和测温原理.9 2.2 硬件框图以及简要原理概述.11 2.3 恒流源模块测温模块设计方案.11 2.4 信号放大模块.12 2.5 a/d 转换模块.15 2.6 单片
6、机控制电路.18 2.7 显示模块.19 第三章 软件设计.19 3.1 系统总流程的设计.19 3.2 主函数的设计.20 3.3 温度转换流程图的设计.21 3.4 显示流程图.21 3.5 按键流程的设计.22 第四章 数据处理与性能分析.23 4.1 采集的数据及数据处理.23 4.2 性能测试分析.23 第五章 结论与心得.24 1 结论.24 2 心得.24 附录 1 原理图.25 附录 2 元器件清单.26 附录 3 程序清单.27 前前 言言 随着科技的发展和“信息时代”的到来,作为获取信息的手段传感器 技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越 来越
7、迫切。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常 重要的。 传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。因 此,不仅必须掌握各类传感器的结构、原理及其性能指标,还必须懂得传感器 经过适当的接口电路调整才能满足信号的处理、显示和控制的要求,而且只有 通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和 信息通信与信息处理结合起来,适应传感器的生产、研制、开发和应用。另一 方面,传感器的被测信号来自于各个应用领域,每个领域都为了改革生产力、 提高工效和时效,各自都在开发研制适合应用的传感器,于是种类繁多的新型 传感器及传感器系统不断涌现。温度传感器
8、是其中重要的一类传感器。其发展 速度之快,以及其应用之广,并且还有很大潜力。 为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其 用法与用途,基于实用、广泛和典型的原则而设计了本系统。本文利用单片机 结合温度传感器技术而开发设计了这一温度测量系统。文中将传感器理论与单 片机实际应用有机结合,详细地讲述了利用热电阻作为温度传感器来测量实时 的温度,以及实现热电转换的原理过程。 本设计应用性比较强,设计系统可以作为温度测量显示系统,如果稍微改 装可以做热水器温度调节系统、生产温度监控系统等等。本课题主要任务成环 境温度检测并显示温度和实时的时间。设计后的系统具有操作方便,控制灵活 移
9、植性强等优点。 本设计系统包括温度传感器,信号放大电路,a/d 转换模块,数据处理与 控制模块,温度、显示模块六个部分。文中对每个部分功能、实现过程作了详 细介绍。整个系统的核心是进行温度测量与显示,完成了课题所有要求。 第一章第一章 方案设计与论证方案设计与论证 1.1 传感器的选择 本设计目的是式设计一个测温系统。首先要考虑的就是温度传感器的选择。 温度传感器从使用的角度大致可分为接触式和非接触式两大类,前者是让温度 传感器直接与待测物体接触,而后者是使温度传感器与待测物体离开一定的距 离,检测从待测物体放射出的红外线,达到测温的目的。在接触式和非接触式 两大类温度传感器中,相比运用多的是
10、接触式传感器,非接触式传感器一般在 比较特殊的场合才使用,目前得到广泛使用的接触式温度传感器主要有热电式 传感器,其中将温度变化转换为电阻变化的称为热电阻传感器,将温度变化转 换为热电势变化的称为热电偶传感器。 热电阻传感器可分为金属热电阻式和半导体热电阻式两大类,前者简称热 电阻,后者简称热敏电阻。常用的热电阻材料有铂、铜、镍、铁等,它具有高 温度系数、高电阻率、化学、物理性能稳定、良好的线性输出特性等,常用的 热电阻如 pt100、pt1000 等。近年来各半导体厂商陆续开发了数字式的温度传 感器,如 dallas 公司 ds18b20,maxim 公司的 max6576、max6577,
11、adi 公司的 ad7416 等,这些芯片的显著优点是与单片机的接口简单,如 ds18b20 该温度传 感器为单总线技术,maxim 公司的 2 种温度传感器一个为频率输出,一个为周 期输出,其本质均为数字输出,而 adi 公司的 ad7416 的数字接口则为近年也 比较流行的 i2c 总线,这些本身都带数字接口的温度传感器芯片给用户带来了 极大的方便,但这类器件的最大缺点是测温的范围太窄,一般只有- 55+125,而且温度的测量精度都不高,好的才0.5,一般有2左右, 因此在高精度的场合不太满足用户的需要。 热电偶是目前接触式测温中应用也十分广泛的热电式传感器,它具有结构 简单、制造方便、测
12、温范围宽、热惯性小、准确度高、输出信号便于远传等优 点。常用的热电偶材料有铂铑-铂、铱铑-铱、镍铁-镍铜、铜-康铜等,各种不 同材料的热电偶使用在不同的测温范围场合。热电偶的使用误差主要来自于分 度误差、延伸导线误差、动态误差以及使用的仪表误差等。 非接触式温度传感器主要是被测物体通过热辐射能量来反映物体温度的高 低,这种测温方法可避免与高温被测体接触,测温不破坏温度场,测温范围宽, 精度高,反应速度快,既可测近距离小目标的温度,又可测远距离大面积目标 的温度。目前运用受限的主要原因一是价格相对较贵,二是非接触式温度传感 器的输出同样存在非线性的问题,而且其输出受与被测量物体的距离、环境温 度
13、等多种其它因素的影响。 由于本设计的任务是要求测量的范围为 0100,测量的分辨率为 0.1,综合价格以及后续的电路,决定采用线性度相对较好的 pt100 作为 本课题的温度传感器,具体的型号为 wzp 型铂电阻,该传感器的测温范围从 200650。具体在 0100的分度特性表见附录 a 所示。 1.2 方案论证 温度测量的方案有很多种,可以采用传统的分立式传感器、模拟集成传感 器以及新兴的智能型传感器。 方案一:采用模拟分立元件 如电容、电感或晶体管等非线形元件,该方案设计电路简单易懂,操作简 单,且价格便宜,但采用分立元件分散性大,不便于集成数字化,而且测量误 差大。 方案二:采用温度传感
14、器 通过温度传感器采集温度信号,经信号放大器放大后,送到 a/d 转换芯片, 将模拟量转化为数字量,传送给单片机控制系统,最后经过液晶显示温度。 热电阻也是最常用的一种温度传感器。它的主要特点是测量精度高,性能 稳定,使用方便,测量范围为-200650,完全满足要求,考虑到铂电阻 的测量精确度是最高的,所以我们设计最终选择铂电阻 pt100 作为传感器。该 方案采用热电阻 pt100 做为温度传感器、ad620 作为信号放大器,tlc2543 作 为 a/d 转换部件,对于温度信号的采集具有大范围、高精度的特点。相对与方 案一,在功能、性能、可操作性等方面都有较大的提升。在这里我选用方案二 完
15、成本次设计。 1.3 系统的工作原理 测温的模拟电路是把当前 pt100 热电阻传感器的电阻值,转换为容易测量 的电压值,经过放大器放大信号后送给 a/d 转换器把模拟电压转为数字信号后 传给单片机 stc89c52rc,单片机再根据公式换算把测量得的温度传感器的电阻 值转换为温度值,并将数据送出到液晶进行显示。 1.4 系统框图 本设计系统主要包括温度信号采集单元,单片机数据处理单元,时间、温 度显示单元。其中温度信号的数据采集单元部分包括温度传感器、温度信号的 获取电路(采样) 、放大电路、a/d 转换电路。 系统的总结构框图如图 1-1 所示。 信号放大 调理电路 pt100 温 度传感
16、器 a/d 转换 电路 复位电 路 按键控 制电路 stc89c52rc 单 片机 液晶显 示电路 图 1-1 系统的总结构框图 第二章第二章 硬件设计硬件设计 2.1 pt100 传感器特性和测温原理 电阻式温度传感器(rtd, resistance temperature detector)是指一种物 质材料作成的电阻,它会随温度的改变而改变电阻值。 pt100 温度传感器是一种以铂(pt)做成的电阻式温度传感器,属于正电阻 系数,其电阻阻值与温度的关系可以近似用下式表示: 在 0650范围内: rt =r0 (1+at+bt2) (公式 1) 在-2000范围内: rt =r0 (1+a
17、t+bt2+c(t-100)t3) (公式 2) 式中 a、b、c 为常数, a=3.9684710-3; b=-5.84710-7; c=-4.2210-12; 由于它的电阻温度关系的线性度非常好,因此在测量较小范围内其电阻 和温度变化的关系式如下:r=ro(1+t) ,其中 =0.00392, ro 为 100(在 0的电阻值),t 为华氏温度,因此铂做成的电阻式温度传感器,又称为 pt100。 pt100 温度传感器的测量范围广:-200+650,偏差小,响应时间短, 还具有抗振动、稳定性好、准确度高、耐高压等优点,其得到了广泛的应用, 本设计即采用 pt100 作为温度传感器。 主要技
18、术指标:1. 测温范围:-200650 摄氏度;2. 测温精度:0.1 摄 氏度;3. 稳定性:0.1 摄氏度 pt100 是电阻式温度传感器,测温的本质其实是测量传感器的电阻,通常 是将电阻的变化转换成电压或电流等模拟信号,然后再将模拟信号转换成数字 信号,再由处理器换算出相应温度。采用 pt100 测量温度一般有两种方案: 方案一:设计一个恒流源通过 pt100 热电阻,通过检测 pt100 上电压的 变化来换算出温度。 方案二:采用惠斯顿电桥,电桥的四个电阻中三个是恒定的,另一个用 pt100 热电阻,当 pt100 电阻值变化时,测试端产生一个电势差,由此电势差 换算出温度。 两种方案
19、的区别只在于信号获取电路的不同,其原理上基本一致。 2.2 硬件框图以及简要原理概述 本电路通过电源模块给温度感应模块提供一个稳定的电源使其正常工作。 再将温度感应模块产生的信号通过信号放大模块就行放大,最后将放大的信号 送a/d转换。 图2-1 硬件框图 2.3 恒流源模块测温模块设计方案 本电路是基于热敏电阻pt100 的温度检测电路,pt100 的电阻值会随着温 度的变化而变化,故电源模块可设计一个横流源电路使得通过pt100 的电流恒 定不变,这时当温度变化时pt100 的阻值发生变化,电压也就能发生相应的线 性变化。只要通过对pt100两端的电压进行处理就能测得外界环境的温度。 图2
20、-2 恒流源电路及信号放大电路 本电路中恒流源电路是基于tl431 稳压集成电路设计的高精度恒流源,电 路图如图2-2所示。当tl431 两端接上电压后其参考极将输出稳定的2.5v 的电 压,但是tl431的阴极和阳极不能直接接在电压上所以需要串上一个电阻进行 分压,本电路中使其串上1500的电阻。当tl431 的参考极和地端之间接上一 个电阻时该之路的电流就是一个恒定的电流,这时再如图中所示接上一个处于 放大区的三级管使其发射极和集极的电流近乎相等,这时通过连接在集极的 pt100 热敏电阻的电流就是恒定值。由于通过pt100 的电流需要在11.5ma 内, 以及为了计算的方便,在本电路中理
21、想情况下我们要使通过pt100 的电流约为 1ma。 2.4 信号放大模块 2.4.1 pt100 的特性 由于热敏电阻pt100 的电阻对温度的改变量比较小只有几十欧姆的变化 (pt100 分度表如表一所示) ,所以其两端的电压差相对来说是一个很小的值, 所以需要对该电压信号进行放大。 表2-1一pt100 分度表 2.4.2 放大器 ad620 放大器的选择好坏对提高测量精度也十分关键,根据查阅的相关资料,在 放大器电路精选中,一般在首级放大器有低噪声、低输入偏置电流、高共模抑 制比等要求的大多采用自制的三运放结构,如下图2-3所示,三运放中由 a1、a2构成前级对称的同相、反相输入放大器
22、,后级为差动放大器,在这个结 构图中,要保证放大器高的性能,参数的对称性与一致性显得尤为重要,不仅 包括外围的电阻元件r1与r2、r3与r4、r5与r6,还包括a1与a2放大器的一致性, 因此,要自制高性能的放大器对器件要求相当高。随着微电子技术的发展,市 场上出现了专用的高性能的仪用放大器,它的内部核心结构还是三运放,但是, 采用微电子来解决刚才的参数匹配问题已不是什么复杂的问题。 + - a1 + - a2 + - a3 r2r1 r7r6 r3 r5 r4 v in v out 图 2-3 三运放结构的高性能放大器原理图 随着近年来微电子技术的发展,市面上出现了不少专用的高性能的芯片,
23、ad620、ad623 就是具有上述描述的三运放结构,在本设计中我们根据手中的元 器件材料最终选择了 ad620 作为放大器电路的首级放大。 ad620 是低价格、低功耗仪用放大器,它只需要一只外部电阻就可设置 11000 倍的放大增益,它具有较低的输入偏置电流、较快的建立时间和较高 的精度,特别适合于精确的数据采集系统,如称重和传感器接口,也非常适合 医疗仪器的应用系统(如 ecg 检测和血压监视) 、多路转换器及干电池供电的 前置放大器使用。 ad620 的内部结构是由 op-07 组成的三运放结构,性能大大优于自制的三 运放 ic 电路设计,其基本接法是在 1 脚与 8 脚之间外接一 r
24、g 电阻,增益由式 g=1+49.4k/rg 确定,由于它的外围电路十分简单,所以它在本系统中的应用 见下图 2-4 所示。 由于我们的温度测量范围是 0100,而此时的温度传感器的电阻值根据 分度表为 100 欧姆138.51 欧姆,由于我们设计的恒流源为 5/3 毫安,因此 ad620 的输入端为 166.7 毫伏,假设考虑我们的 tlc2543 的最大输入为 5.000v,我们设计的放大器的增益在尽量保证分辨率的条件下,则为 20 倍, 假设我们只用一个 ad620,则 ad620 的输出为 2v5v(tlc 只能转换 5v),这样 12 位的 a/d 转换器的分辨率则大于题目的要求 0
25、.1,因此,我们必须将 100 欧姆以下的值通过偏置的方法将其减掉,然后通过增加放大倍数来尽量提高分 辨率,这里我们设计的偏置电路同样见下图 5 所示。这里设计的首级放大器的 倍数是 20 倍,而后级放大则为 4 倍,合计的放大倍数为 80 倍,这样就完全满 足设计分辨率的要求。 r9 10k r7 40k 8 5 3 2 6 74 1 u3 ad620 8 5 3 2 6 74 1 u2 op-07 vr1 2k r8 2k vr2 4k vcc +12v -12v +12v -12v r10 10k a0 2 3 传传传传 传传传1传传传2传传传传传 传传传传传传传传 图 2-4 放大电路
26、 2.5 a/d 转换模块 2.5.1 tlc2543 简介 在本设计系统中,为了将模拟量温度转换成数字量,采用德州仪器公司生 产的 12 位开关电容型逐次逼近模数转换器 tlc2543,它具有三个控制输入端, 采用简单的 3 线 spi 串行接口可方便地与微机进行连接,是 12 位数据采集系 统的最佳选择器件之一。 tlc2543 与外围电路的连线简单,三个控制输入端为 cs(片选)、输入/输 出时钟(i/o clock)以及串行数据输入端(data input)。片内的 14 通道多路器 可以选择 11 个输入中的任何一个或 3 个内部自测试电压中的一个,采样保 持是自动的,转换结束,eo
27、c 输出变高。 2.5.2 tlc2543 的主要特性 (1) 11 个模拟输入通道; (2) 66ksps 的采样速率; (3) 最大转换时间为 10s; (4) spi 串行接口; (5) 线性度误差最大为1lsb; (6) 低供电电流(1ma 典型值); (7) 掉电模式电流为 4a。 2.5.3 tlc2543 引脚简介 tlc2543 的引脚排列如图 2-5 所示。 a0 1 a1 2 a2 3 a3 4 a4 5 a5 6 a6 7 a7 8 a8 9 gnd 10 a9 11 a10 12 r- 13 r+ 14 /cs 15 do 16 di 17 clok 18 eoc 19
28、 vcc 20 tlc2543 图 2-5 tlc2543 的引脚 ain0ain10:模拟输入端,由内部多路器选择。对 4.1mhz 的 i/o clock,驱动源阻抗必须小于或等于 50。 cs:片选端,cs 由高到低变化将复位内部计数器,并控制和使能 data out、data input 和 i/o clock。cs 由低到高的变化将在一个设置时间内 禁止 data input 和 i/o clock。 data input:串行数据输入端,串行数据以 msb 为前导并在 i/o clock 的 前 4 个上升沿移入 4 位地址,用来选择下一个要转换的模拟输入信号或测试电 压,之后 i
29、/o clock 将余下的几位依次输入。 data out:a/d 转换结果三态输出端,在 cs 为高时,该引脚处于高阻状态; 当 cs 为低时,该引脚由前一次转换结果的 msb 值置成相应的逻辑电平。 eoc:转换结束端。在最后的 i/o clock 下降沿之后,eoc 由高电平变为低 电平并保持到转换完成及数据准备传输。 vcc、gnd:电源正端、地。 ref、ref:正、负基准电压端。通常 ref接 vcc,ref接 gnd。最 大输入电压范围取决于两端电压差。 i/o clock:时钟输入/输出端。 tlc2543 每次转换和数据传送使用 16 个时钟周期,且在每次传送周期之间 插入
30、cs 的时序。根据 tlc2543 时序图可以看出,在 tlc2543 的 cs 变低时开始 转换和传送过程,i/o clock 的前 8 个上升沿将 8 个输入数据位键入输入数据 寄存器,同时它将前一次转换的数据的其余 11 位移出 data out 端,在 i/o clock 下降沿时数据变化。当 cs 为高时, i/o clock 和 data input 被禁 止,data out 为高阻态。 tlc2543 与单片机的连接如图所示。 a0 1 a1 2 a2 3 a3 4 a4 5 a5 6 a6 7 a7 8 a8 9 gnd 10 a9 11 a10 12 r- 13 r+ 14
31、 /cs 15 do 16 di 17 clok 18 eoc 19 vcc 20 tlc2543 vcc 5v clok d1 d0 /cs a0 图 2-6 tlc2543 与单片机连接图 2.6 单片机控制电路 本设计是采用 stc89c52rc 单片机作为主控电路,其中 p1 口为 a/d 转换器, p2.0,p2.1,p2.2 为按键控制,p0 为液晶数据端口,p2 为液晶控制端口,用于 对液晶进行控制。如图 8 所示。 图 2- 7 stc89c52rc 单片机控制电路 2.7 显示模块 本设计采用液晶12864来显示温度及温度曲线。其连线图如下: 图2-8 液晶显示 第三章第三章
32、 软件设计软件设计 3.1 系统总流程的设计 本系统先进行初始化,然后pt100进行温度采集,然后经过放大,a/d采集 后由单片机处理读到的数据,然后通过液晶显示温度及温度曲线。流程图如下: 开始 系统初始化 pt100 温度数据采集 处理读到的数据 显示温度及温度曲线 结束 图 3-1 系统总流程图 3.2 主函数的设计 系统初始化,调用温度子程序,调用显示子程序,调用扫描按键程序, 然后循环。流程图如下: 开始 系统初始化 调用温度子程序 调用显示子程序 调用扫描按键程序 图 3-2 主函数流程图 3.3 温度转换流程图的设计 温度转换函数先行初始化,a/d 转换开始工作,单片机将转换后的
33、电压 转换成温度。流程图如下: 开始 初始化函数 a/d 转换器进行 a/d 转换 将转换后的电压转换为温度 返回 图 3-3 温度转换流程图 3.4 显示流程图 主函数将数据写入12864,读取温度值。并显示温度及温度曲线。流程图如 下: 开始 将温度数据写入 12864 液晶 读取温度值 显示温度值及温度曲线 返回 图3-4 显示流程图 3.5 按键流程的设计 图3-5 按键流程图 第四章第四章 数据处理与性能分析数据处理与性能分析 4.1 采集的数据及数据处理 表4-1采集的数据 温度 35.13942.145.1495569748093 电压v 3.443.463.513.543.59
34、3.673.833.863.964.09 通过最小二乘法拟合的直线: y=x* 86.548 - 261.613 (公式3) 4.2 性能测试分析 做实际的电路板时为了调零的需要先将pt100 用100的电阻来代替,模 拟出一个外界温度为0的环境,以便于通过对电位器的调节使其输出电压为 0v。先检查电路各个模块是否能正常工作,如t431 的参考极的电压是否为 2.5v,代替pt100 的100电阻两端的电压是否是0.1v,通过对信号放大模块 中的电位器的调节是否能正常影响信号放大模块和运放加减模块的输出电压。 将电路板调试正常后,调节电位器使电路最终输出端的电压降到0v,但是在实 际调节中输出
35、电压调节到0.6v 时就没有办法继续下调了,由于输出电压是随 电位器的电压上升而下降的,故可能是和电位器串联的电阻r8 设置得太小了。 将100电阻拆下换上pt100 热敏电阻进行实际测量,测得电压为2.1v,测得的 温度为21,而这时用标准的温度传感器测得的温度也为21,在用pt100 测 体温,测得3.6v,为36,误差很小,电路设计成功。故前面的0.6v 的误差 可能是其他原因照成的,但是由于没有尝试其他标准温度的测量还不能对产生 误差的原因进一步分析。 第五章第五章 结论与心得结论与心得 1 结论 根据电路板的测试结果表明电路工作正常,能实现设定的功能,达到指标 要求,但是对低温的测量
36、可能存在着较大的误差。 2 心得 通过这次的课程设计我掌握了一些简单的设计过程和调试方法。在设计一 个电路时可以先查阅相关资料,然后先确定电路中各个模块要实现的功能以及 基本指标,再确定对各个模块中的器件的型号和常数,最后将各个模块联系起 来再进一步进行调整。将设计好的电路放到仿真软件上进行仿真,观察电路以 及各个模块能否按设定的状态工作,最终结果是否正确,将实际电路做出来后 要进行调试,调试时可先测试最终的输出能否达到预想的结果,电路不能正常 工作是要对电路的各个模块进行检查,可以和软件仿真调试时一样检查各个模 块是否正常工作,找到工作不正常的模块后,对该模块的各个性能指标以及各 点输入输出
37、是否正确,然后分析可能产生错误的原因后再进行进一步的排查和 调试。然后不断的重复以上对实际电路的调试过程,直到电路全部正常工作。 在对各个模块进行检测时可先检测电源模块是否正常工作,因为很多错误都是 电源部分出问题导致或可以影响并反映在电压部分上,如在这次的调试过程中 发现大多数同学的电路出现问题都是电源的问题,要么是tl431 烧坏了,要么 是芯片烧坏了影响到了tl431 的参考极的电压,导致电源部分异常。本电路可 以检测tl431 参考极的电压是否正确,发现不正确可先将芯片(尤其是做隔离 网络模块的芯片)取出后检测参考极的电压是否正常,如果发现正常,说明很 可能是芯片烧坏了,如果发现电压还
38、是不正确,那很可能是tl431 烧坏了,更 换器件后再次检查电源部分是否正确,如果发现不正确再排查其他可能性。 附录 1 原理图 附录 2 元器件清单 名称数量 tl4311 op072 ad6201 tlc25431 stc89c52rc1 lcd128641 5102 10k1 1k1 6.8k1 20k1 10k 电位器 1 10uf1 导线 焊锡丝 杜邦线若干 附录 3 程序清单 typedef unsigned char uchar; typedef unsigned int uint; #include #includetlc2543.h #includekey.h #includ
39、elcd_12864.h #includedelay.h uchar code dis_buf1 = ; uchar code dis_buf2 = 当前水温:; uchar code dis_buf3 = 按 14 号键温度曲线; uchar code dis_buf4 = 按 13 号键显示温度; uchar code dis_buf5 = 欢迎使用; uchar code dis_buf6 = pt100 测温系统; uchar code dis_buf7 = 按 15 号键返回; float temp,voltage; void display() lcd_init(); lcd_po
40、s(0,2); str_dis(dis_buf5); lcd_pos(1,0); str_dis(dis_buf6); lcd_pos(2,0); str_dis(dis_buf4); lcd_pos(3,0); str_dis(dis_buf3); void temp_dis() lcd_init(); lcd_pos(0,2); str_dis(dis_buf2); lcd_pos(1,5); str_dis(dis_buf1); lcd_pos(2,1); str_dis(dis_buf7); while(1) voltage = read2543(1); /lcd_pos(0,4);
41、/float_dis(voltage,3); lcd_pos(1,2); temp = voltage * 86.548 - 261.613; float_dis(temp,1); delay_1ms(200); if(key_check() = 1) if(key_event() = 15) display(); return; void curve_dis() uchar i,j; write_cmd(0 x01); lcd_init_pic(); lcd_gdram_clear(); /*建立坐标系*/ lcd12864_drawline_x(0, 127, 63, 1); lcd128
42、64_drawline_y(0, 0, 63, 1); lcd12864_draw_dots(1,1,1); lcd12864_draw_dots(1,2,1); lcd12864_draw_dots(2,2,1); /lcd12864_draw_dots(4,2,1); lcd12864_draw_dots(126,62,1); lcd12864_draw_dots(125,62,1); lcd12864_draw_dots(125,61,1); /lcd12864_draw_dots(126,62,1); /*/ for(i=0; i127; i+) voltage = read2543(
43、1); temp = voltage * 86.548 - 261.613; j = 82 - (uchar)temp; lcd12864_draw_dots(i+1,j,1); delay_1ms(1000); for(;) if(key_check() = 1) if(key_event() = 15) display(); return; void main() uchar key_value; display(); while(1) if(key_check() = 1) key_value = key_event(); switch(key_value) case 13:temp_d
44、is();break; case 14:curve_dis();break; default:break; typedef unsigned char uchar; typedef unsigned int uint; #include #include #includetlc2543.h #define m 5 sbit tlc2543_clk = p20; sbit tlc2543_adin = p21; sbit tlc2543_dout = p22; sbit tlc2543_cs = p23; sbit eoc = p24; float read2543(uchar port) uc
45、har i,j,temp; uint ad_valuem = 0; float ad = 0; temp = port; tlc2543_cs = 1; for(j=0; jm; j+) tlc2543_clk = 0; tlc2543_cs = 0; tlc2543_dout = 1; eoc = 1; port = 4; for(i=0; i12; i+) tlc2543_adin = (bit)(port tlc2543_clk = 1; if(tlc2543_dout) ad_valuej |= 0 x01; _nop_(); _nop_(); _nop_(); tlc2543_clk
46、 = 0; _nop_(); _nop_(); _nop_(); port = 1; ad_valuej = 1; port = temp; for(i=0; im; i+) ad = ad + ad_valuei; ad = ad/m; ad = ad*0.001221; /5.0/4095 return ad; typedef unsigned char uchar; typedef unsigned int uint; #include #include #includelcd_12864.h #includedelay.h #define lcd_data p0 #define a 5
47、 sbit rs=p25;/命令数据选择端 sbit rw=p26;/读写选择端 sbit lcden=p27;/使能端 uchar code dis_buf=0123456789. ; void read_busy() /lcd_data = 0 xff; rs = 0; rw = 1; lcden = 1; while(lcd_data lcden = 0; void write_cmd(uchar cmd) /液晶写命令函数 read_busy(); rs = 0; /写命令开 rw = 0; /写开 /lcden = 0; lcd_data = cmd; /写命令 lcden = 1;
48、 /给个脉冲 delayus2x(1); lcden = 0; void write_data(uchar dat) /液晶写数据函数 read_busy(); rs = 1; rw = 0; /lcden = 0; lcd_data = dat; lcden = 1; delayus2x(1); lcden = 0; void lcd_init() write_cmd(0 x30); delay_1ms(1); write_cmd(0 x0c); /显示开,关光标 delay_1ms(1); write_cmd(0 x01); /清除 lcd 的显示内容 delay_1ms(1); void
49、 lcd_init_pic() write_cmd(0 x36); /扩充指令操作 /delay_1ms(1); write_cmd(0 x0c); /显示开,关光标 /delay_1ms(1); write_cmd(0 x01); /清除 lcd 的显示内容 /delay_1ms(1); uchar readbyte(void)/读数据 uchar a; read_busy(); lcd_data = 0 xff; rs = 1; rw = 1; /lcden = 0; lcden = 1; a = lcd_data ; lcden = 0; return a; void display_b
50、mp(uchar *address) uchar i,j; for(i=0; i32; i+) write_cmd(0 x80+i);/送垂直地址 write_cmd(0 x80);/送水平地址 for(j=0; j16; j+) write_data(*address); address+; for(i=0; i32; i+) write_cmd(0 x80+i);/送垂直地址 write_cmd(0 x88);/送水平地址 for(j=0; j4;/x/16 xlabel_bit = x/x%16 if(y 32) row = y;/上半屏 else row = y-32;/下半屏 xla
51、bel += 8; write_cmd(row + 0 x80);/送垂直地址 write_cmd(xlabel + 0 x80);/送水平地址 readbyte();/须先读一个字节 read_h = readbyte(); read_l = readbyte(); write_cmd(row + 0 x80); write_cmd(xlabel + 0 x80); if(xlabel_bit 8)/修改高位 switch(color) case 0:read_h break;/若变白 case 1:read_h |= (0 x01 (7-xlabel_bit); break;/若涂黑 ca
52、se 2:read_h = (0 x01 (7-xlabel_bit); break;/若反转 default: break; write_data(read_h); write_data(read_l); else/修改低位 switch(color) case 0:read_l break;/若变白 case 1:read_l |= (0 x01 (15-xlabel_bit); break;/若涂黑 case 2:read_l = (0 x01 x1) temp = x0; x0 = x1; x1 = temp; for(; x0 y1) temp = y0; y0 = y1; y1 = temp; for(; y0 0) incx = 1; else if(delta_x = 0) lcd12864_drawline_y(startx, sta
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 住宅小区设计案例分析
- 2025届烟台市莱州市数学三上期末达标测试试题含解析
- 楚河汉街美食文化设计解析
- 2025年市政工程考试高效复习法与试题及答案
- 2025年市政考试趋势分析试题及答案
- 行政管理公共关系学的重点试题及答案
- 黄道婆教学设计
- 眼部皮肤专业知识课件
- 行政管理和公共关系学的比较试题及答案
- 详细讲解2025年中级经济师试题及答案
- 焊线机技术员自学书
- 2024年共青团入团积极分子考试题库(含答案)
- 强化学习 课件 第1章 强化学习概述
- 中外比较文学研究专题智慧树知到期末考试答案2024年
- T-CACM 1229-2019 中医骨伤科临床诊疗指南 膝痹病(膝骨关节炎)
- 房建工程监理大纲范本(内容全面)
- 小学道德与法治教师培训讲座
- 《环境管理体系培训》课件
- 绿色汽车修理技术研究
- 电源板生产QC工程图
- 5Why分析法(经典完整版)
评论
0/150
提交评论