毕业设计(论文)数字式温度控制器的设计----论文_第1页
毕业设计(论文)数字式温度控制器的设计----论文_第2页
毕业设计(论文)数字式温度控制器的设计----论文_第3页
毕业设计(论文)数字式温度控制器的设计----论文_第4页
毕业设计(论文)数字式温度控制器的设计----论文_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业设计论文数字式温度控制器的设计-论文 CHANGZHOU INSTITUTE OF TECHNOLOGY毕 业 设 计 说 明 书题目数字式温度控制器的设计二级学院直属学部延 陵 学 院专业 电子信息工程 班级 08信Y2 学生姓名 戴涛 学号 08120908 指导教师姓名 毛建军 职称 讲师 评阅教师姓名 职称 2021 年 6 月摘 要信息科学和微电子技术的飞速开展给控制领域带来了巨大的飞跃控制技术更加趋向自动化和智能化为无数的使用者带来了方便在控制领域里温度是一个常见的名词然而它所带来的技术问题和所起的作用却是非同一般的本文研制的数字式定时温控系统是一个基于单总线数字式温度传感器D

2、S18B20以单片机芯片为核心的系统采用单片机作为主要局部它的主要组成局部有AT89C52单片机DS18B20温度传感器LCD1602显示模块它可以实时的温度显示和温度门限报警本设计简单性能稳定灵敏度高抗干扰能力强使用方便等优点广泛应用于养殖业及冰箱空调器粮仓等日常生活中温度的测量关键词温度测量AT89C52单片机DS18B20温度传感器LCD1602AbstractTo the control areas the rapid development of information science and microelectronics technology a huge leap forwa

3、rd control techniques tend to be more automated andintelligent and has brought convenience for many users In the control area thetemperature is a common term however technical issues and the role it brings unusuallyThe digital time temperature control system developed in this article is a single bus

4、-based digital temperature sensor DS18B20 single chip as the core system Usingthe microcontroller as the main part Its main components AT89C52 microcontrollerDS18B20 temperature sensor LCD1602 the display module It can be real-timetemperature display and temperature threshold alarm The design is sim

5、ple stable performance high sensitivity strong anti-jamming capability easy to use widely used inthe measurement of temperature in the daily life of the farming industry and refrigerators air conditioners silos and otherKeywords Temperature measurement AT89C52 microcontroller DS18B20 temperature sen

6、sor LCD1602 目 录摘 要1Abstract2目 录1第一章 绪论211研究背景和意义212目的及意义413思路和主要内容5第二章 芯片功能简介621单片机的开展情况和应用622单片机的结构和性能723单片机的选择8231管脚说明9232片上资源1224温度传感器的选择17241 DS18B20的外形和内部结构18242 DS18B20的测温原理19243 DS18B20的外部电路图20244 DS18B20的各个ROM命令20245 DS1820使用中考前须知2225 显示器的选择23第三章 硬件设计2831时钟震荡电路2832显示电路2833温度采集电路29第四章 软件设计304

7、1主程序设计3042 DS18B20工作流程3143数据测试3244仿真结果32总结34致谢35参考文献36附录源程序38第一章 绪论11研究背景和意义随着新技术的不断开发与应用近年来单片机开展十分迅速一个以微机应用为主的新技术革命浪潮正在蓬勃兴起单片机的应用已经渗透到电力冶金化工建材机械食品石油等各个行业传统的温度采集方法不仅费时费力而且精度差单片机的出现使得温度的采集和数据处理问题能够得到很好的解决温度是工业对象中的一个重要的被控参数然而所采用的测温元件和测量方法也不相同产品的工艺不同控制温度的精度也不相同因此对数据采集的精度和采用的控制方法也不相同传统的控制方式以不能满足高精度高速度的控

8、制要求如温度控制表温度接触器其主要缺点是温度波动范围大由于他主要通过控制接触器的通断时间比例来到达改变加热功率的目的受仪表本身误差和交流接触器的寿命限制通断频率很低近几年来快速开展了多种先进的温度控制方式如PID控制模糊控制神经网络及遗传算法控制等这些控制技术大大的提高了控制精度不但使控制变得简便而且使产品的质量更好降低了产品的本钱提高了生产效率本系统所使用的加热器件是电炉丝功率为三千瓦要求温度在4001000静态控制精度为243最早的温度计是在1593年由意大利科学家伽利略创造的他的第一只温度计是一根一端敞口的玻璃管另一端带有核桃大的玻璃泡这种温度计受外界大气压强等环境因素的影响较大所以测量

9、误差大荷兰人华伦海特在1709年利用酒精在1714年又利用水银作为测量物质制造了更精确的温度计把一定浓度的盐水凝固时的温度定为0把纯水凝固时的温度定为32把标准大气压下水沸腾的温度定为212用代表华氏温度这就是华氏温度计随着科学技术日益迅速的开展数字监控系统已经深入到生活的各个方面它具有技术效果好经济效益高维修方便等许多优点数字温度计与传统的温度计相比也具有读数方便测温范围广测温准确的优势对其进行研究和设计可使我们更加熟练掌握单片机编程及PROTEL的使用有利于将所学的专业知识更好地应用于实践中当国内从80年代起开始了单片机的热潮二十多年过去了单片机从研究所走出来 成为日常生活中的一个不可缺少

