基于单片机的热水控制器设计

上传人:mg****2 文档编号:122124848 上传时间:2020-03-01 格式:DOC 页数:33 大小:812KB
返回 下载 相关 举报
基于单片机的热水控制器设计_第1页
第1页 / 共33页
基于单片机的热水控制器设计_第2页
第2页 / 共33页
基于单片机的热水控制器设计_第3页
第3页 / 共33页
基于单片机的热水控制器设计_第4页
第4页 / 共33页
基于单片机的热水控制器设计_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《基于单片机的热水控制器设计》由会员分享,可在线阅读,更多相关《基于单片机的热水控制器设计(33页珍藏版)》请在金锄头文库上搜索。

1、.武夷山职业学院毕业论文(设计) 题 目: 基于单片机的热水控制器系 别: 电子信息工程技术 专业(班级): 09级电信 姓 名: 王勇 学 号: 20092202110 指 导 教师 : 刘梅卿 完 成 时间 : 2012 年 6 月 5 日目 录摘要31 绪论32 系统的总体设计33 系统的主要硬件介绍43.1 单片机介绍43.1.1单片机概述43.1.2 单片机编程语言介绍63.1.3 系统选择73.1.4 AT89C51引脚功能介绍83.2 温度传感器DS18B20103.2.1 DS18B20简介113.2.2 DS18B20的硬件连接124 热水控制器的系统设计134.1硬件设计1

2、34.1.1 温度检测部分134.1.2 LED数码管显示电路134.1.3 报警及控制输出部分144.1.4 单片机及按键电路设计154.2 软件系统设计174.2.1 系统程序流程图174.2.2 单片机软件开发语言184.2.3 DS18B20驱动程序194.2.4 系统的程序源代码23参考文献28附:系统整体硬件电路图29摘要本文以单片机AT89C51为核心,从DS18B20温度检测的数据采集、设定值调整、LED数码管显示电路、报警及输出控制电加热器等几个方面出发,详细研究和设计了基于单片机的热水控制器的各个部分内容,设计了单片机及其外围电路,并结合一套经典的程序算法。给出了一套合理的

3、基于单片机的热水控制器软硬件解决方案。关键字 温度检测 DS18B20 单片机 温度控制1 绪论 单片机在电子产品中的应用已经越来越广泛,并且在很多电子产品中也将其用到温度检测和温度控制。基于单片机的热水控制器较传统的温度控制器具有更高的智能性,并且系统的功能更加易于扩展和升级,是一种低成本的温度检测、控制方案。 在一些温控系统电路中,广泛采用的是通过热电偶、热电阻或PN结测温电路经过相应的信号调理电路,转换成AD转换器能接收的模拟量,再经过采样保持电路进行AD转换,最终送入单片机及其相应的外围电路,完成监控。但是由于传统的信号调理电路实现复杂、易受干扰、不易控制且精度不高。本文介绍单片机结合

4、DS18B20热水控制器设计,本系统用一种新型的可编程温度传感器(DS18B20),不需复杂的信号调理电路和AD转换电路能直接与单片机完成数据采集和处理,实现方便、精度高,可根据不同需要用于各种场合。2 系统的总体设计单片机的热水控制器需要完成温度的检测并可以通过按键设定调整最高温度和最低温度值、能够显示当前温度值、最高温度和最低温度值,同时要实现水温超过最高温度+3度时,停止电热棒加热并报警;当水位低于最低温度-3度时,启动电热棒加热等功能。需要系统包括单片机最小系统电路和按键电路、LED显示电路、温度检测部分、报警和控制输出等主要部分,系统地总体设计狂徒如下图所示:LED数码管显示DS18

5、B20温度检测部分单片机报警和输出控制部分按键电路图2.1 系统整体设计框图3 系统的主要硬件介绍3.1 单片机介绍3.1.1单片机概述单片微机(Single-Chip Microcomputer)简称单片机,通常统称微控制器(Micro-Controller 简写C)或微型处理部件(Micro Controller Unit 简写MCU)。一般的说,单片机就是在一块硅片上集成CPU、RAM、ROM、定时器/计数器、和多种I/O的完整的数字处理系统。二十世纪,微电子、IC集成电路行业发展迅速,其中单片机行业的发展最引人注目。单片机功能强、价格便宜、使用灵活,在计算机应用领域中发挥着极其重要的作

