电气自动化或机电一体化毕业论文--数码管显示温度计.doc_第1页
电气自动化或机电一体化毕业论文--数码管显示温度计.doc_第2页
电气自动化或机电一体化毕业论文--数码管显示温度计.doc_第3页
电气自动化或机电一体化毕业论文--数码管显示温度计.doc_第4页
电气自动化或机电一体化毕业论文--数码管显示温度计.doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

无锡科技职业学院毕业论文33摘 要温度是一种最基本的环境参数,人们生活与环境温度息息相关,在工业生产过程中需要实时测量温度,在工业生产中也离不开温度的测量,因此研究温度的测量方法和控制具有重要的意义。本论文介绍了一种以单片机为主要控制器件,以DS18B20为温度传感器的新型数字温度计。主要包括硬件电路的设计和系统程序的设计。硬件电路主要包括主控制器,测温控制电路和显示电路等,主控制器采用单片机AT89C51,温度传感器采用美国DALLAS半导体公司生产的DS18B20,显示电路采用8位共阴极LED数码管,74HC57为驱动的动态扫描直读显示。测温控制电路由温度传感器和预置温度值比较报警电路组成,当实际测量温度大于预置温度值时,发出报警信号。系统程序主要包括主程序,测温子程序和显示子程序等。DS18B20新型单总线数字温度传感器是DALLAS公司生产的单线数字温度传感器,集温度测量和A/D转换于一体,直接输出数字量,具有接口简单、精度高、抗干扰能力强、工作稳定等特点。由于采用了改进型智能温度传感器DS18B20作为检测元件,与传统的温度计相比,本数字温度计减少了外部的硬件电路,具有低耗成本和易使用的特点。DS18B20温度计还可以在高温报警、远距离多点测温控制方面进行应用开发,具有很好的发展前景。关键词:单片机,AT89C51,温度传感器,DS18B20AbstractThe temperature is one of the most basic environmental parameters, people life and environmental temperature are closely related, in industrial production process needs real-time measuring temperature in industrial production, also cannot leave the temperature measurement, so the temperature measurement methods and control has the vital significance. This paper introduces a kind of microcomputer as the main control device for temperature sensor DS18B20, with the new digital thermometer. Mainly includes hardware circuit design and system programming design. Hardware circuit mainly includes the main controller, temperature control circuit and display circuit adopts single-chip microcomputer AT89C51, master controller, temperature sensors DALLAS semiconductor company production by the United States by the DS18B20, show circuit of 8 bits LED digital tube, 74HC573 cathode for driving dynamic scanning readable display. Temperature control circuit by the temperature sensor and preset temperature compare the alarming circuit, when actual measurement of temperature, the temperature is greater than preset issued a warning signal. System programming mainly include main program, the WenZi procedures and display subroutines, etc. DS18B20 new single bus digital temperature sensor is one of DALLAS company produces digital temperature sensor, integrates temperature measurement and A/D conversion at an organic whole, direct output digital quantity, with simple interface, high accuracy, strong anti-jamming capability, stable work, etc. As a result of the improved intelligent temperature sensor DS18B20, as the test components with traditional digital thermometer, compared the thermometer reduced the external hardware circuit, has the characteristics of low cost and easy use. DS18B20 thermometer can still in high temperature alarm, long-range multi-point measurement temperature control aspects of application development, has the very good prospects for development. Keywords: microcontroller, AT89C51, temperature sensors, DS18B20目 录摘 要1Abstract11 单片机的概述41.1 什么是单片机41.2 AT89C51单片机概述42 keil和Proteus软件的使用62.1 keil软件调试功能62.2 Proteus简单应用73 数码管显示原理及应用实现83.1 数码管驱动原理83.2 数码管静态显示93.3 数码管动态显示94 DS18B20数字式温度传感器介绍104.1 DS18B20的主要特性104.2 DS18B20的内部结构和外型114.3 DS18B20的工作原理125 系统程序设计145.1程序设计流程图145.2系统原理图155.3各部分电路介绍155.3.1 温度报警及指示电路155.3.2 RS232的历史和作用165.3.3 DS18B20供电方式165.3.4 复位电路的设计185.3.5 晶振电路186 结束语20致谢21参考文献22附 录231 单片机的概述1.1 什么是单片机1.1.1 单片机的简述单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。现在,单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。1.2 AT89C51单片机概述我们这次用的就是AT89C51单片机。如图1.3图1.3 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。算术逻辑运算部件主要功能是实现数据的传送、数据的算术逻辑运算和布尔量处理,它们包括:加、减、乘、除算术运算;增量(加1)、减量(减1)运算;十进制数调整; 位置“1”、位置“0”和取反;与、或、异或等逻辑操作;数据传送操作。控制器是控制整个单片机系统各种操作的部件,它包括时钟发生器、定时控制逻辑、指令寄存器译码器、程序存储器和数据存储器的地址/数据传送控制等。从编程的角度看,AT89C51的CPU对用户开放的寄存器主要有以下几个:累加器ACC、寄存器B、程序计数器PC、数据指针DPTR(由DPH和DPL两个8位寄存器组成),程序状态寄存器PSW、堆栈指针SP。AT89C51单片机基本结构包括中央处理器(CPU),内部数据存储器(RAM),内部程序存储器(ROM),定时器/计数器,并行I/O口,串行口,中断控制系统,时钟电路。实物如图1.4.图1.42 keil和Proteus软件的使用2.1 keil软件调试功能应用Keil进行软件仿真开发的主要步骤为:编写源程序并保存建立工程并添加源文件设置工程编译/汇编、连接,产生目标文件程序调试。Keil使用“工程”(Project)的概念,对工程(而不能对单一的源程序)进行编译/汇编、连接等操作。工程的建立、设置、编译/汇编及连接产生目标文件的方法非常易于掌握。首先选择菜单File-New,在源程序编辑器中输入汇编语言或C语言源程序(或选择File-Open,直接打开已用其它编辑器编辑好的源程序文档)并保存,注意保存时必须在文件名后加上扩展名.asm(.a51)或.c;然后选择菜单Project-New Project,建立新工程并保存(保存时无需加扩展名,也可加上扩展名.uv2);工程保存后会立即弹出一个设备选择对话框,选择CPU后点确定返回主界面。这时工程管理窗口的文件页(Files)会出现“Target1”,将其前面+号展开,接着选择Source Group1,右击鼠标弹出快捷菜单,选择“Add File to Group Source Group1”,出现一个对话框,要求寻找并加入源文件(在加入一个源文件后,该对话框不会消失,而是等待继续加入其它文件)。加入文件后点close返回主界面,展开“Source Group1”前面+号,就会看到所加入的文件,双击文件名,即可打开该源程序文件。紧接着对工程进行设置,选择工程管理窗口的Target1,再选择Project-Option for TargetTarget1(或点右键弹出快捷菜单再选择该选项),打开工程属性设置对话框,共有8个选项卡,主要设置工作包括在Target选项卡中设置晶振频率、在Debug选项卡中设置实验仿真板等,如要写片,还必须在Output选项卡中选中“Creat Hex Fi”;其它选项卡内容一般可取默认值。工程设置后按F7键(或点击编译工具栏上相应图标)进行编译/汇编、连接以及产生目标文件。成功编译/汇编、连接后,选择菜单Debug-Start/Stop Debug Session(或按Ctrl+F5键)进入程序调试状态,Keil提供对程序的模拟调试功能,内建一个功能强大的仿真CPU以模拟执行程序。Keil能以单步执行(按F11或选择Debug-Step)、过程单步执行(按F10或选择Debug-Step Over)、全速执行等多种运行方式进行程序调试。如果发现程序有错,可采用在线汇编功能对程序进行在线修改(Debug-Inline Assambly),不必执行先退出调试环境、修改源程序、对工程重新进行编译/汇编和连接、然后再次进入调试状态的步骤。对于一些必须满足一定条件(如按键被按下等)才能被执行的、难以用单步执行方式进行调试的程序行,可采用断点设置的方法处理(Debug-Insert/Remove Breakpoint或Debug-Breakpoints等)。2.2 Proteus简单应用图2-1 proteus界面图1. 绘制原理图:绘制原理图要在原理图编辑窗口中的蓝色方框内完成。原理图编辑窗口的操作是不同于常用的WINDOWS应用程序的,正确的操作是:用左键放置元件;右键选择元件;双击右键删除元件;右键拖选多个元件;先右键后左键编辑元件属性;先右键后左键拖动元件;连线用左键,删除用右键;改连接线:先右击连线,再左键拖动;中键放缩原理图。2. 定制自己的元件:有三个个实现途径,一是用PROTEUS VSM SDK开发仿真模型,并制作元件;另一个是在已有的元件基础上进行改造,比如把元件改为bus接口的;还有一个是利用已制作好(别人的)的元件,我们可以到网上下载一些新元件并把它们添加到自己的元件库里面。3. Sub-Circuits应用:用一个子电路可以把部分电路封装起来,这样可以节省原理图窗口的空间。开始使用这款软件,我们也边摸索边学习,很多东西都不是很清楚,经常出现存下的文件自己找不到,或者不会设定,但在老师的帮助下,我们努力克服的这些困难,并完成了仿真。3 数码管显示原理及应用实现3.1 数码管驱动原理 7段数码管分共阴极和共阳极两种显示方式。如果把7段数码管的每一段都等效成发光二极管的正负两个极,共阴极就是把(a,b,c,d,e,f,g)这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS48的相对应的驱动端上(也是a,b,c,d,e,f,g),此时若显示数字1,那么译码驱动电路输出段(b,c)为高电平,其他段扫描输出端为低电平。以此类推,如果7段数码管是共阳极显示电路,那就需要选用74LS47译码驱动集成电路。共阳极就是把(a,b,c,d,e,f,g)的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到74LS47相应的(a,b,c,d,e,f,g)输出端上。无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了!限流电阻的选取是:5V电源电压减去发光二极管的工作电压除上10ma到15ma得数即为限流电阻的值。发光二极管的工作电压一般在1.8V2.2V,为计算方便,通常选2V即可!发光二极管的工作电流选取在10-20ma,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏!对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的额定功率。数码管内部结构图如图3.1所示:(A)共阴极数码管内部结构图 (B)共阳极数码管内部结构图图3.1 数码管内部结构图3.2 数码管静态显示当多位数码管应用于某一系统时,它们的“选位”是可独立控制的,而“段选”是连接在一起的,我们可以通过位选信号控制几个数码管亮,而在同一时刻,位选选通的所有数码管上显示的数字始终都是一样的,因为它们的段选是连接在一起的,所以送入所有数码管的段选信号都是相同的,那么它们显示的数字必定一样,数码管的这种显示方法叫做静态显示。3.3 数码管动态显示数码管的动态显示又叫做数码管的动态扫描显示,就是所有工作的若干个数码管轮流显示,只要轮流显示的速度足够快,每秒约50次以上,由于人眼的“视觉暂留”特性,看起来就像是连续显示,。这种显示方式在数码管应用系统中银行用的最为广泛。 动态扫描电路 动态扫描工作时序如本次使用的数码管图3.3图3.34 DS18B20数字式温度传感器介绍4.1 DS18B20的主要特性我们这次主要使用的就是下面要介绍的DS18B20数字式温度传感器,接下来是我们找到的一些资料和心得。(1) 适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数据线供电。(2) 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。(3) DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。(4) DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。(5) 温范围55125,在-10+85时精度为0.5。(6) 可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温。(7) 在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。(8) 测量结果直接输出数字温度信号,以一线总线串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。(9) 负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。4.2 DS18B20的内部结构和外型DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的内部结构图如图4.2所示:图4.2 DS18B20内部结构图DS18B20的管脚排列和实物图如图4.3所示:图4.3 DS18B20管脚及实物图DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)。4.3 DS18B20的工作原理DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。 DS18B20测温原理如图4.3所示。 DS18B20测温原理框图4.3图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图4.3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。温度植格式表如下表2-1所示。这是12位转化后得到的12位数据,存储在DS18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。 表2-1 DS18B20温度值格式表LS ByteBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0232221202-12-22-32-4MSByteBit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8SSSSS2625245 系统程序设计5.1程序设计流程图主程序的主要功能是实现实时读出并处理DS18B20的测量的当前温度值,并将当前测得温度实时显示,其程序流程见图5.1所示。 图5.1 程序流程图5.2系统原理图5.3各部分电路介绍5.3.1 温度报警及指示电路下图C1是蜂鸣器电路跟C2带发光二极管的电路,C1旨在当温度高于设定温度时,会发出声响,C2旨在当温度低于设定时会亮灯。5.3.2 RS232的历史和作用在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。RS-232-C接口(又称EIARS-232-C)是目前最常用的一种串行通讯接口。(“RS-232-C”中的“-C”只不过表示RS-232的版本,所以与“RS-232”简称是一样的)它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准”该标准规定采用一个25个脚的DB-25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。后来IBM的PC机将RS232简化成了DB-9连接器,从而成为事实标准。而工业控制的RS-232口一般只使用RXD、TXD、GND三条线。在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻辑“1”为-3到-15V;逻辑“0”为+3到+15V。下图是关于串行通信借口RS232的接线图,旨在使温度计可以直接插上电脑显示。5.3.3 DS18B20供电方式DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图5.2 所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时VDD端接地。由于单线制只有一根线,因此发送接口必须是三态的。图5.2 DS18B20与单片机的接口电路在外部电源供电方式下,DS18B20工作电源由VDD引脚接入,此时I/O线不需要强上拉,不存在电源电流不足的问题,可以保证转换精度,同时在总线上理论可以挂接任意多个DS18B20传感器,组成多点测温系统。注意:在外部供电的方式下,DS18B20的GND引脚不能悬空,否则不能转换温度,读取的温度总是85。外部电源供电方式是DS18B20最佳的工作方式,工作稳定可靠,抗干扰能力强,而且电路也比较简单,可以开发出稳定可靠的多点温度监控系统。推荐大家在开发中使用外部电源供电方式,毕竟比寄生电源方式只多接一根VCC引线。在外接电源方式下,可以充分发挥DS18B20宽电源电压范围的优点,即使电源电压VCC降到3V时,依然能够保证温度量精度。图5.3外部供电方式单点测温电路5.3.4 复位电路的设计复位使单片机处于起始状态,并从该起始状态开始运行。AT89C51的RST引脚为复位端,该引脚连续保持2个机器周期(24个时钟振动周期)以上高电平,则可使单片机复位。内部复位电路在每一个机器周期的S5P2期间采样斯密特触发器的输出端,该触发器可抑制RST引脚的噪声干扰,并在复位期间不产生ALE信号,内部RAM处于不断电状态。其中的数据信息不会丢失,也即复位后,只影响SFR中的内容,内部RAM中的数据不受影响。外部复位有上电复位和按键电平复位。由于单片机运行过程中,其本身的干扰或外界干扰会导致出错,此时我们可按复位键重新开始运行。为了便于本设计运行调试,复位电路采用按键复位方式。按键复位电路如图5.4所示。图5.4 按键复位电路5.3.5 晶振电路晶振全称为晶体振荡器,其作用在于产生原始的时钟频率,这个频率经过频率发生器的放大或缩小后就成了电脑中各种不同的总线频率。以声卡为例,要实现对模拟信号44.1kHz或48kHz的采样,频率发生器就必须提供一个44.1kHz或48kHz的时钟频率。如果需要对这两种音频同时支持的话,声卡就需要有两颗晶振。但是娱乐级声卡为了降低成本,通常都采用SRC将输出的采样频率固定在48kHz,但是SRC会对音质带来损害,而且现在的娱乐级声卡都没有很好地解决这个问题。 晶振一般叫做晶体谐振器,是一种机电器件,是用电损耗很小的石英晶体经精密切割磨削并镀上电极焊上引线做成。这种晶体有一个很重要的特性,如果给它通电,它就会产生机械振荡,反之,如果给它机械力,它又会产生电,这种特性叫机电效应。他们有一个很重要的特点,其振荡频率与他们的形状,材料,切割方向等密切相关。由于石英晶体化学性能非常稳定,热膨胀系数非常小,其振荡频率也非常稳定,由于控制几何尺寸可以做到很精密,因此,其谐振频率也很准确。根据石英晶体的机电效应,我们可以把它等效为一个电磁振荡回路,即谐振回路。他们的机电效应是机-电-机-电.的不断转换,由电感和电容组成的谐振回路是电场-磁场的不断转换。在电路中的应用实际上是把它当作一个高Q值的电磁谐振回路。由于石英晶体的损耗非常小,即Q值非常高,做振荡器用时,可以产生非常稳定的振荡,作滤波器用,可以获得非常稳定和陡削的带通或带阻线。图5.5就是这次的晶振电路。图5.56 结束语本文介绍了基于51单片机的数字温度计控制系统的设计,对整个硬件电路和软件程序设计做了分析,文中介绍了数字温度计的现状及发展,介绍了仿真软件proteus及keil的基本知识,学习了proteus的仿真方法和步骤,介绍了数字温度计的设计方案选择及原理介绍,加深了51单片机的知识了解,介绍51单片机的结构、特点等。并学习了数字温度传感器DS18B20,设计软件仿真,更直观的反应设计的正确性。本文对其中的一些基本原理也做了简要的概述。其实写完了本篇论文,也仅仅是对数字温度计控制系统做出了一个简单的设计方案,数字温度计科利用在很多领域,在一些人不能直接进入的场所,利用单片机控制的数字温度计,可以设置并控制其中的温度,数字温度计还可以利用在温室中,这样就可以方便的控制温室中的温度,当温度超过所要求的温度时,可发生报警。总之数字温度计利用在很多领域。短暂的毕业设计已经结束了,这是对我三年来学习情况的一次综合性考核。从专业方面看,涉及的是模拟电路、单片机以及自动控制等课程,是对所学专业知识的全面考察与综合运用能力的大检阅;从所用的工具Proteus来说,又是一个新的起点,是自我学习能力和研究能力提高的阶梯。在进入课题后,首先查阅了大量相关资料,制定研究方案。接下来熟悉各个元器件的主要技术指标以及设计规则、认真学习Proteus软件。由于不太熟悉Proteus,后来在翻看大量的参考书之后才稍稍掌握了一点它的知识,以书中的实例作为指导,对其运用慢慢熟悉。这是一个很大的进步,也是本次毕业设计的重要收获之一。在毕业设计过程中,先研究了AT89C51单片机、 DS18B20温度传感器、继电器以及其它元器件的结构原理,然后与软件联调、仿真、分析、修改,并且得到了正确的结果。总之,毕业设计任务的圆满完成,尤其是提出的分步调试方案的实现更使我倍感欣慰,同时也让我感受到了设计课题之外的累累硕果,研究过程不仅锻炼了我的自学能力、分析和解决问题的能力以及创新能力,而且与其他组员间的共同探讨与研究,也培养了我的团队协作精神,使我在各方面都上升了一个新台阶,为今后踏上工作岗位奠定了良好的基础。致谢为期两个月的毕业论文(设计)已近接近尾声了,我的三年大学生涯也即将画上一个句点。在此我要感谢这三年当中教导我的老师们和关心、帮助我的同学们。尤其是指导我毕业设计的赵老师和我的同组同学,你们给了我很多帮助,让我学到很多东西。赵老师以其严谨求实的治学态度、高度的敬业精神、兢兢业业、孜孜以求的工作作风和大胆创新的进取精神对我产生重要影响。他平日里工作繁多,但在我做毕业设计的每个阶段,从选题到查阅资料,论文提纲的确定,中期论文的修改,后期论文格式调整等各个环节中都给予了我悉心的指导。除此之外,他的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。同时,在此次毕业设计过程中我也学到了许多了关于单片机温控设计方面的知识,实验技能有了很大的提高。掌握了坚实的专业知识基础,为我以后的扬帆远航注入了动力。我的同组同学在设计过程中总是为我提供各种信息,在我迷茫的时候鼓励我,帮我分析情况,同时将我的不足之处委婉的提出,并和我一起来改进设计,使我在改进中提高自己的水平,使我这两个月过的充实而有激情。这次毕业论文能够最终顺利完成,离不开老师的指导和同学的帮助。也正是你们支持和帮助才使我能顺利完成。在此表示衷心感谢:谢谢你们!参考文献1 李全力主编,单片机原理及应用技术北京:高等教育出版社,20042 龚运新,朱芙菁主编,单片机技术与应用 南京:南京大学出版社,20093 郭天祥主编,51单片机C语言教程 北京:电子工业出版社,2008附 录1 实物图2 元器件清单元 器 件 清单元器件 型号及参数个数单片机AT89C511数码管4位共阳7段LED数码管1温度传感器DS18B201晶振CRSYTAL 12MHz1电阻10K1电阻4.7K4电阻2208三极管9012 PNP4电容CAP 30pf2电容CAP10uf13 源程序#include #include #define uchar unsigned char#define uint unsigned intsbit ds=P22; /温度传感器信号线sbit dula=P26; /数码管段选线sbit wela=P27; /数码管位选线sbit beep=P23; /蜂鸣器uint temp;float f_temp;uint warn_l1=260;uint warn_l2=250;uint warn_h1=300;uint warn_h2=320;sbit led0=P10;sbit led1=P11;sbit led2=P12;sbit led3=P13;unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef; /不带小数点的编码void delay(uint z)/延时函数uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void dsreset(void) /18B20复位,初始化函数 uint i; ds=0; i=103; while(i0)i-; ds=1; i=4; while(i0)i-;bit tempreadbit(void) /读1位函数 uint i; bit dat; ds=0;i+; /i+ 起延时作用 ds=1;i+;i+; dat=ds; i=8;while(i0)i-; return (dat);uchar tempread(void) /读1个字节 uchar i,j,dat; dat=0; for(i=1;i=8;i+) j=tempreadbit(); dat=(j1); /读出的数据最低位在最前面,这样刚好一个字节在DAT里 return(dat);void tempwritebyte(uchar dat) /向18B20写一个字节数据 uint i; uchar j; bit testb; for(j=1;j1; if(testb) /写 1 ds=0; i+;i+; ds=1; i=8;while(i0)i-; else ds=0; /写 0 i=8;while(i0)i-; ds=1; i+;i+; void tempchange(void)

温馨提示

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

评论

0/150

提交评论