版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘要 2012年黑龙江八一农垦大学电子协会电子设计竞赛论文及总结报告 题目:数字显示温度计 组号:2012205001 组员: 导师: 时间:2012年3月20日-4月1日 摘要摘要说明随着现代化信息技术的飞速发展,单片机技术已经十分普及,在实时检测和自动控制的单片机应用系统中,单片机往往是作为核心部件来使用。本论文介绍了一种以单片机 at89s52 为主要控制器件,以 ds18b20 为温度传感器通过 lcd 液晶屏传送数据,实现温度显示的新型数字温度计。该数字温度计的测量范围为 0120,显示分辨率为 0.1,误差0.10。由于采用了温度传感器 ds18b20 作为检测元件,与传统的温度计
2、相比,本文设计的数字温度计减少了外部的硬件电路,具有读数方便,测温范围广,测温精确,数字显示,适用范围宽等特点。ds18b20 温度计还可以在高温报警、远距离多点测温控制等方面进行应用开发。该系统结构简单,抗干扰能力强,适合于各种环境下进行现场温度测量,可广泛应用于工业控温系统、温度计、消费产品以及其它温度测控系统。我们利用单片机的这种强大的多功能控制了水温的系统,我们相信在我们的努力下,一定能够实现我们的目的,单片机有着极其远大的发展前途。关键词关键词:单片机at89s52;温度传感器ds18b20;ds1302;lcd液晶屏显示;变压器等。目录3abstractwith the rapid
3、 development of modern information technology, microcontroller technology has become quite common, real-time detection and automatic control in the microcomputer application systems, microcontroller is often used as a core component to use.this paper introduces a single-chip control device for main
4、at89s52 for temperature sensor ds18b20, to transmit data by lcd screen, realize temperature display of the new digital thermometer. this digital thermometer measurement range is 0 120 , the display resolution for 0.1 , error acuities + 0.5.as a result of the temperature sensor ds18b20 as the test co
5、mponents compared with the traditional thermometer, this paper designed digital thermometer reduce external hardware circuit, which readings convenient, temperature measuring range, temperature measurement precision, the digital display characteristics, wide application scope. ds18b20 thermometer ca
6、n still in high temperature alarm, long-range multi-point measurement temperature control aspects of application development. the system structure is simple, strong anti-jamming capability, suitable for all kinds of environment temperature measurement on the site, and can be widely used in industria
7、l control temperature system, thermometer, consumer products and other temperature measurement and control system.keywords: scm at89s52 single; temperature sensor ds18b20; digital thermometer; lcd display目录i目 录一. 绪论绪论 .11.1 研究背景 .11.2 研究现状 .1二二. . 总体设计方案总体设计方案 .32.1 设计思路 .32.2 总体设计框图 .32.3 所用材料 .4三三
8、. . 硬件设计硬件设计 .53.1 单片机的选择.53.2 温度传感器的选择.93.3 温度检测电路.163.4 温度报警电路.173.5 复位电路.183.6 时钟电路.193.7 显示电路.203.8 主电路原理图.21四四. . 软件设计软件设计 .234.1 概述.234.2 主程序模块.234.3 各模块流程设计.244.4 报警模块流程.27五五. . 仿真仿真 .295.1 proteus 介绍 .295.2 altium designe介绍.30六六. .综合调试综合调试 .336.1 焊接 .336.2 调试 .33目录ii七七. . 总结与体会总结与体会 .35致谢致谢
9、.37参考文献参考文献 .39附录附录 .41第一部分 绪论1第一部分 绪论1.1 研究背景随着现代信息技术的飞速发展和传统工业改造的逐步实现,人们在生产过程中会越来越关注精密而实用的仪器,能够独立工作的温度检测和显示系统应用于诸多领域。其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活等提供更好更方便快捷的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。目前温度计的发展很快,从原始的玻璃管温度计发展到了现在的热电阻温度计、热电偶温度计、数字温度计、电子温度计等等,温度计中传感器是它的重要组成部分,它的精度、灵敏度基本决定了温度计的精度、
10、测量范围、控制范围和用途等。传感器应用极其广泛,目前已经研制出多种新型传感器。传统的温度检测以热敏电阻为温度敏感元件。热敏电阻的成本低,但需后续信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温精确,数字显示,适用范围宽等特点,主要用于对测温比较准确的场所或科研实验室使用,可广泛用用于工业控温系统、温度计、消费产品以及其它温度测控系统。目前,该产品已在温控系统中得到了广泛使用。因此本设计就尝试通过编程与芯片的结合来解决传统数字温度计的弊端,设计出新型数字温度计。1.2 研究现状温度传感器的发展现状:
11、温度传感器使用范围广,数量多,居各种传感器之首,其发展大致经历了以下 3 个阶段: 1、传统的分立式温度传感器(含敏感元件)热电偶传感器,主要是能够进行非电量和电量之间转换。数字显示温度计的设计22、模拟集成温度传感器/控制器,集成传感器是采用硅半导体集成工艺制成的,因此亦称硅传感器或单片集成温度传感器。3、智能温度传感器。它是微电子技术、计算机技术和自动测试技术(ate_)的结晶。智能温度传感器内部包含温度传感器、a/d 传感器、信号处理器、存储器(或寄存器)和接口电路。本设计课题的研究可以应用领域生产、生活等很多领域。对于家用电器从洗衣机、微波炉到音响等等到处都可以用到温度控制器来方便大家
12、的日常生活。开发此产品后也可方便应用安装在小至家庭大到工厂车间,小至一个芯片大到一个机械设备。例如在家庭客厅卧室等必要地方显示室温,可防止家里食物是否变质及早采取措施。工业生产控制中用数字温度计可清晰显示温度来防止元气件失效或损坏等不必要的非人为损失,对做好车间机器维修与保养起很重要的作用。第二章 总体设计方案3第二部分 总体设计方案2.1 设计思路本设计是一个基于单片机 at89s51 的数字温度计和温度传感器 ds18b20 的设计,用来测量环境温度,测量范围为 0120,显示分辨率为 0.1,误差0.5,当温度高于 55或低 35于程序设定值时,报警电路就会发出报警,并且在 lcd 液晶
13、屏第二行温度值的后面显示出高温超限或低温超限。整个设计系统主要包括硬件电路的设计和系统软件的设计。硬件电路主要包括主控制器,测温电路和显示电路等。主控制器采用单片机 at89c51,温度传感器采用美国 dallas 半导体公司生产的 ds18b20 来实现环境温度的采集和 a/d 转换,同时因其输出为数字形式,且为串行输出,这就方便了单片机进行数据处理,但同时也对编程提出了更高的要求。单片机把采集到的温度进行相应的转换后,显示电路采用 lcd 液晶显示器以动态扫描法直读显示。系统程序主要包括主程序,读出温度子程序,写入温度子程序,报警子程序等。2.2 总体设计框图本系统采用单片机作为微控制器,
14、如图 2.2.1,分为:测温电路,显示电路,报警电路,复位电路。单片机用 at89c51、温度传感器用 ds18b20,采用 12mhz晶振,电源采用 5v。该电路经过设计分析、绘图、仿真调试、制板、焊接等工作后温度计成形。采用数字温度芯片ds18b20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0100摄氏度时,最大线形偏差小于1摄氏度。ds18b20的最大特点之一采用了单总线的数据传输,由数字温度计ds18b20和微控制器at89c51构成的温度测量装置,它直接输出温度的数字信号,可
15、直接与计算机连接。这样,测温系统的结构就比较简单,体积也不大。采用52单片数字显示温度计的设计4机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。图 2.2.1 总体设计框图 2.3 所用主要元器件单片机 at89s51 一个,温度传感器 ds18b20 一个,12mhz 晶振一个,lcd12864 个,蜂鸣器一个,电源一个,排阻一个,三极管一个,usb 一个, ,电阻电容及导线若干。第三章 硬件设计5第三章 硬件设计硬件设计3.1 单片机的选择at89s51 作为温度测试系统设计的核心器件。该器件是 intel 公司生产的mcs 一
16、5l 系列单片机中的基础产品,采是一个低电压,高性能 cmos 8 位单片机,片内含 8k bytes 的可反复擦写的 flash 只读程序存储器和 256 bytes 的随机存取数据存储器(ram),器件采用 atmel 公司的高密度、非易失性存储技术生产,兼容标准 mcs-51 指令系统,片内置通用 8 位中央处理器和 flash 存储单元,at89s51 单片机在电子行业中有着广泛的应用。单片机小系统的电路图如图 3-1-1 所示。图 3.1.1 单片机小系统电路数字显示温度计的设计63.1.1 at89s51 单片机的主要特性:(1)兼容 mcs-51 指令系统,4k 字节可编程闪烁存
17、储器;(2)8k 可反复擦写(大于 1000 次)flash rom;(3)寿命为 1000 次写/擦周期,数据保留时间可 10 年以上;(4)全静态工作模式:0hz-33hz;(5)三级程序存储器锁定;(6)128*8 位内部 ram,32 可编程 i/o 线;(7)两个 16 位定时器/计数器,6 个中断源;(8)全双工串行 uart 通道,低功耗的闲置和掉电模式;(9)低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;(10)有 pdip、pqfp、tqfp 及 plcc 等几种封装形式,以适应不同产品的需求。3.1.2 引脚功能及管脚电压at89s51 为 8 位通用微处理器,采用工业标准
18、的 c51 内核,在内部功能及管脚排布上与通用的 8xs52 相同,其主要用于会聚调整时的功能控制。功能包括对会聚主 ic 内部寄存器、数据 ram 及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号 ir 的接收解码及与主板 cpu 通信等。主要管脚有:xtal1(19 脚)和 xtal2(18 脚)为振荡器输入输出端口,外接 12mhz晶振。rst(9 脚)为复位输入端口,外接电阻电容组成的复位电路。vcc(40 脚)和 vss(20 脚)为供电端口,分别接+5v 电源的正负端。p0p3 为可编程通用i/o 脚,其功能用途由软件定义,在本设计中,p0 端口(3239
19、脚)被定义为n1 功能控制端口,分别与 n1 的相应功能管脚相连接,13 脚定义为 ir 输入端,10 脚和 11 脚定义为 i2c 总线控制端口,分别连接 n1 的 sdas(18 脚)和scls(19 脚)端口,12 脚、27 脚及 28 脚定义为握手信号功能端口,连接主板cpu 的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。如图3.1.2 所示。第三不封 硬件设计7图 3.1.2 pdip 封装的 at89c52 引脚图(1)p0 口p0 口是一组 8 位漏极开路型双向 i/o 口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动 8 个 ttl 逻辑门
20、电路,对端口 p0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 flash 编程时,p0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。(2)p1 口p1 是一个带内部上拉电阻的 8 位双向 i/o 口,p1 的输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对端口写“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(iil)。与 at89c51 不同之处是,p
21、1.0 和 p1.1 还可分别作为定时/计数器 2 的外部计数输入(p1.0/t2)和输入(p1.1/t2ex) ,参见表 3.1.1。flash 编程和程序校验期间,p1 接收低 8 位地址。表 3.1.1 p1.0 和 p1.1 的第二功能引脚号功能特性数字显示温度计的设计8p1.0t2,时钟输出p1.1t2ex(定时/计数器 2)(3)p2 口p2 是一个带有内部上拉电阻的 8 位双向 i/o 口,p2 的输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对端口 p2 写“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引
22、脚被外部信号拉低时会输出一个电流(iil)。在访问外部程序存储器或 16 位地址的外部数据存储器(例如执行 movxdptr指令)时,p2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(如执行 movxri 指令)时,p2 口输出 p2 锁存器的内容。flash 编程或校验时,p2 亦接收高位地址和一些控制信号。(4)p3 口p3 口是一组带有内部上拉电阻的 8 位双向 i/o 口。p3 口输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对 p3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的 p3 口将用上拉电阻输出电流(iil) 。
23、p3 口除了作为一般的 i/o 口线外,更重要的用途是它的第二功能。p3 口还接收一些用于 flash 闪速存储器编程和程序校验的控制信号。(5)rst复位输入。当振荡器工作时,rst 引脚出现两个机器周期以上高电平将使单片机复位。(6)ale/prog当访问外部程序存储器或数据存储器时,ale(地址锁存允许)输出脉冲用于锁存地址的低 8 位字节。一般情况下,ale 仍以时钟振荡频率的 1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个 ale 脉冲。对 flash 存储器编程期间,该引脚还用于输入编程脉冲(prog) 。 如有必要,
24、可通过对特殊功能寄存器(sfr)区中的 8eh 单元的 d0 位置位,可禁止 ale 操作。该位置位后,只有一条 movx 和 movc 指令才能将 ale 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ale 禁止位无效。第三不封 硬件设计9(7)psen程序储存允许(psen)输出是外部程序存储器的读选通信号,当 at89c52 由外部程序存储器取指令(或数据)时,每个机器周期两次 psen 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次 psen 信号。(8)ea/vpp外部访问允许。欲使 cpu 仅访问外部程序存储器(地址为 0000hffffh) ,
25、ea 端必须保持低电平(接地) 。需注意的是:如果加密位 lb1 被编程,复位时内部会锁存 ea 端状态。如 ea 端为高电平(接 vcc 端) ,cpu 则执行内部程序存储器中的指令。flash 存储器编程时,该引脚加上+12v 的编程允许电源 vpp,当然这必须是该器件是使用 12v 编程电压 vpp。(9)xtal1振荡器反相放大器的及内部时钟发生器的输入端。(10)xtal2振荡器反相放大器的输出端。3.2 温度传感器的选择ds18b20温度传感器是美国dallas公司推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且具有耐磨耐碰,体积小,使用方
26、便,封装形式多样等特点,适用于各种狭小空间设备数字测温和控制领域。3.2.1 ds18b20的主要特性(1)适应电压范围更宽,电压范围:3.05.5v,在寄生电源方式下可由数据线供电;数字显示温度计的设计10(2)独特的单线接口方式,ds18b20 在与微处理器连接时仅需要一条口线即可实现微处理器与 ds18b20 的双向通讯;(3)ds18b20 支持多点组网功能,多个 ds18b20 可以并联在唯一的三线上,实现组网多点测温;(4)ds18b20 在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内;(5)温范围55125,在-10+85时精度为0.5;(6)
27、可编程的分辨率为 912 位,对应的可分辨温度分别为 0.5、0.25、0.125和 0.0625,可实现高精度测温;(7)在 9 位分辨率时最多在 93.75ms 内把温度转换为数字,12 位分辨率时最多在 750ms 内把温度值转换为数字,速度更快;(8)测量结果直接输出数字温度信号,以“一线总线”串行传送给 cpu,同时可传送 crc 校验码,具有极强的抗干扰纠错能力;(9)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。3.2.2 ds18b20的引脚结构温度传感器ds18b20引脚如图3.2.1所示。图 3.2.1 ds18b20 引脚引脚功能说明:(1)nc(1、2
28、、6、7、8 脚):空引脚,悬空不使用;(2)vdd(3 脚):可选电源脚,电源电压范围 35.5v。当工作于寄生电源时,第三不封 硬件设计11此引脚必须接地。(3)dq(4 脚):数据输入/输出脚。漏极开路,常态下高电平。(4)gnd(5 脚):为电源地3.2.3 ds18b20 工作原理图 3.2.2 ds18b20 内部结构图ds18b20 的读写时序和测温原理与 ds1820 相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由 2s 减为 750ms。ds18b20 测温原理如图 3.2.3 所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲
29、信号送给计数器 1。高温度系数晶振 随温度变化其振荡率明显改变,所产生的信号作为计数器 2 的脉冲输入。计数器 1 和温度寄存器被预置在55所对应的一个基数值。计数器 1 对低温度系数晶振产生的脉冲信号进行减法计数,当计数器 1 的预置值减到 0 时,温度寄存器的值将加 1,计数器 1 的预置将重新被装入,计数器 1 重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器 2 计数到 0 时,停止温度寄存器值的累加,此时温度寄存器中的数值即 为所测温度。图 3.2.3 中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器 1 的预置值。数字显示温度计的设计12图 3
30、.2.3 ds18b20 测温原理框图ds18b20 内部结构主要由四部分组成:64 位光刻 rom、温度传感器、非挥发的温度报警触发器 th 和 tl、配置寄存器。(1)光刻 rom 中的 64 位序列号是出厂前被光刻好的,它可以看作是该ds18b20 的地址序列码。64 位光刻 rom 的排列是:开始 8 位(28h)是产品类型标号,接着的 48 位是该 ds18b20 自身的序列号,最后 8 位是前面 56 位的循环冗余校验码(crc=x8+x5+x4+1) 。光刻 rom 的作用是使每一个 ds18b20 都各不相同,这样就可以实现一根总线上挂接多个 ds18b20 的目的。(2)ds
31、18b20 中的温度传感器可完成对温度的测量,以 12 位转化为例:用16 位符号扩展的二进制补码读数形式提供,以 0.0625/lsb 形式表达,其中 s为符号位。表 3.2.1:ds18b20 温度值格式表这是 12 位转化后得到的 12 位数据,存储在 ds18b20 的两个 8 比特的 ram 中,二进制中的前面 5 位是符号位,如果测得的温度大于 0,这 5 位为 0,只要将测到的数值乘于 0.0625 即可得到实际温度;如果温度小于 0,这 5 位为 1,测到的数值需要取反加 1 再乘于 0.0625 即可得到实际 温度。例如+125的数字输出为07d0h,+25.0625的数字输
32、出为 0191h,-25.0625的数字输出为 fe6fh,-55的数字输出为 fc90h。第三不封 硬件设计13表 3.2.2: ds18b20 温度数据表温度数字输出(二进制)数字输入(十六进制)+1250000 0111 1101 000007d0h+850000 0101 0101 00000550h+25.06250000 0001 1001 00010191h+10.1250000 0000 1010 001000a2h+0.50000 0000 0000 10000008h00000 0000 0000 00000000h-0.51111 1111 1111 1000fff8h-
33、10.1251111 1111 0101 1110ff5eh-25.06251111 1110 0110 1111ff6fh-551111 1100 1001 0000fc90h(3)ds18b20 温度传感器的存储器 ds18b20 温度传感器的内部存储器包括一个高速暂存 ram 和一个非易失性的可电擦除的 eepram,后者存放高温度和低温度触发器。th、tl 和结构寄存器。(4)配置寄存器 该字节各位的意义如下:表 3.2.3: 配置寄存器结构tmr1r011111低五位一直都是1,tm 是测试模式位,用于设置 ds18b20 在工作模式还是在测试模式。在 ds18b20 出厂时该位被设
34、置为 0,用户不要去改动。r1 和 r0 用来设置分辨率,如下表所示:(ds18b20 出厂时被设置为 12 位)表 3.2.4:温度分辨率设置表r1r0分辨率温度最大转换时间009 位93.75ms0110 位187.5ms1011 位375ms1112 位750ms数字显示温度计的设计143.2.4 高速暂存存储器高速暂存存储器由 9 个字节组成,其分配如表 3.2.5 所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第 0 和第 1 个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表 3.2.1 所示。对应的温度计算:当符号
35、位 s=0 时,直接将二进制位转换为十进制;当 s=1 时,先将补码变为原码,再计算十进制值。表 3.2.2 是对应的一部分温度值。第九个字节是 冗余检验字节。表 3.2.5: ds18b20 暂存寄存器分布寄存器内容字节地址温度值低位 (ls byte)0温度值高位 (ms byte)1高温限值(th)2低温限值(tl)3配置寄存器4保留5保留6保留7crc 校验值8根据 ds18b20 的通讯协议,主机(单片机)控制 ds18b20 完成温度转换必须经过三个步骤:每一次读写之前都要对 ds18b20 进行 复位操作,复位成功后发送一条 rom 指令,最后发送 ram 指令,这样才能对 ds
36、18b20 进行预定的操作。复位要求主 cpu 将数据线下拉 500 微秒,然后 释放,当 ds18b20 收到信号后等待1660 微秒左右,后发出 60240 微秒的存在低脉冲,主 cpu 收到此信号表示复位成功。 第三不封 硬件设计15表 3.2.6:rom 指令表指令约定代码功能读 rom33h读 ds1820 温度传感器 rom 中的编码(即 64 位地址)符合 rom55h发出此命令之后,接着发出 64 位 rom 编码,访问单总线上与该编码相对应的 ds1820 使之作出响应,为下一步对该 ds1820 的读写作准备。搜索 rom0foh用于确定挂接在同一总线上 ds1820 的个
37、数和识别 64rom地址。为操作各器件作好准备。跳过 rom0cch忽略 64 位 rom 地址,直接向 ds1820 发温度变换命令。适用于单片工作。告警搜索命令0ech执行后只有温度超过设定值上限或下限的片子才做出响应。表 3.2.7: ram 指令表指令约定代码功能温度变换44h启动 ds1820 进行温度转换,12 位转换时最长为750ms(9 位为 93.75ms)。结果存入内部 9 字节 ram 中 读暂存器0beh读内部 ram 中 9 字节的内容 写暂存器4eh发出向内部 ram 的 3、4 字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。 复制暂存器48h将
38、ram 中第 3 、4 字节的内容复制到 eeprom 中。 重调 eeprom0b8h将 eeprom 中内容恢复到 ram 中的第 3 、4 字节。 3.2.5 ds1820 使用中注意事项ds1820 虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题: 数字显示温度计的设计16(1)较小的硬件开销需要相对复杂的软件进行补偿,由于 ds1820 与微处理器间采用串行数据传送,因此 ,在对 ds1820 进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用 pl/m、c 等高级语言进行系统程序设计时,对 ds1820 操作
39、部分最好采用汇编语言实现。 (2)在 ds1820 的有关资料中均未提及单总线上所挂 ds1820 数量问题,容易使人误认为可以挂任意多个 ds1820,在实际应用中并非如此。当单总线上所挂 ds1820 超过 8 个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时 要加以注意。 (3)连接 ds1820 的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过 50m 时,读取的 测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达 150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正 常通讯距离进一步加长。这种情况主要是由总线分布电容使信
40、号波形产生畸变造成的。因此,在用 ds1820 进行长距离测温系统设计时要充分考 虑总线分布电容和阻抗匹配问题。 (4)在 ds1820 测温程序设计中,向 ds1820 发出温度转换命令后,程序总要等待 ds1820 的返回信号,一旦 某个 ds1820 接触不好或断线,当程序读该ds1820 时,将没有返回信号,程序进入死循环。这一点在进行 ds1820 硬件连接和软件设计时也要给予 一定的重视。 测温电缆线建议采用屏蔽 4 芯双绞线,其中一对线接地线与信号线,另一组接 vcc 和地线,屏蔽层在源端单点接地。3.3 温度检测电路ds18b20 最大的特点是单总线数据传输方式,ds18b20
41、 的数据 i/o 均由同一条线来完成。ds18b20 的电源供电方式有 2 种:外部供电方式和寄生电源方式。工作于寄生电源方式时,vdd 和 gnd 均接地,他在需要远程温度探测和空间受限的场合特别有用,原理是当 1wire 总线的信号线 dq 为高电平时,窃取信号能量给 ds18b20 供电,同时一部分能量给内部电容充电,当 dq 为低电平时释放能量为 ds18b20 供电。但寄生电源方式需要强上拉电路,软件控制变得复杂(特别是在完成温度转换和拷贝数据到 e2prom 时),同时芯片的性能也有所降低。因此,第三不封 硬件设计17在条件允许的场合,尽量采用外供电方式。无论是内部寄生电源还是外部
42、供电,i/o 口线要接 5k 左右的上拉电。在这里采用前者方式供电。ds18b20 与芯片连接电路如图 3.3.1 所示:图 3.3.1 ds18b20 和单片机的接口连接外部电源供电方式是ds18b20最佳的工作方式,工作稳定可靠,抗干扰能力强,而且电路也比较简单,可以开发出稳定可靠的多点温度监控系统。在开发中使用外部电源供电方式,毕竟比寄生电源方式只多接一根vcc引线。在外接电源方式下,可以充分发挥ds18b20宽电源电压范围的优点,即使电源电压vcc降到3v时,依然能够保证温度量精度。由于ds18b20只有一根数据线,因此它和主机(单片机)通信是需要串行通信,而at89s51有两个串行端
43、口,所以可以不用软件来模拟实现。经过单线接口访问ds18b20必须遵循如下协议:初始化、rom操作命令、存储器操作命令和控制操作。要使传感器工作,一切处理均严格按照时序。3.4 温度报警电路本设计的发挥部分,是加入了报警,如果我们所设计的系统是监控某一设备,一当设备的温度超过我们所设定的温度值(3555)时,系统会产生报警。报警时由单片机产生一定频率的脉冲,由 p2.7 引脚输出,p2.7 外接一只pnp 的三极管来驱动杨声器发出声音,以便操作员来维护,从而达到报警的目的。如下图 3-4-1 所示:数字显示温度计的设计18图 3.4.1 温度报警电路3.5 复位电路本系统中上电复位采用电平方式
44、开关复位,如图 3.5.1 所示。上电复位用 rc电路,电容用 10f,电阻用 10k。根据 ds18b20 的通讯协议,主机(单片机)控制 ds18b20 完成温度转换必须经过三个步骤:每一次读写之前都要对 ds18b20 进行复位操作,复位成功后发送一条 rom 指令,最后发送 ram 指令,这样才能对 ds18b20 进行预定的操作。复位要求主 cpu 将数据线下拉 500 微秒,然后释放,当 ds18b20 收到信号后等待1660 微秒左右,后发出 60240 微秒的存在低脉冲,主 cpu 收到此信号表示复位成功。单片机复位是使 cpu 和系统中的其它功能部件都处在一个确定的初始状态,
45、复位是单片机的初始化操作,其主要功能是把 pc 初始化为 0000h,使单片机从0000h 单元开始执行程序。单片机复位的条件是:必须使 rst 引脚加上持续两个机器周期的高电平,复位电路在接电瞬间,reset 端的电位与 vcc 相同,随着充电电流的减少,reset 的电位逐渐下降。只要保证 reset 为高电平的时间大于两个机器周期,便能正常复位。复位后 pc 值为 0000h,表明复位后程序从 0000h 开始执行,从第一个单元取指令。例如,若时钟频率为 12mz,每机器周期为 1us,则只需 2us 以上的高电平,在 rst 引脚出现高电平后的第二个机器周期执行复位。第三不封 硬件设计
46、19单片机复位期间不产生 ale 信号,即 ale=1.表明单片机复位期间不会有任何取指操作。 本设计采用的是按键电平复位的方式,其电路如图 3.5.1 所示,这种方式电路比较简单,且又避免了上电自动复位需要切断电源的缺点。 图 3.5.1 复位电路3.6 时钟电路单片机的晶振频率低于 40mhz,所用我们采用 12mhz,加两个 30p 电容。如图 3.6.1 所示。时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格的按时序进行工作。一般的晶振振荡电路都是在一个反相放大器的两端接入晶振,再有两个电容分
47、别接到晶振的两端,另一端接地,这两个电容串联的容量值应该等于负载电容。在单片机内部有一个高增益反相放大器,其输入端为芯片引脚 xtal1,输出端为引脚 xtal2,在芯片的外部通过这两个引脚跨接晶体震荡器和微调电容,形成反馈电路,就构成一个稳定的自激震荡器,一般的晶振的负载电容为 20p-45p 之间,考虑到元件引脚的等效输入电容,本设计采用两个 22p 的电容构成晶振的振荡电路。设计电路中所使用的是 12mhz 的晶振,机器周期为 1us,具体的时钟电路如图 3.6.1 所示。数字显示温度计的设计20图 3.6.1 晶振电路第三不封 硬件设计21数字显示温度计的设计223.7 显示电路温度的
48、显示可以采用 led 数码管来显示,led 亮度高、醒目,但是电路复杂,占用资源多且信息量小。而采用液晶显示器有明显的优点:工作电流比 led 小几个数量级,故其功耗低;尺寸小,厚度约为 led 的 1/3;字迹清晰、美观,寿命长,使用方便,故本设计采用 lcd12864 来显示温度。3.7.1 lcd12864 引脚接口lcd12864 采用标准的 20 脚接口,其中: 第 1 脚:vss 为地电源第 2 脚:vdd 接 5v 正电源第 3 脚:v0 为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个 10k 的电位器调整对比
49、度第 4 脚:rs 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第 5 脚:rw 为读写信号线,高电平时进行读操作,低电平时进行写操作。当 rs和 rw 共同为低电平时可以写入指令或者显示地址,当 rs 为低电平 rw 为高电平时可以读忙信号,当 rs 为高电平 rw 为低电平时可以写入数据。第 6 脚:e 端为使能端,当 e 端由高电平跳变成低电平时,液晶模块执行命令。第 714 脚:d0d7 为 8 位双向数据线。第 1517 脚:地址的传输端。第 18 脚: 空引脚。第 19 脚:接高电平+5v。第 20 脚:接地引脚。3.7.2 lcd12864 和 at89s51
50、连接第三不封 硬件设计23lcd12864 液晶显示模块可以和单片机 at89s51 直接接口,电路如图 3.7.1 所示。图 3.7.1 lcd12864 和 at89s51 连接3.8 主电路原理图数字显示温度计的设计24图 3.5.1 主电路原理图数字显示温度计的工作原理:基于 at89s51 的温度测量系统电路图把温度转化成带符号的数字信号(以十六位补码形式,占两个字节),若采用带屏蔽的双绞电缆线,连线的长度可以达到 150m,输出脚 i0 直接与单片机的 p34 相连,r1 为上拉电阻,传感器采用外部电源供电。at89s51 是整个系统的核心部分,内含 2 kb 的 flash ro
51、m,用户程序存放在这里。显示器模块由四位一体的共阳数码管和四个 9012 组成。系统程序分传感器控制程序和显示器程序两部分,传感器控制程序是按照 dsl8b20 的通信协议编制。系统的工作是在程序控制下,完成对传感器的读写和对温度的显示。产品的主要技术指标:测量范围:0+125,测量精度:05;反应时间小于等于 500ms。第四部分 软件设计25第四部分 软件设计4.1 概述整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了。从软件的功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。二是执行软件(子
52、程序),它是用来完成各种实质性的功能如测量、计算、显示、通讯等。每一个执行软件是一个小的功能执行模块。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。各执行模块规划好后,就可以规划监控程序了。首先要根据系统的总体功能选择一种最合适的监控程序结构,然后根据实时性的要求,合理地安排监控软件和各执行模块之间地调度关系。4.2 主程序模块主程序需要调用 4 个子程序,各模块程序功能如下:(1)数码管显示程序:向数码的显示送数,控制系统的显示部分。(2)温度测试及处理程序:对温度芯片送过来的数据进行处理,进行判断和显示。(3)报警子程序:进行温度上下限判断及报警输出。(4)中断设定程
53、序:实现设定上下限报警功能。主程序流程见图 4.2.1:4.3 各模块流程设计下面对主要子程序的流程图做介绍温度检测流程 ds18b20 在单片机控制下分三个阶段:数字显示温度计的设计26(1)ds18b20 初始化:4.4 报警模块流程报警程序读出温度值 c清除报警标志位c max?c max?有参数报警吗?返回置下限报警标志置上限报警标志报警装置运行yynyn图4.4.1 报警模块子程序流程图第五部分 仿真27第五部分 仿真5.1 proteus介绍proteus 软件是英国 labcenter electronics 公司出版的 eda 工具软件(该软件中国总代理为广州风标电子技术有限公
54、司) 。它不仅具有其它 eda 工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。proteus 是世界上著名的eda 工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到 pcb 设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、pcb 设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持 8051、hc11、pic10/12/16/18/24/30/dspic33、avr、arm、8086
55、和msp430 等,2010 年即将增加 cortex 和 dsp 系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持 iar、keil 和 mplab 等多种编译器。proteus 软件具有其它 eda 工具软件(例:multisim)的功能。这些功能是: (1)原理布图;(2)pcb 自动或人工布线;(3)spice 电路仿真。革命性的特点:(1)互动的电路仿真用户甚至可以实时采用诸如 ram,rom,键盘,马达,led,lcd,ad/da,部分 spi 器件,部分 iic 器件。(2)仿真处理器及其外围电路可以仿真 51 系列、avr、pic、arm、等常用主流单片机。还可以
56、直接在基于原理图的虚拟原型 上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、示波器等,proteus 建立了完备的电子设计开发环境。数字显示温度计的设计285.2altium designer介绍altium designer是 portel 公司在 80 年代末推出的 eda 软件 portel 的升级版本,在电子行业的 cad 软件中,它当之无愧地排在众多 eda 软件的前面,是电子设计者的首选软件,它较早就在国内开始使用,在国内的普及率也最高,有些高校的电子专业还专门开设了课程来学习它,几乎所有的电子公司都要用到它,许多大公司在招聘电子设计人才时在其条
57、件栏上常会写着要求会使用altium designe。早期的altium design主要作为印制板自动布线工具使用,运行在 dos 环境,对硬件的要求很低,在无硬盘 286 机的 1m 内存下就能运行,但它的功能也较少,只有电原理图绘制与印制板设计功能,其印制板自动布线的布通率也低,而现今的 protel 已发展到altium designe(网络上可下载到它的测试板) ,是个庞大的 eda 软件,完全安装有 200 多 m,它工作在 windows95 环境下,是个完整的板级全方位电子设计系统,它包含了电路原理图绘制、模拟电路与数字电路混合信号仿真、多层印制电路板设计(包含印制电路板自动布
58、线) 、可编程逻辑器件设计、图表生成、电子表格生成、支持宏操作等功能,并具有client/server (客户/服务器)体系结构,同时还兼容一些其它设计软件的文件格式,如 orcad,pspice,excel 等,其多层印制线路板的自动布线可实现高密度 pcb 的 100布通率。在国内 protel 软件较易买到,有关 protel 软件和使用说明的书也有很多,这为它的普及提供了基础。altium designe共分 5 个模块,分别是原理图设计、pcb 设计(包含信号完整性分析) 、自动布线器、原理图混合信号仿真、pld 设计。以下介绍一些altium design的部分最新功能:(1)可生
59、成 30 多种格式的电气连接网络表;(2)强大的全局编辑功能;(3)在原理图中选择一级器件,pcb 中同样的器件也将被选中;(4)同时运行原理图和 pcb,在打开的原理图和 pcb 图间允许双向交叉查找元器件、引脚、网络;第五部分 仿真29(5)既可以进行正向注释元器件标号(由原理图到 pcb) ,也可以进行反向注释(由 pcb 到原理图) ,以保持电气原理图和 pcb 在设计上的一致性;(6)满足国际化设计要求(包括国标标题栏输出,gb4728 国标库) ; * 方便易用的数模混合仿真(兼容 spice 3f5) ;(7)支持用 cupl 语言和原理图设计 pld,生成标准的 jed 下载文
60、件; * pcb 可设计 32 个信号层,16 个电源-地层和 16 个机加工层;(8)可以输入和输出 dxf、dwg 格式文件,实现和 autoca 等软件的数据交换;(9)强大的“规则驱动”设计环境,符合在线的和批处理的设计规则检查。第六部分 综合调试31第六部分 综合调试综合调试6.1 焊接6.1.1 焊接要求(1)电阻、二极管(发光二极管除外)均采用水平安装,紧贴印刷版。(2)电解电容等尽量插到底,元件底面离印刷版最高不能大于 4 毫米。(3)插件装配要美观、均匀、端正、整齐,不能歪斜,高矮要有序。(4)所焊出来的焊点要求圆滑、光亮、防止虚焊、搭焊和散锡。(5)布局合理,疏密适当。 (
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国资源循环集团有限公司春季校园招聘笔试参考题库及答案解析
- 基础设施建设项目管理方案
- 2026黑龙江绥化市中医医院招聘笔试备考试题及答案解析
- 2026广西右江水利开发有限责任公司招聘4人考试备考题库及答案解析
- 现场作业人员工作效率提升方案
- 城区供水特许经营客户关系管理方案
- 2026成都环境投资集团有限公司市场化选聘中层管理人员1人笔试备考试题及答案解析
- 2026广西玉林市福绵区樟木镇便民服务中心招聘城镇公益性岗位人员2人笔试参考题库及答案解析
- 2026年南昌大学第一附属医院医师助理岗招聘笔试参考题库及答案解析
- 2026四川南充市中等职业技术学校(南充市技工学校)上半年招聘教师10人考试备考题库及答案解析
- 2026海洋出版社限公司面向社会公开招聘工作人员易考易错模拟试题(共500题)试卷后附参考答案
- 2026年医院年度经济运营分析报告
- 2026西藏林芝巴宜区人民检察院司法警务辅助人员招聘3人笔试备考题库及答案解析
- 档案数字化项目立项申请书
- (正式版)DB51∕T 2787-2021 《研学旅行实践活动设计规范》
- 2026年温州永嘉县国有企业面向社会公开招聘工作人员12人笔试参考题库及答案解析
- 2026年六安职业技术学院单招职业适应性测试题库含答案详解(能力提升)
- 2026年南京信息职业技术学院单招职业适应性测试题库带答案详解(b卷)
- 2026湖南省卫生健康委直属事业单位招聘185人笔试模拟试题及答案解析
- 2025江西赣州水务集团招聘47名专业技术人员笔试历年典型考点题库附带答案详解
- 2026年河南农业大学招聘辅导员(硕士)10名备考题库及1套参考答案详解
评论
0/150
提交评论