基于单片机多点温度检测系统设计.doc

上传人:飞****2 文档编号:63867310 上传时间:2022-11-27 格式:DOC 页数:52 大小:1,001.50KB
返回 下载 相关 举报
基于单片机多点温度检测系统设计.doc_第1页
第1页 / 共52页
基于单片机多点温度检测系统设计.doc_第2页
第2页 / 共52页
点击查看更多>>
资源描述

《基于单片机多点温度检测系统设计.doc》由会员分享,可在线阅读,更多相关《基于单片机多点温度检测系统设计.doc(52页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、毕业论文(设计)基于单片机多点温度检测系统设计学 生 姓 名: 郑妙霞 指导教师: 张妍 (讲师) 专业名称: 通信工程 所在学院: 信息工程学院 2013年 6 月目 录摘 要IAbstractII第一章 前言11.1研究目的和意义11.2国内外研究现状11.3研究方法及内容2第二章 系统的方案设计32.1系统的设计思想32.2系统的设计要求及基本功能32.3方案设计及论证42.4理论计算6第三章 系统硬件的设计93.1硬件电路的原理93.2主控电路的设计93.3温度信号采集电路的设计113.4键盘电路的设计163.5显示电路的设计173.6报警电路的设计193.7串口通信电路的设计193.

2、8温度控制电路的设计213.9复位电路的设计223.10系统硬件的串行接口23第四章 系统的软件设计254.1工作流程254.2功能模块254.3程序总体结构设计254.4键盘电路流程图274.5显示器模块的软件设计294.6温度检测模块的软件设计30第五章 结论与建议365.1结论365.2建议36致谢37参考文献38附录39摘 要本文设计一个基于单片机AT89C52的多点温度检测系统,具有对温度初始值的设定、实时检测、显示和控制等功能。分别从硬件和软件两个方面介绍以单片机AT89C52为核心的温度检测系统,温度检测系统的具体组成和设计原理一步一步地展开来阐述。硬件方面,温度的显示和设置分别

3、通过对显示和键盘电路的操作完成,集成温度传感器完成温度检测的重要任务,蜂鸣器等器件实现温度报警的功能,通过升温和降温使得温度保持有效地温度值范围内。温度传感器DS18B20采集到环境的温度信号,输出的数字信号送向主控模块进行处理,并同时在数码管上显示温度信号。如果温度超出安全设置值,单片机会发出报警信号,调动报警电路和温度控制电路。报警电路会在采集温度值超出安全值时作出报警,发出报警鸣叫声。温度控制电路会根据实际温度,作出升温或降温的处理。软件方面,主程序起着重要的作用,能够调动模块程序,主程序和模块程序结合在一起,使得系统得以正常运转。关键词:传感器,单片机,温度检测 Abstract A

4、multipoint temperature detection system based on single chip microcomputer AT89C52 is studied in the paper , which have the functions of the initial value of temperature setting, real-time detection ,display and control. This temperature detection system based on microcontroller AT89C52 is introduce

5、d from two aspects of hardware and software , and AT89C52 single chip microcomputer are the core .what is more ,it describes the specific composition and design principle of temperature detection system step by step. In terms of hardware,displaying and setting temperature are respectively achieved b

6、y the display circuit and completed through operation of keyboard circuit, the integrated temperature sensor do the important task of detecting the temperature of environment, buzzer and other devices realize temperature alarm function, temperature are kept in effective temperature ranges by heating

7、 and cooling.Temperature of environment are collected by sensor DS18B20 ,then digital signal output are sent to the main control module for processing, processed by single chip microcomputer , lastly temperature signal display by digital tube . If the temperature exceeds the safety settings, microco

8、mputer sends an alarm signal, mobilize the alarm circuit and temperature control circuit.when beyond the the safety value,the alarm circuit will send out alarm calls.According to the collecting temperature ,the system will do the work of cooling and heating . In terms of software, the main program p

9、lays an important role, can arouse the module program, the main program and the modules together, which makes the system in the state of normal operation. Key words :sensor,single-chip computer,temperature detect第一章 前言1.1研究目的和意义1.1.1研究目的温度是一个最基本的因素。在自然界以及人类社会中,几乎一切过程都与温度存在着息息相关的联系。同时温度是工业控制中一个及其重要的参

10、数,往往影响工业生产的进程,通常是在工业生产过程中不断被检测,控制和维持。多点温度检测系统应用于工业生产、家居环境等领域,不仅带来便捷;更重要的是,由于具有处理、报警功能,本系统具有较高的安全系数,可以保证生产安全,生产高效节能。1.1.2研究意义温度的测量和控制不仅一直广泛的应用于工业领域中而且渐渐进入日常生活中。随着人们生活水平的不断提高和科学技术的迅猛发展,温度测量和控制的要求也日益变高,日趋精细。往大了谈到工业生产,往小了谈到家用电器、汽车,温度检测都具有不可或缺的重要性,其发展深刻地影响着人类生活水平的提高。在生产领域,提高温度检测和控制对象的性能是现场技术人员实现技术发展的重要一步

11、。但由于性能不佳,检测不力,对生产产生影响,故对温度检测的精度和范围提出了更高的要求。11.2国内外研究现状1.2.1国外的研究现状最早在20世纪70年代 ,国外对温度检测技术研究就已经开始了,相对来说比较早。开始是采用模拟式的组合仪表,工作人员起着重要作用,工作人员必须在现场,负责收集现场信息的工作,且对收集的信息进行综合分析,依据结论进行指示、记录和控制。到20世纪80年代后期,出现的分布式控制系统。目前正朝着多因子计算机数据采集控制系统研究和开发的方向前进。现在世界上的温度检测技术的发展速度越来越快,在自动化的基础上,一些国家正向着智能化程度高,无人化方向发展。1.2.2国内的研究现状

12、恰恰相反,我国比较晚开始对温度检测技术的进行研究,直到20世纪80年代温度检测技术才开始真正意义上进入我国,经过十几年才发展起来,特别是随着我国工业发展水平的不断提高而迅速发展。近年来,我国引进了多达16个国家和地区的环境温度检测控制系统,总体情况下,它的作用是非常大的。从消化吸收到简单的应用阶段,再一步一步走向实用化和全面应用的发展阶段,温控技术的发展给予我们的都是积极的作用。尽管我们的发展有诸多不足之处,我国的温度测控设施以单片机控制的单参数单回路系统居多,还没开始有事实上的多参数、能够综合控制的系统,且在生产实际中不可避免地有许多问题困扰着我们,比如控制水平落后,软件和硬件资源存在不能共

13、享以及可靠性差等缺点。与发达国家之间的差距也确确实实存在着,但可喜的是这种差距在逐步地缩小,让我们看到了希望的曙光。从发展蓝图上看来,中国具有良好的发展前景,其日益在日常生活中获得广泛的发展,便是最好的印证。1.3研究方法及内容本文介绍了基于单片机控制的多点温度检测系统,具有检测多个不同地点温度的功能。检测点采集到的温度信号送由单片机处理,当温度超过安全值的范围时由控制模块和报警模块进行相应的处理。系统硬件设计的思想是按模块划分,尽可能的简化电路,降低成本。本系统采用MCS51汇编语言编程对系统软件的进行设计,系统采用人机交互界面,操作简单方便,比较人性化。本系统以单片机AT89C52为核心,

14、作为一种低功耗、高性能的CMOS工艺的8位单片机,自带8KB闪存,具有产品性价比高、使用方便灵活且易于进行功能扩展等优点,可以满足测温以及显示控制、报警等功能的设计要求。整个系统从硬件和软件两个方向铺展开来。系统按模块划分,大概有六个模块,分别是主控模块、显示模块、温度信号采集模块、报警模块、温度控制模块、复位模块。其中主控模块主要是以单片机AT89C52为中心,负责整个系统的控制实现工作;键盘模块由键盘接口电路构成;显示电路主要依靠数码管显示器来实现;温度信号采集模块以集成温度传感器为主体,复位模块则有三种方法实现具体是单片机的上电复位,手动复位电路和电源去耦电路。 第二章 系统的方案设计2

15、.1系统的设计思想传统意义上,多点温度检测系统大多数是远距离铺线采集温度信号,进而将采集到的模拟电信号进行模数转换,输出数字信号,单片机再处理接收到的信号。远距传输,线路的远近影响精度,且电路相对复杂,传统意义上的温度检测系统结构框图如图1。而现代意义上,则采用集成温度传感器解决传统意义上温度信号采集方面的布线缺陷,一定程度上简化电路,具有检测、保持、控制和报警等多种功能,现代温度检测系统结构框图如图2。 单 片 机AD转换报警温度采集键盘显示 图1 传统温度检测系统报警电路 单 片 机 温 度 传 感 器显示电路复位电路键盘电路图2 现代温度检测系统2.2系统的设计要求及基本功能2.2.1系

16、统的设计要求 一、 由于不同地点温度有所差异,要求对多个地点同步进行温度测量 二、 测量温度范围可以设定,精度为0.5 三、预置时显示设定的温度 四、具有掉电保护2.2.2系统的基本功能一、 能对温度值进行检测、保持和控制,超出安全温度值时进行报警。二、 能根据实际需要对8个不同地点的安全温度值进行设置。三、 能对8个不同地点的温度(室温)进行检测,温度检测精度为0.5,通过键盘选定某个地点进行温度查看和设定。四、 具备掉电保护功能,即掉电后能保护已设定好的信息,并且能继续工作。2.3方案设计及论证 根据设计要求,基于单片机的多点温度检测系统主要有六部分组成,主控电路、温度采集电路、显示电路、

17、报警电路、复位电路、控制电路,系统结构框图如图3。温 度 采 集 电 路显示电路报警电路 单 片 机控制电路(升温或降温)键盘电路复位电路 图3 系统结构框图1.键盘模块设计方案的论证与比较键盘是由一组按钮或开关组合而成,通过键盘接口向计算机提供可以被识别的已按下去键的代码。常用的键盘有两种:一种是编码键盘,自动提供的是按键的编码;另一种是非编码键盘,仅仅提供键盘的通断状态,而用户的键盘程序实现按键的扫描和识别。方案一:独立式连接式键盘这是最简单的一种键盘,每个键位之间是独立的,但有一条数据线接通,也即是每个按键都作为一个独立的数字量输入存在。当有人按下一个按键的时候,与之相连的输入数据线即被

18、置为逻辑低电平,平时其保持为逻辑高电平,单片机程序中需要查询与键盘相连的I/O接口线的状态才可以识别将要实现的功能,才方便于实现按键处理。电路简单,按键数较少的情况下采用独立连接式键盘。当按键数较多时,需要占用单片机较多的I/O接口线资源,用独立式连接键盘不现实,造成电路资源浪费。方案二:矩阵连接式键盘 矩阵式键盘也称为行列式键盘,按键的输入线有所减少和电路相对简化,按键矩阵式排列。在每条行线和列线的交叉处,并不是直接相连的,而是通过一个按键来接通,即按键按下时接通,采用这种矩阵结构有X条行输出线和Y条列输入线,就可以连接XY个按键。本设计中采用44构成16个按键的矩阵式连接键盘。与单片机接口

19、时,不需要占用过多的I/O接口线资源,仅需8根I/O接口线就可以形成16只按键。键盘扫描程序扫描行输出和列输入的状态来识别按键的状态。把44键盘作为一个例子来分析,矩阵连接式键盘的工作过程非常简单,具体工作过程如下: 键扫描:输出0000到4根行线,再输入4根列线的状态。 键识别:在确定了有按键按下之后,接下来要确定的是具体哪个按键按下了。 键处理:确定了具体的按键后,根据事先设置的功能作出相应的处理。尽管键盘的具体工作过程相比较而言,稍微复杂了一点,但由于这种矩阵连接式键盘的具体程序已有人开发出来,有实际的程序可以参考借鉴,故采用矩阵连接式键盘。22. 主控模块设计方案的论证与比较方案一:采

20、用单片机AT89C51芯片以单片机AT89C51芯片作为系统的控制核心,具有4KB的Flash闪速存储器,128B内部RAM,两个16位定时/计数器,32个I/O接口线,一个5向量的两级终端结构,一个全双工串行通信口,片内振荡器及时钟电路。功能强大的单片机AT89C51,是众多设计师们所青睐的,其常被灵活应用于很多控制领域。尽管单片机AT89C51在一定程度上符合设计的要求,但由于本次设计要实现的功能比较多,需要较大的程序存储空间,其最大的问题是可能会出现内存不足的现象。为了避免出现内存不足,要外接程序存储器,使电路复杂化的现象,建议使用内存比单片机AT89C52芯片大的芯片。方案二:采用单片

21、机AT89C52芯片 与采用单片机AT89C51芯片相比,采用单片机AT89C52芯片作为系统的控制中心,具有片内8KB的可反复擦写的只读程序存储器和256B的RAM,按常规方法编程和在线编程均可以用在单片机AT89C52上,比较方便。利用其可将通用的微处理器结合Flash存储器在一起,特别是可反复擦写的Flash存储器,可以避免外扩内存的复杂化,很大程度上解决了内存不足的问题。 综合考虑设计成本以及实现的功能后,决定采用单片机AT89C52芯片。3.显示模块的设计方案的论证与比较常用的显示设备主要有LED显示器和LCD显示器,由于本系统的主控芯片可以直接驱动LED显示器和仅需要显示数字,故选

22、择LED显示器。从节省单片机内部资源的角度来考虑的话,串行输出优于并行输出,故仅考虑串行输出。方案一:多位LED数码管动态显示方式当显示的位数比较多时,采用动态显示比较合理。在动态显示下,单片机的一个I/O接口接上并联在一起的数码管的8个引脚(a-h),单片机的另一I/O接口接上每个数码管的共阴或共阳端(位选信号端),控制数码管轮流被选中,驱动其轮流显示。动态显示即依次轮流点亮各位显示器,故同一瞬间只能显示一种字符。位选口控制具体的显示内容,借助人的视觉暂留效果以达到显示不同字符的效果。为了显示效果稳定,可以使每个数码管显示的数字不断重复,因而要求不断刷新。如果要达到人类视觉的良好效果,刷新的

23、频率则必须达到一定的程度。高频率重复刷新,必定占用了单片机的运行时间。相反,如果单片机无法提供足够的刷新频率,则显示效果不稳定,出现闪烁现象。另外,由于动态显示不具有直接驱动的功能,动态显示要考虑LED驱动问题。动态显示是由段和位选信号共同配合而完成的,因而必须同时考虑段和位的驱动能力,需要注意的是段的驱动能力决定位的驱动能力。总体而言,动态显示相对来说,要综合考虑多方面因素,相对复杂。方案二:多位LED数码管静态态显示方式当显示的位数不多时,择优考虑静态显示。采用静态显示的方式时,最大的优点是LED显示器由接口芯片直接驱动,很小的驱动电流便可换取较高的显示亮度。串行输出大大节约了单片机的内部

24、资源,减少不必要的浪费。采用74LS164实现串并转换,无需添加其他驱动电路。LED亮度高,控制容易,电路简单,占用CPU很少的运行时间,不占用太多的接口资源,基本能够满足设计的最佳要求。由于本设计需要五位显示器,综合以上分析,故选择多位LED数码管静态显示方式。4. 温度信号采集模块设计方案的论证与比较方案一:采取热敏电阻采取热敏电阻测量温度信号,属于传统意义上的测量方法,有可靠性差、测量温度准确率低等缺点,特别是需通过专门的模数转换电路才能将其测量的模拟量转换成我们所要的数字信号,继而由单片机负责再处理并控制显示。完成8点温度信号的采集、保持和控制是一个庞大的工程,硬件电路的设计远远的复杂

25、了,系统的设计条件也相当难以满足。方案二:采取集成温度传感器DS18B20 单总线接口的温度传感器DS18B20,仅采用一根线便实现微处理器与其之间的双向通信关系,方便简单;同时一条总线上可以接上多个DS18B20,依据序号区分不同的DS18B20,实现对多个地点的温度采集而不混乱。温度传感器DS18B20的优点是能够在采集温度信号后将其转换为数字信号,一步便可以实现同样的功能。加之测量温度可以在芯片允许范围内进行设置,测量精度按9位和12位来说的话都比较高,故选择集成温度传感器DS18B20。5.报警模块的设计与论证 报警模块要实现的是在环境温度超出初始设置的范围时,可以及时作出报警,设计要

26、求不会给整体设计带来太多的负担,又鉴于单片机可直接驱动扬声器,故直接用单片机外接报警信号放大器来放大报警信号,驱动扬声器作出清晰的报警信号。2.4理论计算本系统的理论计算主要体现在对DS18B20分辨率和转换时间的综合考虑以及对所测得的二进制温度值转换。2.4.1 转换时间计算转换精度及转换时间具体关系如表1。表1 DS18B20温度转换时间表R1R0分辨率/位温度最大转向时间/ms00110101910111293.75187.5375750 由表知,越高的设定分辨率,需要越长温度数据转换时间,因此在实际应用中要权衡考虑分辨率和转换时间,在二者之间找到平衡点。为了保证DS18B20严格的工作

27、时序,在编写温度测量程序时需要做较精确的延时。在DS18B20的操作中,有不同程度的延时,15s、90s、150s、300s、540s等,因为这些延时均为15s的整数倍,所以调整 n便可以编写一个DELAY15(n)函数可方便地获得不同程度的延时,程序如下。 DELAY: ;12MHz的晶振 LOOP: MOV R1, #nH MOV R0, #12H DJNZ R1, $ DJNZ R0, LOOP RET2.4.2温度值计算由DS18B20器件的特性可以知道,DS18B20所测得的二进制温度值以两个字节的形式进行存储,单片机可以通过单线接口读到该数据,读取时低位在前,高位在后,0.0625

28、/LSB是其表示的数据格式,温度值格式如表2。 表2 DS18B20温度值格式表LS BYTE Bit 7 23Bit 6 22Bit 5 21Bit 4 20Bit 3 2-1Bit 2 2-2Bit 1 2-3Bit 0 2-4MS BYTEBit 15 SBit 14 SBit 13 SBit 12 SBit 11 SBit 10 26Bit 9 25Bit 8 24对应的温度计算方法:在符号位为S=0的情况下,后面的十一位二进制不需要转换成原码,而是直接转换成十进制;在符号位S=1的情况下,则增加了一步转换,需要把补码变转换成原码,接下来再转换成十进制值,例如,85的数字输出为0550

29、H。表3所示是对应的部分温度值。表3 部分温度值温度数字输出(二进制)数字输出(十六进制)+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.060000 0001 1001 00010191H+10.1250000 0000 1010 001000A2H+0.50000 0000 0000 10000008H00000 0000 0000 00000000H0.51111 1111 1111 1000FFF8H10.121111 1111 0101 1110FF5EH25.06251111 1110 0110 1111FF6F

30、H551111 1100 1001 0000FC90H由表可以看出,数值为十进制和数值为二进制相比较而言有着很大的联系。我们需要把低半字节和高半字节组合起来,形成一个字节。而这字节分别来自二进制的高字节和低字节,转变成十进制后,等于相对应的百、十、个位,然后最后温度值的小数部分就是由低字节的低半字节变成十进制而组成的。由于小数部分由半字节组成,因而二进制的范围值为0-F。转换成的小数值是0.0625的倍数(0-15倍),而实际上不需要这么高的精度。为了显示小数可以使用一位数码管,精确到0.1。例如,当DS18B20采集到+125的实际温度后,输出为07D0H,则实际温度=07D0H0.0625

31、=125(),再例如,当DS18B20采集到-55的实际温度之后,输出为0FC90H,则先将12位数据位取反,加1得370H(符号位不变且不作为计算),则实际温度=370H0.0625=8800.0625=55()。3第三章 系统硬件的设计3.1硬件电路的原理 系统硬件电路主要以单片机AT89C52作为微处理器,系统电路大概分为六大模块,主控电路、温度信号采集电路、键盘电路、显示电路、报警电路、温度控制电路等模块之间相互协调合作,实现检测、保持、控制、报警等功能。3.2主控电路的设计单片机是一种集成的电路芯片,采用超大规模集成电路技术集成,把具有数据处理能力(如算术运算、逻辑运算、数据传送、中

32、断处理)的微处理器(CPU)、随机数据存储器(RAM)、只读程序存储器(ROM)、输入/输出电路(I/O)、还可能包括定时/计数器、串行通信口(SCI)、显示驱动(LCD或LED)电路等电路集合到一起,在一片芯片上完成一件在电子技术界具有影响力的事情,构成一个最小又完善的计算机系统。按照预先设定的软件程序,这些电路可以是很好的任务执行者,准确、迅速、高效地完成程序设计者的设计成果。随着发展,单片机不断改进,作为主控系统的核心力量,能够独当一面,实现更高程度的智能化控制功能。不同的单片机有着不同的硬件特征和软件特征。AT89C52也具有C51系列单片机的特性,准确地说其功能比C51系列更强大,是

33、由ATMEL公司的荣誉出品。AT89C52是一个低电压、高性能CMOS 8位单片机,片内除了含8KB的反复可擦写的只读程序存储器还有256B的随机存储数据存储器,器件中凝结了ATMEL公司的高密度、非易失性的存储技术,兼容性强,标准MCS-51指令系统和51产品引脚也对它适用,片内配置通用8位中央处理器,特别是FLASH存储单元,使其内存锦上添花。40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线是AT89C52的最基本的组成部分。 AT89C52引脚图如图4所示 。 主要功能特性: 1) 兼容MCS-51指