10、的部件硬件方面日趋多样化4位8位16位32位等型号共同并存在不同的领域存在如家电玩具工业设备仪器通讯等软件方面开展主要为汇编语言C语言嵌入式操作系统速度稳定性特别要求的场合较多采用汇编语言和C语言单片机作为微型计算机的一个重要分支应用面很广开展很快自单片机诞生至今已开展为上百种系列的近千个机种目前单片机正朝着高性能和多品种方向开展趋势将是进一步向着CMOS化低功耗小体积大容量高性能低价格和外围电路内装化等几个方面开展单片机的品种繁多按应用范围分为通用型和专用型专用型是针对某种特定产品而设计的例如用于洗衣机的单片机通用型单片机有总线型和非总线型或者8位和16位之分总线型设有并行地址总线数据总线和

11、控制总线的引脚便于扩展外围器件非总线型没有有总线引脚芯片体积小要扩展可通过IO口因此非线型更适合中小系统以下就单片机局部功能器件的应用举例简要说明首先以实时时钟为例一些单片机控制系统要求在确定的时刻进行某种检测与操作有的控制系统要求在进行某种操作时记下进行操作的具体时间例如现在各公司广泛用的员工考勤打卡机有些网页的登陆同时记下用户的登陆时间等要到达这个目的就要给系统配置实时时钟一边根据时钟提供的时间按时操作或记录当然生产实时时钟可以用软件实现但最方便的还是用时钟芯片常用的时钟芯片又并行和串行两种形式看门狗是监视程序正常运行的一种定时器它的定时时间固定不编一旦定时时间到就会产生中断或产生溢出脉冲

12、使系统复位为了不然系统复位我们可以在运行的程序中插入对看门狗定时器的清零指令不时对它清零刷新这样溢出就不会发生在许多单片机内部就有看门狗电路如AT8951以及Microchip公司的PIC系列产品等如果单片机内部没有看门狗电路可以用片内多余的定时器通过软件自行构成也可选用集成电路近年来新型单片机内的接口无论从类型和数量上都有很大的开展单片机从功能到形态都有了飞速的开展在开展出新一代单片机的同时也在不断扩充着各种功能 如ADPWA高速IO口PCA计数器捕获比拟比拟逻辑等这不仅大大提高了单片机的功能而且使系统的总体结构也大大简化了 本设计使用单片机作为核心进行控制单片机具有集成度高通用性好功能强特

13、别是体积小重量轻耗能低可靠性高抗干扰能力强和使用方便等独特优点在数字智能化方面有广泛的用途温度控制系统在国内各行各业的应用虽然已经十分广泛但从国内生产的温度控制器来讲总体开展水平仍然不高同日本美国德国等先进国家相比仍然有着较大的差距成熟的温控产品主要以点位控制及常规的PID控制器为主它们只能适应一般温度系统控制而用于较高控制场合的智能化自适应控制仪表国内技术还不十分成熟形成商品化并广泛应用的控制仪表较少随着我国经济的开展及参加WTO我国政府及企业对此都非常重视对相关企业资源进行了重组相继建立了一些国家企业的研发中心开展创新性研究使我国仪表工业得到了迅速的开展单片机是指一个集成在一块芯片上的完整

14、计算机系统尽管他的大局部功能集成在一块小芯片上但是它具有一个完整计算机所需要的大局部部件CPU内存内部和外部总线系统目前大局部还会具有外存同时集成诸如通讯接口定时器实时时钟等外围设备而现在最强大的单片机系统甚至可以将声音图像网络复杂的输入输出系统集成在一块芯片上单片机也被称为微控制器是因为它最早被用在工业控制领域单片机由芯片内仅有CPU的专用处理器开展而来最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中使计算机系统更小更容易集成进复杂的而对体积要求严格的控制设备当中INTEL的Z80是最早按照这种思想设计出的处理器从此以后单片机和专用处理器的开展便分道扬镳早期的单片机都是8位或4位的

15、其中最成功的是INTEL的8031因为简单可靠而性能不错获得了很大的好评此后在8031上开展出了MCS51系列单片机系统基于这一系统的单片机系统直到现在还在广泛使用随着工业控制领域要求的提高开始出现了16位单片机但因为性价比不理想并未得到很广泛的应用90年代后随着消费电子产品大开展单片机技术得到了巨大的提高随着INTEL i960系列特别是后来的ARM系列的广泛应用32位单片机迅速取代16位单片机的高端地位并且进入主流市场而传统的8位单片机的性能也得到了飞速提高处理能力比起80年代提高了数百倍目前高端的32位单片机主频已经超过300MHz性能直追90年代中期的专用处理器而普通的型号出厂价格跌落

16、至1美元最高端的型号也只有10美元当代单片机系统已经不再只在裸机环境下开发和使用大量专用的嵌入式操作系统被广泛应用在全系列的单片机上而在作为掌上电脑和 核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统 12目的及意义温度是一个十分重要的物理量对它的测量与控制有十分重要的意义随着现代工农业技术的开展及人们对生活环境要求的提高人们也迫切需要检测与控制温度在人类的生活环境中温度扮演着极其重要的角色无论你生活在哪里从事什么工作无时无刻不在与温度打着交道在冶金钢铁石化水泥玻璃医药等等行业可以说几乎80的工业部门都不得不考虑着温度的因素温度对于工业如此重要由此推进了温度传感器的