6、用。从INTEL公司于1971年生产第一颗单片机Intel-4004开始,开创了电子应用的“智能化”新时代。单片机以其高性价比和灵活性,牢固树立了其在嵌入式微控制系统中的“霸主”地位,在PC机以286、386、Pentium、P高速更新换代的同时,单片机却“始终如一”保持旺盛的生命力。例如,MCS-51系列单片机已有十多年的生命期,如今仍保持着上升的态势就充分证明了这一点。1.单片机的结构与组成目前,单片机的系统结构有两种类型:一种是将程序和数据存储器分开使用, 即哈佛(Harvard)结构,当前的单片机大都是这种结构。另一种是采用和PC机的冯.诺依曼(Von Neumann)类似的原理,对程

7、序和数据存储器不作逻辑上的区分,用来存放用户程序,可分为EPROM、OTP、ROM和FLASH等类。EPROM型内存编程后其内容可用紫外线擦除,用户可反复使用,故特别适用于开发过程,但EPROM型单片机价格很高。具有ROM型(掩膜型)内存的单片机价格最低,它适用于大批量生产。由于ROM型单片机的代码只能由生产厂商在制造芯片时写入,故用户要更改程序代码就十分不便,在产品未成熟时选用ROM型单片机风险较高。OTP型(一次可编程)单片机介于EPROM和ROM型单片机之间,它允许用户自己对其编程,但只能写入一次。OTP型单片机生产多少完全可由用户自己掌握,不存在ROM型有最小起订量和掩膜费问题,另外,

8、该类单片机价格已同掩膜型十分接近,故特别受中小批量客户的欢迎。Flash型(闪速型)单片机允许用户使用编程工具或在线快速修改程序代码,且可反复使用,故一推出就受到广大用户的欢迎。Flash型单片机,即可用于开发过程,也可用于批量生产,随着制造工艺的改进,Flash型单片机价格不断下降,使用越来越普遍,它已是现代单片机的发展趋势。 随机内存(RAM):用来存放程序运行时的工作变量和数据,由于RAM的制作工艺复杂,价格比ROM高得多,所以单片机的内部RAM非常宝贵,通常仅有几十到几百个字节。RAM的内容是易失性(也有的称易挥发性)的,掉电后会丢失。最近出现了EEPROM或FLASH型的数据存储器,

9、方便用户存放不经常改变的数据及其它重要信息。单片机通常还有特殊寄存器和通用寄存器,它们是单片机中存取速度最快的内存,但通常存储空间很小。2.中央处理器(CPU)是单片机的核心单元,通常由算术逻辑运算部件ALU和控制部件构成。CPU就象人的大脑一样,决定了单片机的运算能力和处理速度。 并行输入/输出(I/O)口:通常为独立的双向口,任何口既可以用作输入方式,又可以作输出方式,通过软件编程来设定。现代的单片机的I/O口也有不同的功能,有的内部具有上拉或下拉电阻,有的是漏极开路输出,有的能提供足够的电流可以直接驱动外部设备。I/O是单片机的重要资源,也是衡量单片机功能的重要指针之一。串口输入/输出口

10、:用于单片机和串行设备或其它单片机的通信。串行通信有同步和异步之分,这可以用硬件或通用串行收发器件来实现。不同的单片机可能提供不同标准的串行通信接口,如UART、SPI、Micro Wire等。3.定时器/计数器(T/C)单片机内部用于精确定时或对外部事件(输入信号如脉冲)进行计数,有的单片机内部有多个定时/计数器。4.系统时钟通常需要外接石英晶体或其它振荡源来提供时钟信号输入,也有的使用内部RC振荡器。 以上是单片机的基本构成,现代的单片机又加入了许多新的功能部件,如模拟/数字转换器(A/D)、数字/模拟转换器(D/A)、温度传感器、液晶(LCD)驱动电路、电压监控、看门狗(WDT)电路、低