34、令系统2) 2个串行中断3) 32个双向I/O口4) 3个16位定时/计数器中断5) 2个读写中断口线6) 2个外部中断源7) 8KB可反复擦写(大于1000次)FLASH ROM8) 时钟频率0Hz24MHz9) 2568bit内部RAM 图4 引脚图10) 可编程UART串行通道11) 6个中断源12) 3级加密位13) 软件设置睡眠和唤醒功能AT89C52为40脚双列直插封装的8位通用微处理器,主要引脚介绍如下:1. 主电源引脚Vcc和VssVcc: 接+5V电源正端Vss: 接+5V电源地端2. 外接晶振引脚XTAL1和XTAL2XTAL1:在片内它作为振荡器倒相放大器的输入端,与外接

35、晶振和微调电容的一端衔接。如果使用到外部TTL时钟,对该引脚的要求是必须接地。XTAL2:在片内它作为振荡器倒相放大器的输出端,与外接晶振和微调电容的另一端衔接,与XTAL1不同,使用到外部TTL时钟时,对引脚的要求是必须作为外部时钟的输入端。 3. 地址锁存允许信号ALE/PROG: 当单片机上电正常工作后,ALE引脚会不断向外输出脉冲信号,输出的频率为振荡器频率的1/6。当CPU访问外部存储器时,频率为振荡器的1/2,ALE的输出信号作为锁存低8位地址的控制信号;当不访问片外存储器时,ALE端是以正常工作时的振荡频率固定输出脉冲,因此ALE信号可用作对外输出信号或编程形成定时信号。4. 复