17、开展通过本次设计可以稳固加深和扩大单片机应用的知识面提高综合及灵活运用所学知识解决工业控制的能力培养针对课题需要选择和查阅有关手册图表及文献资料的自学能力提高组成系统编程调试的动手能力通过对课题设计方案的分析选择比拟熟悉单片机用系统开发研制的过程软硬件设计的方法内容及步骤13思路和主要内容把DS18B20作为温度传感元件将环境温度数据转换成数字信号发送给AT89C52AT89C52通过程序内部的运算将转换好的温度数值发送给LCD显示出来根据系统设计的功能本时钟温度系统的设计必须采用单片机软件系统实现用单片机的自动控制能力来测量显示温度数值初步确定设计系统由单片机主控模块测温模块显示模块报警模块

18、共4个模块组成对于单片机的选择如果用8051系列由于它没有内部RAM系统又需要一定的内存存储数据AT89C52是一个低功耗高性能CMOS 8位的单片机片内含8k Bytes ISP的可反复擦写1000次的Flash只读程序存储器兼容标准MCS-51指令系统及80C51引脚结构功能强大的AT89C52可为许多嵌入式控制应用系统提供高性价比的解决方案而AT89C52与AT89C51相比外型管脚完全相同AT89C51的HEX程序无须任何转换可直接在AT89C52运行且AT89C52比AT89C51新增了一些功能相比拟后在本设计中选用AT89C52更能很好的实现温度计控制功能 测温电路可以使用热敏电阻

19、之类的器件利用其感温效应将被测温度变化的电压或电流采集过来进行AD转换后就可以用单片机进行数据处理但是这种感温电路比拟复杂且采用热敏电阻精度低重复性可靠性都比拟差如果采用温度传感器DS18B20可以减少外部硬件电路而且可以很容易直接读取被测温度值进而转换还可以在高温报警且本钱低易使用可以很好的满足设计要求所以本文采用传感器DS18B20代替传统的测温电路温度的显示可以采用LED数码管来显示LED亮度高醒目但是电路复杂占资源多且信息量小而采用液晶显示器有明显的优点工作电流比LED小几个数量级功耗低尺寸小厚度约为LED的13字迹清晰美观使人舒服寿命长使用方便可得性强故本设计采用LCD来显示温度控制

20、器使用单片机AT89C52温度计传感器使用DS18B20用液晶实现温度显示本温度计大体分三个工作过程首先由DS18B20温度传感器芯片测量当前的温度并将结果送入单片机然后通过AT89C52单片机芯片对送来的测量温度读数进行计算和转换井将此结果送入液晶显示模块最后SMC1602A芯片将送来的值显示于显示屏上电路主要由DSl8820温度传感器芯片SMCl602A液晶显示模块芯片和AT89C52单片机芯片组成其中DSI8B20温度传感器芯片采用一线制与单片机相连它独立地完成温度测量以及将温度测量结果送到单片机的工作第二章 芯片功能简介21单片机的开展情况和应用当国内从80年代起开始了单片机的热潮二十

21、多年过去了单片机从研究所走出来成为日常生活中的一个不可缺少的部件硬件方面日趋多样化4位8位16位32位等型号共同并存在不同的领域存在如家电玩具工业设备仪器通讯等软件方面开展主要为汇编语言C语言嵌入式操作系统速度稳定性特别要求的场合较多采用汇编语言和C语言单片机作为微型计算机的一个重要分支应用面很广开展很快自单片机诞生至今已开展为上百种系列的近千个机种目前单片机正朝着高性能和多品种方向开展趋势将是进一步向着CMOS化低功耗小体积大容量高性能低价格和外围电路内装化等几个方面开展单片机的品种繁多按应用范围分为通用型和专用型专用型是针对某种特定产品而设计的例如用于洗衣机的单片机通用型单片机有总线型和非

22、总线型或者8位和16位之分总线型设有并行地址总线数据总线和控制总线的引脚便于扩展外围器件非总线型没有有总线引脚芯片体积小要扩展可通过IO口因此非线型更适合中小系统以下就单片机局部功能器件的应用举例简要说明首先以实时时钟为例一些单片机控制系统要求在确定的时刻进行某种检测与操作有的控制系统要求在进行某种操作时记下进行操作的具体时间例如现在各公司广泛用的员工考勤打卡机有些网页的登陆同时记下用户的登陆时间等要到达这个目的就要给系统配置实时时钟一边根据时钟提供的时间按时操作或记录当然生产实时时钟可以用软件实现但最方便的还是用时钟芯片常用的时钟芯片又并行和串行两种形式看门狗是监视程序正常运行的一种定时器它

23、的定时时间固定不编一旦定时时间到就会产生中断或产生溢出脉冲使系统复位为了不然系统复位我们可以在运行的程序中插入对看门狗定时器的清零指令不时对它清零刷新这样溢出就不会发生在许多单片机内部就有看门狗电路如AT8951以及Microchip公司的PIC系列产品等如果单片机内部没有看门狗电路可以用片内多余的定时器通过软件自行构成也可选用集成电路近年来新型单片机内的接口无论从类型和数量上都有很大的开展单片机从功能到形态都有了飞速的开展在开展出新一代单片机的同时也在不断扩充着各种功能如ADPWA高速IO口PCA计数器捕获比拟比拟逻辑等这不仅大大提高了单片机的功能而且使系统的总体结构也大大简化了22单片机的