11、压检测(LVD)电路等等。3.1.2 单片机编程语言介绍对于51系列单片机,现有四种语言支持,即汇编、PL/M,C和BASIC。BASIC通常附在PC机上,是初学编程的第一种语言。一个新变量名定义之后可在程序中作变量使用,非常易学,根据解释的行可以找到错误而不是当程序执行完才能显现出来。BASIC由于逐行解释自然很慢,每一行必须在执行时转换成机器代码,需要花费许多时间不能做到实时性。BASIC为简化使用变量,所有变量都用浮点值。BASIC是用于要求编程简单而对编程效率和运行速度要求不高的场合。PL/M是Intel从8080微处理器开始为其系列产品开发的编程语言。它很像PASCAL,是一种结构化

12、语言,但它使用关键词去定义结构。PL/M编译器好像汇编器一样可产生紧凑代码。PL/M总的来说是“高级汇编语言”,可详细控制着代码的生成。但对51系列,PL/M不支持复杂的算术运算、浮点变量而无丰富的库函数支持。学习PL/M无异于学习一种新语言。C语言是一种源于编写UNIX操作系统的语言,它是一种结构化语言,可产生压缩代码。C语言结构是以括号 而不是子和特殊符号的语言。C可以进行许多机器级函数控制而不用汇编语言。与汇编相比,有如下优点:对单片机的指令系统不要求了解,仅要求对51的内存结构有初步了解寄存器分配、不同内存的寻址及数据类型等细节可由 编译器管理程序有规范的结构,可分为不同的函数。这种方

13、式可使程序结构化将可变的选择与特殊操作组合在一起的能力,改善了程序的可读性编程及程序调试时间显著缩短,从而提高效率提供的库包含许多标准子程序,具有较强的数据处理能将已编好程序可容易的植入新程序,因为它具有方便的模块化编程技术 C语言作为一种非常方便的语言而得到广泛的支持,C语言程序本 身并不依赖于机器硬件系统,基本上不做修改就可根据单片机不同较快地移植过来。51的汇编语言非常像其它汇编语言。指令系统比第一代微处理器要强一些。51的不同存储区域使得其复杂一些。尽管懂得汇编语言不是你的目的,看懂一些可帮助你了解影响任何语言效率的51特殊规定。例如,懂得汇编语言指令就可以使用在片内RAM作变量的优势

14、,因为片外变量需要几条指令才能设置累加器和数据指针进行存取。要求使用浮点和启用函数时只有具备汇编编程经验才能避免生成庞大的、效率低的程序,这需要考虑简单的算术运算或先算好的查表法。最好的单片机编程者应是由汇编转用C而不是原来用过标准C语言的人。由此来看,单片机有着微处理器所不具备的功能,它可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。3.1.3 系统选择本系统以MCS-51单片机成员中的AT89C51为控制核心。AT89C51是美国ATMEL公司生产的低功耗,高性能CMOS 8位单片机,片内含4k bytes的可系统编程的Flash只读程序内存,器件采用ATMEL公司的

15、高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序内存既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位AT89C51单片机可为您提供许多高性价比的应用场合,它灵活应用于各种控制领域。主要性能参数:(1)与MCS-51产品指令系统完全兼容(2)4K字节在系统编程(ISP)Flash闪速内存(3)1000次擦写周期(4)4.0-5.5V的工作电压范围(5)全静态工作模式:0Hz33MHz(6)三级程序加密锁(7)2568字体内部RAM(8)32个可编程I/O口线(9)3个16位定时/计数器(10)5个中断源(11)全双工串行UART通道(12)低功耗空闲和掉电模式(13)中断可从空闲模唤醒系统(14)看门狗(WDT)及双数据指针(15)掉电标识和快速编程特性(16)灵活的在系统编程(ISP字节或页写模式)其内部结构结构如图3.1所示:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号