36、位信号输入引脚RST 复位信号无论对什么样的系统都很重要,由于复位系统的存在,用户可以在发生突发事件使程序跑飞时,输入复位信号,使其稳定地重新开始执行程序,保证正常的工作。对51单片机的复位而言,高电平有效,但必须在该引脚上出现两个周期或两个周期以上的高电平。5. 访问外部程序存储器选通信号PSEN PSEN的输出状态决定外部程序存储器的选通。在AT89C52通过外部程序存储器读出指令时,机器周期都要两次PSEN才起作用,然后就会有两个脉冲输出。其中,在浏览到外面的数据存储器时,就会两次不浏览PSEN信号。6. 访问内部或外部ROM的选择信号EA/VPP EA/VPP引脚为高电平时,CPU访问

37、内部ROM,当PC指针超过0FFFH(4KB)时,自动转向执行外部ROM。该引脚为低电平,片内ROM不会被访问,直接从片外ROM的0000H开始取指令。7. 4个准双向输入/输出(IN/OUT)引脚(P0、P1、P2、P3)l P0口:既可以用作通用I/O口(C=0),又可以用作地址/数据总线(C=1)。前者是准双向口,后者是真正的双向口。作为输出口用时,由于其是一组8位漏极开路型双向I/O口,每位能以吸收电流的方式驱动8个TTL逻辑门电路。对端口P0写“1”时,输出高阻抗态。在访问外部数据存储器或程序存储器时,P0口是作为分时复用的低8位地址/数据总线,访问期间激活内部上拉电阻。l P1口:

38、仅能作为通用的数据输入/输出口,是唯一的单功能口。P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,端口处于高电平状态,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,内部为高电平,外部信号为低电平时会输出一个电流(IIL)。P1口仅能作数据输入/输出口。P1.0能作为计数器2的外部计数输入(T2)和P1.1作为其输入(T2EX),参见表4。l P2口: 既可以用作通用I/O口(C=0),又可以用作地址总线(C=1)。P2口是具有上拉电阻。作为一个8位的双向I/O口,P2口的输出缓冲级能够带动四个TTL逻辑门电路。让

39、P2口输入“1”,端口的高电平便需要内部的上拉电阻发挥作用了,这个时候可看成输入口。当使用输出口时,上拉电阻的作用不可忽视,其使内部电平高于外部电平,且产生一个带拉电流(IIL)。浏览外部程序存储器,P2口是具有高8位地址数据的端口。同理,在访问16位地址的外部数据存储器时。在访问8位地址的外部数据存储器(如执行MOVX RI指令)时,P2口没全部用上的情况下也可以作为通用输入输出的口线。l P3口:是双功能口,用作第一功能时是通用I/O口。作为一般的I/O口线外,P3口更重要的用途是它的第二功能,如表5所示。4 5P3口相应的口线处于第二个功能,应满足的条件:1) 串行I/O口处于运行状态(

40、RXD、TXD)2) 外部中断已经打开(INT0 、INT1)3) 定时/计数器处于外部技术状态(T0、T1)4) 执行读/写外部RAM的指令(RD、WD)表4 P1口的特殊功能引脚号 功能特性P1.0 T2,时钟输出P1.1 T2EX(定时/计数器2) 表5 P3口的第二功能表端口引脚第二功能P3.0RXD (串行输入口)P3.1TXD (串行输出口)P3.2 (外中断0)P3.3 (外中断1)P3.4T0 (定时/计数器0)P3.5T1 (定时/计数器1)P3.6 (外部数据存储器写选通)P3.7 (外部数据存储器读选通)3.3温度信号采集电路的设计本模块的设计采用DS18B20芯片,DS