24、结构和性能单片机的根本组成是由中央处理器 C P U 只读存储器 ROM 读写存储器 RAM 输入输出口 IO 等等组成此外里面还有一个时钟电路使单片机在进行运算和控制时都能有节奏地进行另外还有中断系统当单片机控制对象的参数到达某项需要加以干预的状态时就可传达给CPU使CPU采取适当的应付措施按结构形式分单片机有两种根本的结构形式普林斯顿结构和哈佛结构普林斯顿结构也称冯·诺伊曼结构是一种将程序指令存储器和数据存储器合并在一起的存储器结构程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置因此程序指令和数据的宽度相同如英特尔公司 Intel 的8086和MCS-51就采用了此结

25、构而哈佛结构是一种将程序指令存储和数据存储分开的存储器结构中央处理器 CPU 首先到程序指令存储器中读取程序指令内容解码后得到数据地址然后到相应的数据存储器中读取数据进行下一步操作 通常是执行 程序指令存储和数据存储分开可以使指令和数据有不同的数据宽度目前较多的单片机采用改良的哈佛结构如Microchip公司的PIC16芯片的程序指令是14位宽度而数据是8位宽度另外现在单片机采用一种三核 TriCore 结构这是种建立在一块片上的系统概念上的结构三核是数据和程序存储器核控制器和DSP核和外围用户专用电路ASIC这种单片机最大特点是把DSP和微控制器同时做在一个片上单片机按其内部数据通道的宽度可

26、分为4位8位1 6位3 2位及6 4位由于单片机的集成度高功能强可靠性高体积小功耗低使用方便等一系列优点目前已经渗入到人们工作和生活中就单片机本身来说除了4位机和8位机仍保持巨大的领域之外各种新型高性能的机型也在迅速开展针对市场上在大份额的八位单片机这里以51AVR和PIC八位单片机为例介绍单片机的性能Intel的51系列在市场上占有相当大的比例这与它优秀的性能分不开51系列的优点诸多它有完整的按位操作系统除能进行传送置位清零测试等操作还能进行位逻辑操作随着技术的开展其运行速度越来越快晶振频率可从以前的12MHz可提升到40MHzIO脚的设置简单使用方便当该脚做输入使用时将其置为高电平即可当该

27、脚做输出使用时那么上下电平均可在51单片机系列中随着制造工艺的飞速开展越来越多新型单片机出现使单片机的运行速度得到提升并引入了双数据指针及ISP功能ISP功能实现在系统可编程功能可以省去通用的编程器单片机在用户板上即可下载和烧录用户程序无需将单片机从生产好的产品上取下未定型的程序还可以边生产边完善加快了产品的开发速度减少了新产品因软件缺陷带来的风险AVR单片机是Atmel公司推出的较为新颖的单片机其显著的特点为高性能高速度低功耗它取消机器周期以时钟周期为指令周期实行作业A V R单片机指令以字为单位且大局部指令都为单周期指令而单周期既可执行本指令功能同时完成下一条指令的读取通常时钟频率用48M

28、Hz故最短指令执行时间为250125nsAVR系列没有类似累加器A的结构它主要是通过R16R31存放器来实现A的功能在AVR中没有像51系列的数据指针DPTR而是由X 由R26R27组成 Y 由R28R29组成 Z 由R30R31组成 三个16位的存放器来完成数据指针的功能在51系列中所有的逻辑运算都必须在A中进行而AVR却可以在任两个存放器之间进行省去了不少麻烦这些比51系列强PIC单片机系列是美国微芯公司 Micro-ship 的产品是当前市场份额增长最快的单片机之一CPU采用RISC结构分别有333558条指令 视单片机的级别而定 属精简指令集采用Harvard双总线结构运行速度快 指令

29、周期约160200ns 高效率运行的原因之一是它能使程序存储器的访问和数据存储器的访问并行处理这种指令流水线结构在一个周期内完成两局部工作一是执行指令二是从程序存储器取出下一条指令这样总的看来每条指令只需一个周期 个别除外 此外它还具有低工作电压低功耗驱动能力强等特点PIC系列单片机共分三个级别即根本级中级高级其中又以中级的PIC16F873 A PIC16F877 A 用的最多PIC系列单片机的IO口是双向的其输出电路为CMOS互补推挽输出电路IO脚增加了用于设置输入或输出状态的方向存放器从而解决了51系列IO脚为高电平时同为输入和输出的状态当置位1时为输入状态且不管该脚呈高电平或低电平对外

30、均呈高阻状态置位0时为输出状态不管该脚为何种电平均呈低阻状态有相当的驱动能力低电平吸入电流达25mA高电平输出电流可达20mA具有在线调试及编程 ISP 功能随着CMOS工艺的改良和提高闪速存储器在不断开展和完善应用越来越广容量越来越大价格越来越低闪存技术在各个领域得到应用最初的单片机片内只有并行输入输出接口定时器计数器它们的功能较弱实际应用中往往需要通过特殊的接口扩展功能从而也增加了应用系统结构的复杂性23单片机的选择对于单片机的选择如果用8051系列由于它没有内部RAM系统又需要一定的内存存储数据AT89C52是一个低功耗高性能CMOS 8位的单片机片内含8k Bytes ISP的可反复擦

