毕业设计论文基于单片机C语言温度计设计.docx
- 文档编号:28875688
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:52
- 大小:469.11KB
毕业设计论文基于单片机C语言温度计设计.docx
《毕业设计论文基于单片机C语言温度计设计.docx》由会员分享,可在线阅读,更多相关《毕业设计论文基于单片机C语言温度计设计.docx(52页珍藏版)》请在冰豆网上搜索。
毕业设计论文基于单片机C语言温度计设计
摘要
随着社会的发展,自动控制越来越受到人们的关注,温度的控制系统也成为人们备受关注的焦点之一。
单片机的广泛应用已经成为高新科学技术的重要内容和标志之一,它在国民经济中的各个领域正在发挥着引人注目的作用。
本文利用单片机技术和传感器技术设计了一种实时温度监控系统。
本次设计的温度控制器的主控器是ATMEL公司生产的AT89S51。
传感器是使用较为广泛的数字温度传感器DS18B20,它具有独特的单线接口方式,与微处理器连接时仅需要一条线即可实现微处理器与DS18B20的双向通信,通过键盘设置温度上下限,用LED数码管显示实时温度,另外使用蜂鸣器进行超温时的警报。
本文对系统的总体设计方案与论证、硬件系统的设计、软件系统的设计等模块做出了详尽的说明。
关键词:
AT89S51;DS18B20;温度控制系统;Proteus;Keil
Abstract
Withthedevelopmentofsociety,theautomaticcontrolisbeingpaidmoreandmoreattention,thetemperaturecontrolsystemhasalsobecomeafocusofconcern.TheMCUapplicationofnewandhighscienceandtechnologyhasbecometheimportantcontentandoneofmarks,whichinallareasofthenationaleconomyisplayingtheroleofattractpeople'sattention.Inthispaper,theMCUtechnologyandthesensortechnologyisusedtodesignareal-timetemperaturemonitoringsystem
ThetemperaturecontrollerofthemasterofthisdesignistheAT89S51,whichisproducedbytheATMEL.ThesensoriswidelyusedinthedigitaltemperaturesensorDS18B20,whichhasauniquesingleinterfaceisconnectedwiththemicroprocessor,onlyneedsonelinecanrealizemicroprocessorwithDS18B20bidirectionalcommunication,throughthekeyboardtosetthetemperatureofupperandlowerlimits,withLEDdigitaltubedisplaythereal-timetemperature.Inadditiontousingthebuzzerforsuperhightemperaturealarm
Thesystem’soveralldesignanddemonstrationofhardwaresystemsdesign,softwaresystemdesignmoduletomakeadetailedexplanation.
Keywords:
AT89S51;DS18B20;temperaturecontrolsystem;Proteus;Keil
1绪论
1.1课题研究的背景及意义
随着科学技术和生产的不断发展和创新,需要对各种参数进行温度测量和设置。
因此温度一词在生产生活当中出现的频率越来越多,与之相对应的,温度控制和测量也成为生活生产中被广泛使用的词语,同时它们在各行各业中也发挥着重要的作用,温度是工业生产中常见的工艺参数之一,任何物理变化和化学反应过程与温度密切相关,因此温度控制是生产自动化的重要任务。
例如:
在农业温室大棚生产、冶金工业、化工生产、电力工程、造纸行业、机械制作和食品加工等诸多领域中,人们都需要对各类环境、加热炉、热处理炉、反应炉和锅炉中的温度进行检测。
温度的测量及控制对保证产品质量、提高生产效率、节约能源、生产安全、促进国民经济的发展都有非常重要的作用。
由于温度测量的普遍性,温度传感器的数量在各种传感器中居首位。
随着温度检测理论和技术的不断更新,温度传感器的种类也越来越多,不断的满足生产生活当中的需要。
在微机系统中使用的传感器,必须是能够将非电量转换成电量的传感器,然而传统的控制方式不能满足高精度,高速度的控制要求,如温度控制表温度接触器,其主要缺点是温度波动范围大,由于他主要通过控制接触器的通断时间比例来达到改变加热功率的目的,受仪表本身误差和交流接触器的寿命限制,通断频率很低。
近几年来快速发展了多种先进的温度控制方式,采用单片机对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控制温度的技术指标,从而能够大大提高产品的质量和数量。
因此,单片机对温度的控制问题是一个工业中经常遇到的问题。
基于单片机的温度控制系统可以实现对温度的显示、预警、控制等功能,对于工业生产效率的提高可以起到很大的作用。
科学技术是第一生产力,对温度实现比较系统化的检测控制使人们的生产节奏有一个良好的循环。
从而将节约更多的人力物力,降低生产过程中可以省略的一些繁琐的细节。
一个简单有效地控制系统可以在一定程度上使工厂的生产效益上一个台阶,只要使用得当,就能发挥作用。
1.2国内外的发展状况
进入21世纪后,智能温度控制器正朝着高精度,多功能,总线标准化,高可靠性及安全性,开发虚拟温度控制器和网络温度控制器,研发单片机测温控系统等高科技的方向迅速发展。
(1)提高温度控制器测温精度和分辨力
在20世纪90年代中期最早推出的智能温度控制器采用的是8位A/D转换器,其测温精度较低,分辨力只能达到2摄氏度。
目前,国外以相继推出多种高精度,高分辨力的智能温度传感器,也有的芯片采用高速逐次逼近式A/D转换器。
(2)新型智能温度控制器的测试功能也在不断增强。
例如,采用DS1629型单线智能温度传感器增加了实时日历时钟,使其功能更加完善。
另外,智能温度控制器正在从单通道向多通道的方向发展,这就为研制和开发多路温度测控系统创造了良好条件。
(3)温度控制器总线技术的标准化与规范化
目前,智能温度控制器的温度传感器的总线技术也实现了标准化,所采用的总线主要有单线总线、I2C总线、SMBus总线。
采用的温度传感器作为从机可通过专用总线接口与主机进行通信。
(4)虚拟温度控制器和网络温度控制器
虚拟温度控制器是基于温度控制器硬件和计算机平台,并通过软件开发而成的。
利用软件可完成温度控制器的标定及校准指标。
网络温度控制器是包含数字传感器、网络接口和处理单元的新一代智能温度控制器。
它通过数字传感器首先将被测温度转换成数字量,再送给微控制器作数据处理,最后将测量结果传输给网络,以便实现各传感器之间、传感器与执行器之间、传感器与系统之间的数据交换及资源共享。
(5)温度控制器单片测温控制系统
单片系统是21世纪一项高新科技产品。
它是在芯片上集成一个系统或子系统,其集成度高达108~109元件/片,这将给IC产业及IC应用带来划时代的进步。
1.3课题内容安排
本次设计首先简单介绍了Keil和Proteus两个应用软件,对其功能有基本的了解,为后面系统仿真做准备;完成了系统的总体设计方案,并对系统的主要部件进行了选型;了解单片机、温度传感器、键盘、LED数码管等模块的工作原理与特性,完成硬件系统的设计;完成软件系统的设计;调试运行,保证系统的稳定性和程序的可靠性,最后撰写论文。
2仿真软件的介绍
2.1Proteus软件
2.1.1proteus软件简介
Proteus软件是英国Labcenterelectronics公司开发的电路分析与仿真软件。
Proteus主要有ISIS和ARES两部分组成。
本文主要使用Proteus7.7软件的ISIS对系统进行原理图设计,并在原理图上对单片机C语程序进行调试与仿真。
ISIS是该公司出品的用于原理图设计、电路分析与仿真、处理程序代码调试和仿真、系统测试以及功能验证的EDA软件,运行Windows操作系统之上,具有界面友好、使用方便、占用存储空间少、仿真资源丰富、试验周期短、硬件投入少、实验过程损耗小和实际设计接近等特点。
它具有模拟电路仿真、数字电路仿真、数模混合电路、单片机等微处理器及其外围电路(如总线驱动器74LS373、可编程外围定时器8253、并行接口8255、实时时钟芯片DS1302、LCD、RAM、ROM、键盘、马达、LED、AD/DA、SPI、IIC器件等)组成的系统的仿真等功能,配合可供选择的虚拟仪器,可搭建一个完备的电子设计开发环境,同时支持第三方的软件的编辑和调试环境,可与Keil、Protel等软件进行联调,达到实时的仿真效果,因此受到广大电子爱好者的青睐。
该软件具有以下特点:
(1)实现了单片机仿真和SPICE电路仿真相结合,具有模拟电路仿真、数字电路仿真、各种单片机(51系列、AVR、PIG等常用的MCU)及其外围电路(如LCD、RAM、ROM、键盘、LED、A/D、D/A……)组成的系统仿真、RS-232动态仿真、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等调试非常方便。
(2)提供软件调试功能,在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态。
(3)支持主流单片机系统的仿真。
目前支持的单片机类型有8051系统、ARM系列、AVR系列、PIC系列以及各种外围芯片。
(4)具有强大的原理图绘制功能。
Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。
因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。
对于这样的仿真实验.从某种意义上讲,是弥补了.实验和工程应用阉脱节的矛盾和现象。
同时,当硬件调试成功后,利用ProteusARES软件,很容易获得其PCB图,为今后电路板的制造提供了方便。
2.1.2ProteusISIS工作环境
图2-1ProteusISISProfessional用户界面
如图所示2-1“ISISProfessional”也提供了多种命令执行方式:
菜单栏提供了诸如文件File(文件)、View(视图)、Edit(编辑)、Tools(工具)、Design(设计)、Graph(图形)、Source(源)、Debug(调试)、Library(库)、Template(模板)和Help等12种操作菜单;使用工具栏按钮可以快速地执行ISIS命令;使用键盘快捷键也可以执行ISIS命令,键盘快捷键根据使用习惯等需要还可以重新设置。
2.1.3Proteus的基本操作
使用Proteus进行设计仿真的基本操作步骤:
(1)新建设计文件;
(2)对象的选择与放置;(3)对象的编辑;(4)电路布线;(5)设置元器件属性;(6)电气规则检查;(7)仿真调试。
2.1.4Proteus简单应用
(1)绘制原理图:
绘制原理图要在原理图编辑窗口中的蓝色方框内完成。
原理图编辑窗口的操作是不同于常用的WINDOWS应用程序的,正确的操作是:
用左键放置元件;右键选择元件;双击右键删除元件;右键拖选多个元件;先右键后左键编辑元件属性;先右键后左键拖动元件;连线用左键,删除用右键;改连接线:
先右击连线,再左键拖动;中键放缩原理图。
(2)定制自己的元件:
有三个个实现途径,一是用PROTEUSVSMSDK开发仿真模型,并制作元件;另一个是在已有的元件基础上进行改造,比如把元件改为bus接口的;还有一个是利用已制作好(别人的)的元件,我们可以到网上下载一些新元件并把它们添加到自己的元件库里面。
(3)Sub-Circuits应用:
用一个子电路可以把部分电路封装起来,这样可以节省原理图窗口的空间。
2.2Keil软件
2.2.1Keil软件简介
KeiluVision4软件是德国KeilSoftware公司推出的微处理器开发平台,可以开发多种80C51等兼容的单片机程序,可以用来进行工程创建和管理、编辑、编译C源代码和汇编源程序、链接和重定位目标文件和库文件、生成HEX文件、调试目标程序等完整的开发流程,具有丰富的库函数和功能强大的集成开发工具,全Windows操作界面。
另外,只要看一下编译后生成的汇编代码,就能体会到Keil生成的目标代码效率非常的高,多数语句生成的汇编代码很紧凑,很容易使初学者理解。
在开发大型软件时更能体现高级语言的优势。
Keiluvision4软件支持C语言和汇编语言编程。
Keil提供包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,由以下几部分组成:
μVisionIDE集成开发环境C51编译器、A51汇编器、LIB51库管理器、BL51连接/定位器、OH51目标文件生成器以及Monitor-51、RTX51实时操作系统。
Keiluvision软件的诸多功能受到众多用户的欢迎。
2.2.2KeiluVision4工作环境
图2-2Keiluvision4集成开发环境界面
从图2-2可以看出,Keiluvision4集成开发环境与其他常用的Windows窗口软件类似,设置有菜单栏、可以快速选择命令的按钮工具栏、工程窗口、源代码文件窗口、对话窗口、信息显示窗口。
Keiluvision4允许同时打开浏览多个源程序文件,它提供了多种命令执行方式菜单栏提供了诸如文件、编辑、视图、项目/工程、闪存、程序调试、片上外设寄存器设置和观察,开发工具选项、软件版控制系统菜单等11种操作菜单,使用工具栏按钮或键盘快捷键可以执行uvision4命令。
2.2.3Keil工程的创建
使用Keil软件的项目/工程开发流程的具体步骤:
(1)新建一个工程,从设备器件库中选择目标器件(CPU),配置工具设置;
(2)建立源程序文件,用C51语言或汇编语言编辑程序;(3)添加源程序文件到工程中;(4)工程参数的设置(5)编译、链接源程序,并修改源程序中的错误;(6)工程的调试和运行,生成可执行代码文件(.hex)
成功编译/汇编、连接后,选择菜单Debug-Start/StopDebugSession(或按Ctrl+F5键)进入程序调试状态,Keil提供对程序的模拟调试功能,内建一个功能强大的仿真CPU以模拟执行程序。
Keil能以单步执行(按F11或选择Debug-Step)、过程单步执行(按F10或选择Debug-StepOver)、全速执行等多种运行方式进行程序调试。
如果发现程序有错,可采用在线汇编功能对程序进行在线修改(Debug-InlineAssambly),不必执行先退出调试环境、修改源程序、对工程重新进行编译/汇编和连接、然后再次进入调试状态的步骤。
对于一些必须满足一定条件(如按键被按下等)才能被执行的、难以用单步执行方式进行调试的程序行,可采用断点设置的方法处理(Debug-Insert/RemoveBreakpoint或Debug-Breakpoints…等)。
在模拟调试程序后,还须通过编程器将.hex目标文件烧写入单片机中才能观察目标样机真实的运行状况。
3系统总体方案的设计
3.1系统方案的设计
该温度控制系统的总体设计框图如图3-1所示,主要由单片机、数字温度传感器DS18B20、LED数码管、蜂鸣器、键盘等组成。
当传感器监测到温度信息后传输给单片机,单片机对接收到的数据进行处理,将数据实时显示到LED数码管显示器上,系统设置了温度的上下限,当现场温度超过或低于这个范围时,系统就会通过蜂鸣器进行报警。
图3-1系统总体框图
3.2系统方案的论证
3.2.1单片机的选型
在嵌入式领域中有多种微处理器可以选择,比如FPGA、DSP、单片机、ARM等,在这些处理器中单片机的价格最低,性能适中,适合此类场合。
下面对一些常用的单片机进行说明:
(1)51系列单片机。
51单片机是对目前所有兼容Intel8031指令系统的单片机的统称,其代表型号有ATMEL公司的AT89系列等,Philips、华邦、Dallas、Siemens(Infineon)等公司也有许多兼容的产品,它广泛应用于工业控制领域,白色家电等领域之中。
目前很多公司都有51系列的兼容机型推出,在今后很长的一段时间内将占有大量市场。
(2)AVR系列单片机
AVR单片机是1997年由ATMEL公司研发出的增强型内置Flash的RISC(ReducedInstructionSetCPU)精简指令集高速8位单片机。
AVR单片机废除了机器周期,抛弃复杂指令计算机(CISC)追求指令完备的做法;采用精简指令集,以字作为指令长度单位,将内容丰富的操作数与操作码安排在一字之中,广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。
(3)MSP430
MSP430系列是一个16位、具有精简指令集、超低功耗的混合型单片机,由于它具有极低的功耗、丰富的片内外设和方便灵活的开发手段,已成为众多单片机系列中的一颗耀眼的新星。
片上集成了AD、DA、PWM、LCD驱动,其比较器AD采用方式能达到很高的精度,开发系统也很便宜。
缺点是在位操作时有点麻烦,不适合用于逻辑控制以及对功耗不敏感的适用场合。
从成本、开发的难易程度考虑,我选用了ATMEL公司的AT89S51单片机作为温度控制系统的核心。
AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
3.2.2传感器的选型
(1)模拟温度传感器。
传统的模拟温度传感器,如热电感、热敏电阻存在着一些缺点:
①在一些温度范围内线性不好,需要进行冷端补偿。
②热惯性大,响应时间慢。
集成模拟温度传感器与之相比,具有灵敏度高、线性度好、响应速度快等优点,而且它还将驱动电路、信号处理电路以及必要的逻辑控制电路集成在单片IC上,有实际尺寸小、使用方便等优点。
AD590是美国模拟器件公司的电流输出型温度传感器,供电电压范围为3~30V,输出电流223uA(-50℃)~423Ua(+150℃),灵敏度为1uA∕℃。
作为一种高阻电流源,最高可达20M欧,所以它不必考虑选择开关或CMOS多路转换器所引入的附加电阻造成的误差。
适用于多点温度测量和远距离温度测量的控制。
(2)数字温度传感器
数字温度传感器能把温度物理量通过温度敏感元件和相应电路转换成方便计算机、PLC、智能仪表等数据采集设备直接读取的数字量的传感器。
优点是使用方便、测量精度高等。
DS18B20是DALLAS公司生产的最新可组网、单线式温度传感器,它将传感器、A/D、寄存器、接口电路集成在一个芯片上,采用1-Wire总线协议,可直接与计算机连接,实现直接数字化输出,便于单片机处理及控制,在0—100摄氏度时,最大线形偏差小于1摄氏度,性能非常优越,如图3-2所示。
图3-2DS18B20外形图
DS18B20具有以下主要特性:
①DS18S20的适应电压范围更宽,其范围为:
3.0-5.5V,而且它能够直接由数据线获取电源(寄生电源),无需外部工作电源。
②DS18S20提供了9位摄氏温度测量,具有非易失性、上下触发门限用户可编程的报警功能。
③DS18S20通过1-Wire®总线与中央微处理器通信,仅需要单根数据线(或地线)。
同时,在使用过程中,它不需要任何的外围的元件,全部的传感元件和转换电路集成在形状如一只三极管的集成电路内。
④DS18S20具有-55°C至+125°C的工作温度范围,以0.5度递增,在-10°C至+85°C温度范围内精度为±0.5°C。
⑤每片DS18S20具有唯一的64位序列码,这些码允许多片DS18S20在同一条1-Wire总线上工作,因而,可方便地使用单个微处理器控制分布在大范围内的多片DS18S20器件。
⑥DS18S20的测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时还可以传送给CRC校验码,它具有极强的抗干扰纠错的能力。
⑦DS18S20具有负载特性,当电源极性接反时,芯片不会因发热而烧毁,但是不能正常的工作。
⑧通过编程可实现9~12位的数字读数方式
⑨无需外部器件。
⑩应用于温度控制、工业系统、热感测系统。
根据上面的介绍,本次设计我使用DS18B20作为温度采集元件。
3.2.3键盘的选型
在单片机应用系统中,命令输入是通过键盘来实现的,键盘是实现人机交互的途径。
键盘是由许多按键开关组成的,一旦按键按下,单片机I/O口的电平会发生变化,单片机通过判断I/O口的变化来识别按键。
在单片机的接口应用中,键盘接口一般分为两种:
一种是独立式键盘,一种是矩阵式键盘。
如图3-3所示
图3-3独立式键盘和矩阵式键盘
独立式键盘的每一个按键都有一个信号线与单片机相连,另一端接地,每一个键互不影响,这种键盘的优点是结构简单、使用方便,缺点是占用资源过多,在按键数目越多,占用的I/O口就越多。
矩阵式键盘的按键连接在行列线构成的矩阵电路的交叉处,每当有按键按下时通过该键将相应的行列连通。
本次设计仅需要三个键即可,分别是模式切换键、加键、减键。
因此我选择使用独立式键盘。
4系统硬件模块的设计
4.1单片机AT89S51电路的设计
4.1.1单片机系统的组成
一个完整的单片机系统可由硬件和软件两大部分组成。
硬件系统是单片机的物理实体,软件则是对硬件使用和管理的程序。
单片机的硬件主要由单片机芯片和外围设备构成。
而单片机芯片则包含微处理器(CPU),存储器(ROM和RAM)、输入输出口(I/O口)、定时/计数器及中端系统等。
它们通过地址总线(AB)、数据总线(DB)和控制总线(CB)连接起来。
4.1.2单片机的引脚功能
(1)电源引脚
VCC:
电源
VSS:
接地
(2)时钟电路引脚
XTAL1:
振荡器反相放大器及内部时钟发生器的输入端,外接晶体的一个引脚,当采用外部振荡器时,此引脚接地。
XTAL2:
振荡器反相放大器的输出端,当采用外部振荡器时,此引脚接外部振荡源。
(3)控制线与复位电路引脚
RST:
复位输入引脚。
当振荡工作时,RST引脚出现两个机器周期的高电平,将使单片机复位。
ALE/PROG:
允许地址锁存输出/编程输入引脚。
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
一般情况下,ALE端以不变的频率周期输出正脉冲信
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 单片机 语言 温度计 设计