41、18B20温度传感器是美国DALLAS半导体公司最新推出的一款智能温度传感器,在旧产品的基础上做了很大的改进,提供9-12位摄氏温度的测量,用户可编程,具有非易失的上下限报警功能。DS18B20将地址线、数据线、和控制线合为一根双向串行传输数据的信号线,也即是我们所说的单线,允许在这根信号线上挂接多个DS18B20。每个芯片内的64位ROM存放着各个器件自身的序号,也即是器件独有的ID号。因为自身有代码,所以即使挂接多个芯片也可以识别。DS18B20简化了温度采集模块与单片机的接口电路,使得电路简单,使用方便。61.引脚介绍根据应用领域不同,DS18B20有TO-92、SOP8等封装外形,常见

42、的DS18B20封装如图5,详细的引脚介绍如表6。图5 DS18B20封装图表6 DS18B20只有3个引脚说明见表 引 脚 符 号 描 述 1 GND 接地 2 DQ数据输入输出引脚 3 Vcc外接供电电源输入端2.主要特点1) 通信接口只需一条线2) ROM中有唯一的64位序列号。3) 简化的温度测量的配置。4) 不需要外部器件。5) 可以从数据线供电。 6) 测量温度范围:-55-125。7) 测量精度:+0.5。8) 温度传感器9-12位用户可选。9) 非易失存储的报警上下限。10) 接口程序与DS1822兼容11) 掉电保护3.内部构成DS18B20内部结构主要由四部分组成(如图6)

43、:64位的ROM、温度传感器、非易失性的温度报警器TH和TL及其配置寄存器。 DQC64位ROM和单线接口暂时存储器存储器与控制逻辑温度传感器高温触发器TH低温触发器TL配置寄存器8位CRC发生器Vcc 图6 DS18B20内部结构图l 64位激光ROM: 64位激光ROM用来存储DS18B20的64位串行编码,开始8位是产品类型的编号,接着是每个器件的身份序号,共有48位,最后8位是前面56位的CRC检验码,验证码是多个DS18B2采用一线进行通信的主要原因。l 高速暂存器: DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2PRAM,其中E2PRAM用于存储TH、TL值,数据先写入RAM,经校验后再传给E2PRAM;而高速暂存器的第五字节为配置寄存器,它的内容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值。该字节的定义如表7。7表7 DS18B20字节定义TMR1R0配置寄存器温度LSB温度MSBTH用户字节1TL用户字节211111 低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。出厂时该位设置为0,用户一般不要去改。4.DS18B2

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com