31、写1000次的Flash只读程序存储器兼容标准MCS-51指令系统及80C51引脚结构功能强大的AT89C52可为许多嵌入式控制应用系统提供高性价比的解决方案而AT89C52与AT89C51相比外型管脚完全相同AT89C51的HEX程序无须任何转换可直接在AT89C52运行且AT89C52比AT89C51新增了一些功能相比拟后在本设计中选用AT89C52更能很好的实现温度计控制功能AT89C52是51系列单片机的一个型号它是ATMEL公司生产的AT89C52是一个低电压高性能CMOS 8位单片机片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器

32、RAM器件采用ATMEL公司的高密度非易失性存储技术生产兼容标准MCS-51指令系统片内置通用8位中央处理器和Flash存储单元功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合231管脚说明AT89C52有40个引脚32个外部双向输入输出IO端口同时内含2个外中断口3个16位可编程定时计数器2个全双工串行通信口2个读写口线AT89C52可以按照常规方法进行编程但不可以在线编程 S系列的才支持在线编程 其将通用的微处理器和Flash存储器结合在一起特别是可反复擦写的Flash存储器可有效地降低开发本钱兼容MCS51指令系统 ·8k可反复擦写 1000次Flash RO

33、M ·32个双向IO口·256x8bit内部RAM ·3个16位可编程定时计数器中断 时钟频率0-24MHz ·2个串行中断·可编程UART串行通道 ·2个外部中断源·共6个中断源 ·2个读写中断口线·3级加密位 ·低功耗空闲和掉电模式·软件设置睡眠和唤醒功能 AT89C52P为40 脚双列直插封装的8位通用微处理器采用工业标准的C51内核在内部功能及管脚排布上与通用的8xc52 相同其主要用于会聚调整时的功能控制功能包括对会聚主IC 内部存放器数据RAM及外部接口等功能部件的初始化会

34、聚调整控制会聚测试图控制红外遥控信号IR的接收解码及与主板CPU通信等主要管脚有XTAL119 脚和XTAL218 脚为振荡器输入输出端口外接12MHz 晶振RSTVpd9脚为复位输入端口外接电阻电容组成的复位电路VCC40 脚和VSS20脚为供电端口分别接5V电源的正负端P0P3 为可编程通用IO 脚其功能用途由软件定义在本设计中P0 端口3239脚被定义为N1 功能控制端口分别与N1的相应功能管脚相连接13 脚定义为IR输入端10 脚和11脚定义为I2C总线控制端口分别连接N1的SDAS18脚和SCLS19脚端口12 脚27 脚及28 脚定义为握手信号功能端口连接主板CPU 的相应功能端用

35、于当前制式的检测及会聚调整状态进入的控制功能P0口P0口是一组8位漏极开路型双向IO口 也即地址数据总线复用口作为输出口用时每位能吸收电流的方式驱动8个TTL逻辑门电路对端口P0 写1时可作为高阻抗输入端用在访问外部数据存储器或程序存储器时这组口线分时转换地址低8位和数据总线复用在访问期间激活内部上拉电阻在Flash 编程时P0口接收指令字节而在程序校验时输出指令字节校验时要求外接上拉电阻P1口P1口是一个带内部上拉电阻的8 位双向IO 口P1 的输出缓冲级可驱动吸收或输出电流4 个TTL逻辑门电路对端口写1通过内部的上拉电阻把端口拉到高电平此时可作输入口作输入口使用时因为内部存在上拉电阻某个

36、引脚被外部信号拉低时会输出一个电流 IIL 与AT89C51 不同之处是P10 和P11 还可分别作为定时计数器2 的外部计数输入P10T2和输入P11T2EXFlash 编程和程序校验期间P1 接收低8 位地址P2口P2口是一个带有内部上拉电阻的8 位双向IO口P2 的输出缓冲级可驱动吸收或输出电流4 个TTL逻辑门电路对端口P2 写1通过内部的上拉电阻把端口拉到高电平此时可作输入口作输入口使用时因为内部存在上拉电阻某个引脚被外部信号拉低时会输出一个电流 IIL 在访问外部程序存储器或16 位地址的外部数据存储器例如执行MOVX DPTR 指令时P2 口送出高8 位地址数据在访问8位地址的外

37、部数据存储器如执行MOVX RI 指令时P2口输出P2锁存器的内容Flash编程或校验时P2亦接收高位地址和一些控制信号P3口P3口是一组带有内部上拉电阻的8 位双向IO 口P3口输出缓冲级可驱动吸收或输出电流4个TTL 逻辑门电路对P3口写入1时它们被内部上拉电阻拉高并可作为输入端口此时被外部拉低的P3口将用上拉电阻输出电流IILP3口除了作为一般的IO口线外更重要的用途是它的第二功能P3口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号RST复位输入当振荡器工作时RST引脚出现两个机器周期以上高电平将使单片机复位ALEPROG当访问外部程序存储器或数据存储器时ALE地址锁存允许

38、输出脉冲用于锁存地址的低8 位字节一般情况下ALE 仍以时钟振荡频率的16 输出固定的脉冲信号因此它可对外输出时钟或用于定时目的要注意的是每当访问外部数据存储器时将跳过一个ALE 脉冲对Flash 存储器编程期间该引脚还用于输入编程脉冲PROG如有必要可通过对特殊功能存放器SFR区中的8EH 单元的D0 位置位可禁止ALE 操作该位置位后只有一条MOVX 和MOVC指令才能将ALE 激活此外该引脚会被微弱拉高单片机执行外部程序时应设置ALE 禁止位无效PSEN程序储存允许PSEN输出是外部程序存储器的读选通信号当AT89C52 由外部程序存储器取指令或数据时每个机器周期两次PSEN 有效即输出

39、两个脉冲在此期间当访问外部数据存储器将跳过两次PSEN信号EAVPP外部访问允许欲使CPU 仅访问外部程序存储器地址为0000HFFFFHEA 端必须保持低电平接地需注意的是如果加密位LB1 被编程复位时内部会锁存EA端状态如EA端为高电平接Vcc端CPU 那么执行内部程序存储器中的指令Flash 存储器编程时该引脚加上12V 的编程允许电源Vpp当然这必须是该器件是使用12V 编程电压VppXTAL1振荡器反相放大器的及内部时钟发生器的输入端XTAL2振荡器反相放大器的输出端特殊功能存放器在AT89C52 片内存储器中80H-FFH 共128 个单元为特殊功能存放器SFESFR 的地址空间映

40、象如表2 所示并非所有的地址都被定义从80HFFH 共128 个字节只有一局部被定义还有相当一局部没有定义对没有定义的单元读写将是无效的读出的数值将不确定而写入的数据也将丧失不应将数据1写入未定义的单元由于这些单元在将来的产品中可能赋予新的功能在这种情况下复位后这些单元数值总是0AT89C52除了与AT89C51所有的定时计数器0 和定时计数器1外还增加了一个定时计数器2定时计数器2 的控制和状态位位于T2CONT2MOD存放器RCAO2HRCAP2L是定时器2在16位捕获方式或16 位自动重装载方式下的捕获自动重装载存放器数据存储器AT89C52 有256 个字节的内部RAM80H-FFH

41、高128 个字节与特殊功能存放器SFR地址是重叠的也就是高128字节的RAM 和特殊功能存放器的地址是相同的但物理上它们是分开的当一条指令访问7FH 以上的内部地址单元时指令中使用的寻址方式是不同的也即寻址方式决定是访问高128 字节RAM 还是访问特殊功能存放器如果指令是直接寻址方式那么为访问特殊功能存放器例如下面的直接寻址指令访问特殊功能存放器0A0H即P2 口地址单元MOV 0A0Hdata间接寻址指令访问高128 字节RAM例如下面的间接寻址指令中R0 的内容为0A0H那么访问数据字节地址为0A0H而不是P2 口0A0HMOV R0data堆栈操作也是间接寻址方式所以高128 位数据R

42、AM 亦可作为堆栈区使用定时器0和定时器1AT89C52的定时器0和定时器1 的工作方式与AT89C51 相同232片上资源定时器2定时器2是一个16位定时计数器它既可当定时器使用也可作为外部事件计数器使用其工作方式由特殊功能存放器T2CON的CT2位选择定时器2有三种工作方式捕获方式自动重装载向上或向下计数方式和波特率发生器方式工作方式由T2CON的控制位来选择定时器2由两个8位存放器TH2和TL2组成在定时器工作方式中每个机器周期TL2 存放器的值加1由于一个机器周期由12个振荡时钟构成因此计数速率为振荡频率的112在计数工作方式时当T2引脚上外部输入信号产生由1至0的下降沿时存放器的值加

43、1在这种工作方式下每个机器周期的5SP2 期间对外部输入进行采样假设在第一个机器周期中采到的值为1而在下一个机器周期中采到的值为0那么在紧跟着的下一个周期的S3P1期间存放器加1由于识别1 至0 的跳变需要2 个机器周期24个振荡周期因此最高计数速率为振荡频率的124为确保采样的正确性要求输入的电平在变化前至少保持一个完整周期的时间以保证输入信号至少被采样一次捕获方式在捕获方式下通过T2CON控制位EXEN2来选择两种方式如果EXEN2 0定时器2 是一个16位定时器或计数器计数溢出时对T2CON的溢出标志TF2 置位同时激活中断如果EXEN2 1定时器2完成相同的操作而当T2EX引脚外部输入

44、信号发生1至0负跳变时也出现TH2和TL2中的值分别被捕获到RCAP2H 和RCAP2L中另外T2EX引脚信号的跳变使得T2CON中的EXF2 置位与TF2相仿EXF2也会激活中断自动重装载向上或向下计数器方式当定时器2工作于16位自动重装载方式时能对其编程为向上或向下计数方式这个功能可通过特殊功能存放器T2CON的DCEN 位允许向下计数来选择的复位时DCEN 位置0定时器2默认设置为向上计数当DCEN置位时定时器2 既可向上计数也可向下计数这取决于T2EX 引脚的值参见图5当DCEN 0 时定时器2 自动设置为向上计数在这种方式下T2CON 中的EXEN2 控制位有两种选择假设EXEN2

45、0定时器2 为向上计数至0FFFFH 溢出置位TF2 激活中断同时把16位计数存放器RCAP2H和RCAP2L重装载RCAP2H 和RCAP2L 的值可由软件预置假设EXEN2 1定时器2的16位重装载由溢出或外部输入端T2EX 从1 至0 的下降沿触发这个脉冲使EXF2 置位如果中断允许同样产生中断定时器2 的中断入口地址是002BH 0032H 当DCEN 1 时允许定时器2 向上或向下计数这种方式下T2EX 引脚控制计数器方向T2EX 引脚为逻辑1时定时器向上计数当计数0FFFFH 向上溢出时置位TF2同时把16 位计数存放器RCAP2H 和RCAP2L 重装载到TH2 和TL2 中 T

46、2EX 引脚为逻辑0时定时器2 向下计数当TH2 和TL2 中的数值等于RCAP2H 和RCAP2L中的值时计数溢出置位TF2同时将0FFFFH 数值重新装入定时存放器中当定时计数器2 向上溢出或向下溢出时置位EXF2 位波特率发生器当T2CON中的TCLK 和RCLK 置位时定时计数器2作为波特率发生器使用如果定时计数器2作为发送器或接收器其发送和接收的波特率可以是不同的定时器1用于其它功能假设RCLK 和TCLK置位那么定时器2工作于波特率发生器方式波特率发生器的方式与自动重装载方式相仿在此方式下TH2翻转使定时器2 的存放器用RCAP2H 和RCAP2L 中的16位数值重新装载该数值由软

47、件设置在方式1和方式3中波特率由定时器2的溢出速率根据下式确定方式1和3的波特率 定时器的溢出率16定时器既能工作于定时方式也能工作于计数方式在大多数的应用中是工作在定时方式CT2 0定时器2 作为波特率发生器时与作为定时器的操作是不同的通常作为定时器时在每个机器周期112 振荡频率存放器的值加1而作为波特率发生器使用时在每个状态时间12 振荡频率存放器的值加1波特率的计算公式如下方式1和3的波特率 振荡频率 3265536- RCP2HRCP2L 式中RCAP2HRCAP2L是RCAP2H 和RCAP2L中的16 位无符号数定时器2 作为波特率发生器使用的电路如图7 所示T2CON 中的RC

48、LK 或TCLK 1 时波特率工作方式才有效在波特率发生器工作方式中TH2 翻转不能使TF2 置位故而不产生中断但假设EXEN2 置位且T2EX 端产生由1 至0 的负跳变那么会使EXF2 置位此时并不能将RCAP2HRCAP2L的内容重新装入TH2 和TL2 中所以当定时器2 作为波特率发生器使用时T2EX 可作为附加的外部中断源来使用需要注意的是当定时器2 工作于波特率器时作为定时器运行TR2 1时并不能访问TH2 和TL2因为此时每个状态时间定时器都会加1对其读写将得到一个不确定的数值然而对RCAP2 那么可读而不可写因为写入操作将是重新装载写入操作可能令写和或重装载出错在访问定时器2或

49、RCAP2 存放器之前应将定时器关闭去除TR2可编程时钟输出定时器2 可通过编程从P10 输出一个占空比为50的时钟信号P10 引脚除了是一个标准的IO口外还可以通过编程使其作为定时计数器2的外部时钟输入和输出占空比50的时钟脉冲当时钟振荡频率为16MHz 时输出时钟频率范围为61Hz4MHz当设置定时计数器2为时钟发生器时CT2T2CON 1 0T2OE T2MOD1 1必须由TR2T2CON2启动或停止定时器时钟输出频率取决于振荡频率和定时器2 捕获存放器RCAP2HRCAP2L的重新装载值公式如下输出时钟频率 振荡器频率 465536- RCP2HRCP2L 在时钟输出方式下定时器2 的

50、翻转不会产生中断这个特性与作为波特率发生器使用时相仿定时器2 作为波特率发生器使用时还可作为时钟发生器使用但需要注意的是波特率和时钟输出频率不能分开确定这是因为它们同使用RCAP2L和RCAP2LUART AT89C52的UART 工作方式与AT89C51 工作方式相同中断AT89C52共有6个中断向量两个外中断INT0 和INT13个定时器中断定时器012和串行口中断这些中断源可通过分别设置专用存放器IE的置位或清0 来控制每一个中断的允许或禁止IE也有一个总禁止位EA它能控制所有中断的允许或禁止程序员不应将1写入这些位它们是将来AT89系列产品作为扩展用的定时器2 的中断是由T2CON中的

51、TF2和EXF2逻辑或产生的当转向中断效劳程序时这些标志位不能被硬件去除事实上效劳程序需确定是TF2或EXF2 产生中断而由软件去除中断标志位定时器0 和定时器1 的标志位TF0和TF1在定时器溢出那个机器周期的S5P2状态置位而会在下一个机器周期才查询到该中断标志然而定时器2的标志位TF2 在定时器溢出的那个机器周期的S2P2状态置位并在同一个机器周期内查询到该标志时钟振荡器AT89C52 中有一个用于构成内部振荡器的高增益反相放大器引脚XTAL1 和XTAL2 分别是该放大器的输入端和输出端这个放大器与作为反应元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器外接石英晶体或陶瓷谐振器及电容C

52、1C2 接在放大器的反应回路中构成并联振荡电路对外接电容C1C2 虽然没有十分严格的要求但电容容量的大小会轻微影响振荡频率的上下振荡器工作的稳定性起振的难易程序及温度稳定性如果使用石英晶体我们推荐电容使用30pF±10pF而如使用陶瓷谐振器建议选择40pF±10F用户也可以采用外部时钟采用外部时钟的电路如图10 右图所示这种情况下外部时钟脉冲接到XTAL1 端即内部时钟发生器的输入端XTAL2 那么悬空由于外部时钟信号是通过一个2 分频触发器后作为内部时钟信号的所以对外部时钟信号的占空比没有特殊要求但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求空闲节电模

53、式在空闲工作模式状态 CPU 自身处于睡眠状态而所有片内的外设仍保持激活状态这种方式由软件产生此时同时将片内RAM 和所有特殊功能存放器的内容冻结空闲模式可由任何允许的中断请求或硬件复位终止由硬件复位终止空闲状态只需两个机器周期有效复位信号在此状态下片内硬件禁止访问内部RAM但可以访问端口引脚当用复位终止空闲方式时为防止可能对端口产生意外写入激活空闲模式的那条指令后一条指令不应是一条对端口或外部存储器的写入指令掉电模式在掉电模式下振荡器停止工作进入掉电模式的指令是最后一条被执行的指令片内RAM 和特殊功能存放器的内容在终止掉电模式前被冻结退出掉电模式的唯一方法是硬件复位复位后将重新定义全部特殊

54、功能存放器但不改变RAM中的内容在Vcc恢复到正常工作电平前复位应无效且必须保持一定时间以使振荡器重启动并稳定工作程序存储器的加密AT89C52 有3个程序加密位可对芯片上的3个加密位LB1LB2LB3 进行编程P或不编程U来得到当加密位LB1被编程时在复位期间EA 端的逻辑电平被采样并锁存如果单片机上电后一直没有复位那么锁存起的初始值是一个随机数且这个随机数会一直保存到真正复位为止为使单片机能正常工作被锁存的EA 电平值必须与该引脚当前的逻辑电平一致此外加密位只能通过整片擦除的方法去除Flash存储器的编程AT89C52单片机内部有8k字节的Flash PEROM这个Flash 存储阵列出厂

55、时已处于擦除状态即所有存储单元的内容均为FFH用户随时可对其进行编程编程接口可接收高电压12V或低电压Vcc的允许编程信号低电压编程模式适合于用户在线编程系统而高电压编程模式可与通用EPROM 编程器兼容AT89C52单片机中有些属于低电压编程方式而有些那么是高电压编程方式用户可从芯片上的型号和读取芯片内的签名字节获得该信息AT89C52的程序存储器阵列是采用字节写入方式编程的每次写入一个字节要对整个芯片内的PEROM 程序存储器写入一个非空字节必须使用片擦除的方式将整个存储器的内容去除编程方法编程前设置好地址数据及控制信号 AT89C52 编程方法如下1在地址线上加上要编程单元的地址信号2在

56、数据线上加上要写入的数据字节3激活相应的控制信号4在高电压编程方式时将EAVpp 端加上12V 编程电压5每对Flash 存储阵列写入一个字节或每写入一个程序加密位加上一个ALEPROG 编程脉冲每个字节写入周期是自身定时的通常约为15ms重复15 步骤改变编程单元的地址和写入的数据直到全部文件编程结束数据查询AT89C52单片机用Data Palling表示一个写周期结束为特征在一个写周期中如需读取最后写入的一个字节那么出的数据的最高位P07是原来写入字节最高位的反码写周期完成后所输出的数据是有效的数据即可进入下一个字节的写周期写周期开始后Data Palling可能随时有效ReadyBus

57、y字节编程的进度可通过RDYBSY 输出信号监测编程期间ALE变为高电平H后P34RDYBSY端电平被拉低表示正在编程状态忙状态编程完成后P34变为高电平表示准备就绪状态程序校验如果加密位LB1LB2没有进行编程那么代码数据可通过地址和数据线读回原编写的数据加密位不可直接校验加密位的校验可通过对存储器的校验和写入状态来验证芯片擦除利用控制信号的正确组合并保持ALEPROG 引脚10mS的低电平脉冲宽度即可将PEROM 阵列4k字节和三个加密位整片擦除代码阵列在片擦除操作中将任何非空单元写入1这步骤需再编程之前进行读片内签名字节AT89C52 单片机内有3 个签名字节地址为030H031H 和0

58、32H用于声明该器件的厂商型号和编程电压读AT89C52 签名字节需将P36 和P37 置逻辑低电平读签名字节的过程和单元030H031H 及032H 的正常校验相仿只返回值意义如下 030H 1EH 声明产品由ATMEL公司制造031H 52H 声明为AT89C52 单片机032H FFH 声明为12V 编程电压032H 05H 声明为5V 编程电压图2-1 PDIP封装的AT89C52引脚图24温度传感器的选择DS18B20温度传感器是一种改良型智能温度传感器与传统的热敏电阻等测温元件相比它能直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式DS18B20的性能特点如下 独特的单线接口仅需要一个端口引脚进行通信 多个DS18B20可以并联在惟一的三线上实现多点组网功

温馨提示

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

评论

0/150

提交评论