毕业设计论文基于单片机的数字式温度计的设计.doc

上传人:sccc 文档编号:4870637 上传时间:2023-05-20 格式:DOC 页数:30 大小:415.52KB
返回 下载 相关 举报
毕业设计论文基于单片机的数字式温度计的设计.doc_第1页
第1页 / 共30页
毕业设计论文基于单片机的数字式温度计的设计.doc_第2页
第2页 / 共30页
毕业设计论文基于单片机的数字式温度计的设计.doc_第3页
第3页 / 共30页
毕业设计论文基于单片机的数字式温度计的设计.doc_第4页
第4页 / 共30页
毕业设计论文基于单片机的数字式温度计的设计.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《毕业设计论文基于单片机的数字式温度计的设计.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于单片机的数字式温度计的设计.doc(30页珍藏版)》请在三一办公上搜索。

1、武汉理工大学毕业设计(论文)目 录摘 要IAbstractII1 绪论11.1 国内外测温状况11.2 温度检测技术介绍21.3 课题研究的主要内容32 设计方案42.1 方案142.2 方案252.3 方案比较与选择53 设计原理及结构63.1 DS18B20结构及工作原理63.2单片机介绍103.3 LED显示器简介113.3.1 LED显示器工作原理113.3.2 LED显示电路123.4 系统结构及工作原理133.4.1 系统硬件原理图及相关说明133.4.2 系统软件算法说明143.5 系统程序的设计153.5.1 程序模块设计153.5.2 温度数据的计算处理方法194 结束语20

2、致谢21参考文献22附录2327摘 要温度作为一个重要的物理量,是工业生产过程中最普遍、最重要的工艺参数之一,所以温度测量技术和测量仪器的研究是一个重要的课题。随着时代的进步和发展,单片机技术已经伸入到各个领域,基于单片机数字温度计与传统的温度计相比,具有读数方便,测温范围广,其输出温度采用数字显示,本文将介绍一种基于单片机控制的数字温度计。笔者仔细研究了美国Dallas公司开发的一线总线技术及其通信协议。本文首先详细介绍了一线总线智能温度传感器DS18B20及单片机工作原理,在此基础上,设计了相应的硬件原理图及软件程序,实现了温度检测与显示环节。文章最后对整个设计过程中所涉及的问题及所学到的

3、知识进行了总结。关键词:一线总线,单片机,数字温度传感器,DS18B20AbstractAs an important physics quantity, temperature is one of the most widespread and important parameters in industry production. It is a very important subject to research the technology and instrument of measure temperature. Along with the time progressed, th

4、e SCMC technology has been already popularized in many fields. Compared with the traditional thermometer, The digital thermometer is more convenient in reading and has lager range in measuring temperature. Its output of temperature uses the numeral to display. This article introduces a kind of digit

5、al thermometer based on SCMC.The author studied the 1-wire bus technology and the communication protocol developed by the Dallas Semiconductor company in USA. This article describes the working principles of DS18B20 and SCMC, base on which, the author designed the corresponding software and hardware

6、 to realize a digital thermometer. At the end of this article, the paper makes a summary of the problems involved in this design and the knowledge acquired from it.Keywords:1wire bus, SCMC, Digital Temperature sensor, DS18B201 绪论“工欲善其事,必先利其器”,这是中国的一句古话,人们早就知道工具的重要性。随着以知识经济为特征的信息时代的到来,人们对仪器仪表作用的认识愈加深

7、入。作为工业自动化技术工具的自动化仪表与控制装置,在高新技术的推动下,正跨入真正的数字化、智能化、网络化的时代。而温度作为一个重要的物理量,是工业生产过程中最普遍、最重要的工艺参数之一。随着工业的不断发展,对温度测量的要求越来越高,而且测量的范围也越来越广,对温度的检测技术的要求也越来越高。因此,温度测量和温度测量技术的研究也是一个重要的研究课题。1.1 国内外测温状况随着国内外工业的日益发展,温度检测技术也不断地进步,目前的温度检测使用的温度计种类繁多、应用范围也较广泛,大致包括以下几种方法:(1)利用物体热胀冷缩原理制成的温度计利用此原理制成的温度计大致分成三大类:a 玻璃温度计,它是利用

8、玻璃感温包内的测温物质(水银、酒精、甲苯、煤油等)受热膨胀、遇冷收缩的原理进行温度测量的;b 双金属温度计,它是采用膨胀系数不同的两种金属牢固粘合在一起制成的双金属片作为感温元件,当温度变化时,一端固定的双金属片,由于两种金属膨胀系数不同而产生弯曲,自由端的位移通过传动机构带动指针指示出相应温度;c 压力式温度计,它是由感温物质(氮气、水银、二甲苯、甲苯、甘油和低沸点液体如氯甲烷、氯乙烷等)随温度变化,压力发生相应变化,用弹簧管压力表测出它的压力值,经换算得出被测物质的温度值。(2)利用热电效应技术制成的温度检测元件利用此技术制成的温度检测元件主要是热电偶。热电偶发展较早,比较成熟,至今仍为应

9、用最广泛的检测元件。热电偶具有结构简单、制作方便、测量范围宽、精度高、热惯性小等特点。常用的热电偶有以下几种:a 镍铬-镍硅,型号为WRN,分度号为K,测温范围0-900,短期可测1200。b 镍铬-康铜,型号为WRK,分度号为F,测温范围0-600,短期可测800。c 铂铑-铂,型号为WRP,分度号为S,在1300以下的温度可长期使用,短期可测1600。d 铂锗30-铂锗6,型号为WRR,分度号为B,测温范围300-1600,短期可测1800。(3)利用热阻效应技术制成的温度计用此技术制成的温度计大致可分成以下几种:a 电阻测温元件,它是利用感温元件(导体)的电阻随温度变化的性质,将电阻的变

10、化值用显示仪表反映出来,从而达到测温的目的。目前常用的有铂热电阻(分度号为Pt100,Pt10两种)和铜热电阻(分度号有Cu5O,Cu100两种)。b 导体测温元件,它与热电阻的温阻特性刚好相反,即有很大副温度系数,也就是说温度升高时,其阻值降低。他们的关系为:式中 RT在温度T(K)时的电阻值;RT0在温度T0(K)时的电阻值;e自然对数的底;B常数,其值与半导体材料的成分和制作方法有关。c 陶瓷热敏元件它的实质是利用半导体电阻的正温特性,用半导体陶瓷材料制作而成的热敏元件,常称为PCI,或NCI热敏元件。PCT热敏元件分为突变型和缓变型两类。突变型PCT元件的温阻特性是当温度达到顶点时,它

11、的阻值突然变大,有限流功能,多数用于保护电器。缓变型PCI元件的温阻特性基本上随温度升高阻值慢慢增大,起温度补偿作用。NCI元件特性与PGT元件的突变特性刚好相反,即随温度升高,它的阻值减小1。(4)利用热辐射原理制成的高温计辐射测温在近年相对其他的测温领域显得活跃些,热辐射高温计通常分为两种:一种是单色辐射高温计,一般称光学高温计;另一种是全辐射高温计,它的原理是物体受热辐射后,视物体本身的性质,能将其吸收、透过或反射。而受热物体放出的辐射能的多少,与它的温度有一定的关系。热辐射式高温计就是根据这种热辐射原理制成的。(5)利用声学原理进行温度测量声学法温度检测技术是近年来发展起来的一项新技术

12、,利用该技术,可以对炉内的烟气温度测量值和火焰分布在线检测,判断炉的燃烧状况,进行实时调节和控制。声学温度检测技术的基本原理是通过测量声波传感器间的声波传播时间以最小二乘原理重建温度的测量方法。1.2 温度检测技术介绍近年来,在温度检测技术领域,多种新的检测原理与技术的开发应用,已取得了重大进展。新一代温度检测元件正在不断出现和完善化。(1)晶体管温度检测元件半导体温度检测元件是具有代表性的温度检测元件。半导体的电阻温度系数比金属大12个数量级,二级管和三极管的PN结电压、电容对温度灵敏度很高。基于上述测温原理己研制了各种温度检测元件2。(2)集成电路温度检测元件利用硅晶体管基极发射极间电压与

13、温度关系(即半导体PN结的温度特性)进行温度检测,并把测温、激励、信号处理电路和放大电路集成一体,封装于小型管壳内,即构成了集成电路温度检测元件。目前,国内外也进行了生产。(3)核磁共振温度检测器所谓核磁共振现象是指具有核自旋的物质置于静磁场中时,当与静磁场垂直方向加以电磁波,会发生对某频率电磁的吸收现象。利用共振吸收频率随温度上升而减少的原理研制成的温度检测器,称为核磁共振温度检测器。这种检测器精度极高,可以测量出千分之一开尔文,而且输出的频率信号适于数字化运算处理,故是一种性能十分良好的温度检测器。在常温下,可作理想的标准温度计之用。(4)热噪声温度检测器它的原理是利用热电阻元件产生的噪声

14、电压与温度的相关性。其特点是:a 输出噪声电压大小与温度是比例关系;b 不受压力影响;c 感温元件的阻值几乎不影响测量精确度;所以它是可以直接读出绝对温度值而不受材料和环境条件限制的温度检测器。(5)石英晶体温度检测器它采用LC或Y型切割的石英晶片的共振频率随温度变化的特性来制作的。它利用P技术,自动补偿石英晶片的非线性,测量精度较高,一般可检测到0.001,所以可作标准检测之用。(6)激光温度检测器激光测温特别适于远程测量和特殊环境下的温度测量。用氦氖激光源的激光作反射计可测得很高的温度,精度达1%;用激光干涉和散射原理制作的温度检测器可测量更高的温度,上限可达3000,专门用于核聚变研究,

15、但在工业上应用还需进一步开发和实验。(7)微波温度检测器采用微波测温可以达到快速测量高温的目的。它是利用在不同温度下,温度与控制电压成线性关系的原理制成的。这种检测器的灵敏度为250kHZ/,精度为1%左右,检测范围为201400。(8)纯贵金属热电偶的研究由两种纯金属组成的热电偶,因其材料均匀性远优于合金材料,因而稳定性好得多。在铂铑合金热电偶(S,R型)的不确定度已很难提高之后,人们开始寻找由纯贵金属组成的热电偶,以代替S和R型热电偶,作为传递的标准3。(9)信息技术时代自动化系统中的温度检测仪表现代的工业过程自动化系统是现场总线控制系统,它是信息技术进入工业自动化后出现的新一代的自动控制

16、系统。现场总线是安装在制造或过程区域的现场装置与控制室内的自控装置之间的数字式、串行、多点通信的数据总线。所有的现场仪表(温度检测仪表是其中一种)均接到现场总线上。在这样的系统中,通常不应使用各有不同输出的温度计,必须将输出转变成统一的电信号,这样“温度计”就变成了“温度变送器”。在现场总线控制系统中的温度变送器主要是热电偶变送器和热电阻变送器,也有辐射温度变送器。1.3 课题研究的主要内容温度传感器是当前温度检测的主要器件,本课题的主要出发点是设计出测量温度检测的温度连续检测的仪器。本文主要讲述了用温度传感测温的主要原理、实际硬件电路的设计、软件设计和调试分析。第1章介绍了温度检测现状和仪器

17、仪表的发展现状。第2章提出了几种单片机数字温度计的设计方案并作出比较。第3章讲述了单片机系统硬件电路的设计过程,包括对智能温度传感器DS18B20详细的介绍以及单片机系统的设计,并讲述了仪器的软件设计,给出了软件流程图,整套仪器是由单片机系统控制的,包括LED显示器、通讯接口等。第4章进行系统调试分析,这将有助于今后对系统的改进,以进一步提高系统的测量精度,并讲述了通过本设计所得的结论和心得体会。2 设计方案2.1 方案1系统的硬件电路包括微控制器部分(主机),温度检测,人机对话(键盘/显示)三个主要部分。系统结构框图和硬件原理图分别如图2-1和图2-2所示。图2-1 方案1系统结构框图温度检

18、测部分采用传统的热敏电阻,热敏电阻的阻值随环境温度变化而变化,变送器将电阻信号转换成与温度成正比的电压信号,经A/D转换器将其转换为单片机可识别得二进制数字量,单片机主要控制LED显示器显示正确的温度值,LED显示器实现显示功能。图2-2 方案1系统硬件原理图2.2 方案2本方案与方案1的区别主要是在温度检测部分利用了一款新型的温度检测芯片DS18B20,这个芯片大大简化了温度检测模块的设计,它无需A/D转换,可直接将测得的温度值以二进制形式输出。该方案的原理框图和硬件原理图如图2-3和图2-4所示:LED显示器80C51单片机温度传感器DS18B20图2-3 方案2系统结构框图DS18B20

19、是美国达拉斯半导体公司生产的新型温度检测器件,它是单片结构,无需外加A/D即可输出数字量,通讯采用单线制,同时该通讯线还可兼作电源线,即具有寄生电源模式。它具有体积小、精度易保证、无需标定等特点,特别适合与单片机合用构成智能温度检测及控制系统4。图2-4 方案2系统硬件原理图2.3 方案比较与选择方案1与方案2的主要区别在温度检测部分,方案1是采用热敏电阻检测温度,然后利用A/D转换器将温度模拟量转换为二进制数供单片机处理。方案2主要利用DS18B20这块芯片进行温度检测,并将采集到的模拟量转换为单片机识别的二进制数。方案1与方案2相比,它最大的特点就是它能检测的温度范围很大,热敏电阻的性能决

20、定了整个设计的所能检测的温度范围。方案2的温度检测范围已经由系统中的DS18B20的特性所决定,它能检测的温度范围为-55到120,虽然其温度检测范围很窄,但已足够满足一般测量需要,从整体上来看方案2比方案1更简单,因为我们方案2是利用现有的智能温度传感芯片DS18B20,他无需A/D转换,直接输出数字量5。所以本设计中所使用的温度测量电路是方案2的电路。3 设计原理及结构3.1 DS18B20结构及工作原理温度传感器之所以考虑选择单线数字器件DS18B20,是在经过多方面比较和考虑后决定的,主要有以下几方面的原因:系统成本:由于计算机技术和微电子技术的发展,新型大规模集成电路功能越来越强大,

21、体积越来越小,而价格也越来越低。一支DS18B20的体积与普通三极管相差无几,价格只有十元人民币左右。系统复杂度:由于DS18B20是单总线器件,一条总线上可以挂接多个DS18B20,因此,与模拟传感器相比,可以大大减少接线的数量,而且不需要A/D转换器,降低系统的复杂度。系统的调试和维护,由于引线的减少,使得系统接口大为简化,给系统的调试带来方便;同时,由于DS18B20是全数字元器件,故障率很低,抗干扰性强。图3-1介绍了DS18B20的引脚和外观,表3-1则对DS18B20各引脚进行了单独介绍。图3-1 DS18B20引脚图表3-1 DS18B20引脚说明引脚符号说明1GND接地2DQ单

22、线运用的数据输入/输出引脚漏极开路3VDD可选VDD引脚的两种供电方式DS18B20有两种供电方式可供选择,即数据总线供电方式和外部供电方式。采取数据总线供电方式可以节省一根导线,但是完成温度测量的时间较长;采取外部供电方式会多用一根于供电导线,好处是可以更快的得到温度测量的结果6。DS18B20内部结构框图如图3-2所示:图3-2 DS18B20内部结构框图1)特点描述采用单总线技术,与单片机通讯只要一根I/O线。通过比较系列号可以在一根线上挂接多个DS18B20;低压供电,电源范围从3V5.5V,也可以直接从数据线上窃取电源;测温范围-55125摄氏度;数据位可编程9-12位,转换12位温

23、度时间为750ms(最大);用户可自设定预警上下限温度;报警搜索命令可识别和寻址那个器件的温度至超出预定值。DS18B20的另一特点是无外线电源工作能力。当总线为高时,稳定电源的提供是通过单线上的上拉电阻实现的,总线信号“高”也控制内部电容(Cpp),当总线为低时由电容为器件供电。从单线总线上获得电源的方法被称之为“寄生电源”。DS18B20也可以通过外部供电从VDD获得电源。DS18B20工作过程中的协议如下(1)初始化;(2)ROM操作命令;(3)存储器操作命令;(4)处理数据;2)64位激光ROM码每一个DS18B20都有一个64位码(见表3-2)存在ROM中。ROM码的低8位含有DS1

24、8B20的单线产品系列编码:28H。接下来的48位包含了唯一的系列号。高8位包含有一个循环冗余校验字节,它是根据ROM码的前56位计算得到的。表3-2 64位激光ROM码 8位CRC 48位序列号 8位系列编码(10H) MSB LSB MSB LSB MSB LSB3)温度测量DS18B20的存储器如表3-3所示,存储器由一个高速暂存便笺式RAM和一个非易失性E2PRAM组成,后者存储上限温度和下限温度的值,还有触发器TH和TL。暂存存储器有助于在进行一线通信时,确保数据的完整性。数据首先写入暂存存储器,并在那里被读回。当数据校验之后。执行复制暂存存储器的命令,将数据传送到非易失性存储器E2

25、PRAM中,这一过程确保了更改存储器时数据的完整性。表3-3 DS18B20存储器映像表存储器位温度 LSB1温度 MSB2TH 用户字节13TL 用户字节24配置寄存器5保留6保留7保留8CRC9非易失性存储器TH 用户字节1TL 用户字节2暂存存贮器是按8位字节存储器来组织的,前两个字节包含温度信息;第3和第4个字节分别是TH和TL的易失性拷贝,且在每一次上电复位时被刷新;第5个字节为配置寄存器,它的内容用于确定温度值的数字转换分辨率;6,7,8的三个字节没有使用,但是在读回时它们呈现为逻辑全1;第9个字节读出前面8个字节的CRC码,用来校验数据,从而保证通信数据的正确性7。DS18B20

26、通过使用在板on-board温度测量专利技术来测量温度,温度测量电路的方框图见下图3-3所示:图3-3 温度测量电路DS18B20通过门开通期间内,低温度系数振荡器经历的时钟周期个数计数来测量温度。同时门开通期由高温度系数振荡器决定,计数器预置对应于-55的基数。如果在门开通期结束前计数器达到零,那么温度寄存器仍被预置到-55的数值。同时计数器用斜率累加器电路所决定的值进行预置。为了对遵循抛物线规律的振荡器温度特性进行补偿,这种电路是必需的。时钟再次使计数器计值,至它达到零。如果门开通时仍未结束,那么此过程再次重复。斜率累加器用于补偿振荡器温度特性的非线性,以产生高分辨率的温度测量。通过改变温

27、度每升高一度计数器必须经历的计数个数,来实行补偿。因此为了获得所需的分辨率,计数器的数值以及在给定温度处每一摄氏度的计数个数(斜率累加器的值)都必须事先知道。当DS18B20接收到温度转换命令之后,开始启动转换。转化完成后的温度值以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在前,高位在后,数据格式以0.625/LSB形式表示。温度值格式如表3-4所示:表3-4 温度值格式表Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit023 22 21 20 2-1 2-2 2-3 2-4Bit15Bit14Bit13Bi

28、t12Bit11Bit10Bit9Bit8SSSSS26 2524当符号位S=0时,表示测得的温度值为正值,可以直接将二进制数转化为十进制数;当符号为S=1时,表示测得的温度值为负值,要先将补码变成原码,再计算其对应的十进制数。表3-5说明了输出数据与测量温度的关系8:表3-5 模数转换对应值温度数字输出(二进制)十六进制表示12500000011 1101000007D0H8500000101 0101 0000055025.062500000001 100100010191H10.12500000000 1010001000A2H0.500000000 000010000008H00000

29、0000 000000000000H-0.511111111 11111000FFF8H-10.12511111111 0101 1110FF5EH-25.062511111110 01101111FE5FH-5511111111 10010010FC90HDS18B20完成温度转换后,把测得的温度值与RAM中的TH和TL内容作比较,若TTH或TTL,则将该器件内的报警标志位置位,并对主机发的报警搜索命令作出响应,因此,可用多只DS18B20同时测量温度并进行报警搜索。4)CRC的产生总线上的主机可以根据ROM的前56位计算出CRC的值,并把它与存贮在DS18B20内的CRC值进行比较,以判断

30、ROM的数据是否已被主机正确地接收。CRC的等效多项式函数为: CRC=x8+x5+x4+1DS18B20也利用与上述相同的多项式函数,产生一个8位CRC值并把此值提供给总线的主机,以确认数据字节的传送。在使用CRC来确认数据传送的每一种情况中,总线主机必须使用上面给出的多项式函数计算CRC的值,并把计算所得的值或者与DS18B20中的8位CRC值比较,或者与DS18B20中计算得到的8位CRC值比较。CRC值的比较和是否继续操作都由总线主机来决定。当存储在DS18B20内或由DS18B20计算得到的CRC值与总线主机产生的值不相符合时,在DS18B20内没有电路来阻止命令序列的继续执行。总线

31、CRC可以使用如图3-4所示的一个移位寄存器和异或(XOR)门组成的多项式产生器来产生。图3-4 单线CRC编码3.2 单片机介绍目前,单片机的种类很多,MCS-51 8位单片机系列、MCS-96 16位单片机系列,还出现了32位单片机。位数越高,运算速度越快。由于Intel公司的这种MCS系列的经典体系结构、极好的兼容性和其最彻底的技术开放政策,许多电器商、半导体商(如:ATMEL, PHLIPS, ANANOG DEVICES, DALLAS等)以MCS系列单片机的基本内核为内核开发了众多芯片。其中,以MCS-51系列系统结构为核心的单片机更是品种繁多,统称为8051和80C51(CHMO

32、S工艺)。本系统在数据处理上速度要求不是很高,8位单片机即可。因此,选用MCS-51系列单片机。考虑到功耗问题(如:8051功耗为630mw,而80C51为120mw),本系统选用CHMOS工艺的芯片。又因本系统需要处理数量较大的数据,程序占用空间也较大,而对定时器计数器和中断源的数量要求不多。结合现有的单片机开发系统(伟福仿真器E6000),本系统选用80C51系列单片机。下面对I/O并行口进行说明:P0口:P0口是一个漏极开路的8位双向I/O端口,每位能驱动8个LS型TTL负载。共有8条引脚,有两种不同功能。第一种是8031不带片外存储器,P0口可以作为通用I/O口使用,用于传送CPU的输

33、入输出数据。这时,输出数据可以得到锁存,不需要外接专用锁存器,输入数据可以得到缓冲,增加了数据输入的可靠性:第二种是8031带片外存储器,P0口在CPU访问片外存储器时先用于传送片外存储器的低8位地址,然后传送CPU对片外存储器的读写数据9。P1口:P1口是一个带内部上拉电阻的8位准双向1/O端口,在P1口作为输入口使用时,应先向P1口锁存器(地址90H)写入全1,此时P1口引脚由内部上拉为高电平。当P1口作为通用I/O口使用时,P1.7P1.0的功能和P0口的第一功能相同,也用于传输用户的输入或输出数据。P2口:P2口也是一个带内部上拉电阻的8位准双向I/O端口。P2口的每一位能驱动(吸收或

34、输出电流)4个LS型TTL负载。它也有两种功能。第一功能是可以作为通用I/O口使用;第二功能是和P0口第二功能相配合,用于输出片外存储器的高8位地址,共同选中片外存储器单元,但不能像P0口那样传送存储器的读写数据。P3口:是一个带内部上拉电阻的8位准双向I/O端口,第一功能和P0,P1,P2的第一功能相同,第二功能作为控制用,每个引脚功能并不完全相同10,如表3-6所示:表3-6 P3口各位功能表P3口的位第二功能注释P3.0RXD串行数据接收口P3.1TXD串行数据发送口P3.2INT0外部中断0输入P3.3INT1外部中断1输入P3.4T0计数器0的外部输入P3.5T1计数器1的外部输入P

35、3.6WR外部RAM的写选通信号P3.7RD外部RAM的读选通信号3.3 LED显示器简介3.3.1 LED显示器工作原理发光二极管一般为砷化镓半导体二极管,在发光二极管两端加上正电压,发光二极管发光。而数码管LED是由若干个二极管组合而成的,一般的“8”字型LED由“a,b,c,d,e,f,g,dp”8个发光二极管组成,如图3-5所示,每个发光二极管称为一个字段10。图3-5 七段LED结构及外形图七段LED有共阴极和共阳极两种结构形式。显示电路一般分为静态显示和动态显示两类。(1)共阳极接法把发光二极管的阳极连接在一起构成公共阳极。使用时公共阳极接Vcc,当某阴极端为低电平时,该发光二极管

36、就导通发光。(2)共阴极接法把发光二极管的阴极连在一起构成公共阴极。使用时公共阴极接GND,当某阳极端为高电平时,该段发光二极管就导通发光。七段LED包含七段发光二极管和小数位发光二极管,共需8位I/O口线控制,其代码为一个字节。七段LED字型码见表3-7所示。表3-7 七段LED字形码显示字符共阴极字形码共阳极字形码显示字符共阴极 字形码共阳极字形码03FHC0HC39HC6H106HF9HD5EHA1H25BHA4HE79H86H34FHB0HF71H8EH466H99HP73H8CH56DH92HU3EHC1H67DH82HR31HCEH707HF8Hy6EH91H87FH80HH76H

37、89H96FH90HL38HC7HA77H88H“灭”00HFFHb7CH83H3.3.2 LED显示电路由N个LED显示块可构成N位LED显示器。N位LED显示器需要N根位选线。根据显示电路不同,位选线与段选线的连接方式不同,实际所需的位选线和段选线数也不一样。显示电路主要有静态显示和动态显示两种。(1)静态显示电路LED显示器工作在静态显示时,其公共阳极(或阴极)接Vcc(或GND),一直处于显示有效状态,所以每一位的显示内容必须由锁存器加以锁存,显示各位相互独立。静态显示时,LED亮度高,控制容易,但功耗大,所以口线多。若显示位数增多,则静态显示方式很难适应。一般需要动态显示方式。(2)

38、动态显示电路对于动态显示,一般将所有位的段选线的同名段联在一起,由一个8位I/O口控制,形成段选线的多位复用。而各位的公共阳极或公共阴极则分别由相应的I/O口线控制,实现各位形成段的分时选通,即同一时刻只有被选通位是能显示相应的字符,而其它所有位都是熄灭的。由于人眼有视觉暂留现象,只要每位显示间隔足够短,则会造成多位同时点亮的假象。这就需要单片微机不断地对显示进行控制,牺牲单片微机的CPU时间来换取元件的减少以及显示功耗的降低。动态显示电路如图3-6所示。图3-6 动态显示电路工作过程:将字形代码送入字形锁存器锁存,这时所有的显示块都有可能显示同样的字符;再将需要显示的位置代码送入字位锁存器锁

39、存。为防止闪烁,每位显示时间在12ms,然后显示另一位,CPU需要不断地进行显示刷新11。3.4 系统结构及工作原理3.4.1 系统硬件原理图及相关说明 本设计硬件原理图如图3-7所示:图3-7 单片机温度计硬件设计原理图下面对该电路图进行简要的说明:(1)基于80C51单片机及其外围电路的主机控制单元:80C51单片机功能强、I/O口多,它们分别是P0口、P1口、P2口和P3口。本设计中利用了其中的2个I/O口,与本系统其它部分连接,分别实现了不同的功能:P1口输出段码,通过74LS244连接4个LED显示器。列扫描用P3.0P3.3口来实现,列驱动使用9012三极管。P3.7口连接DS18

40、B20的输出。(2)DS18B20串行组成的一线总线型网络由DS18B20组成的一线总线网络,由三条线连接。它们分别是电源线、数据传输线和地线。电源线根据DS18B20的要求,使用5V的直流供电。在具体设计上可以和80C51使用同一个电压源。数据传输线直接连接在P3口的P3.7引脚上,对应着P3寄存器的P3.7数据位,因此主机对总线上的DS18B20的操作实际上就是对P3.7数据位的操作12。(3)LED数字显示及其驱动电路DS18B20测温范围上限是125,加上一个小数位,因此温度的十进制显示需要用4位LED显示。这里的LED驱动器选择了74LS244,74LS244是一个两4位三态缓冲器,

41、其引脚如图3-8所示,当它的控制端和为低电平时,输出Y的状态与输入端A相同:当和为高电平时,输出成高阻状态。输入设备的数据可在74LS244中得到缓冲。图3-8 74LS244外部引脚图3.4.2 系统软件算法说明(1)程序开始后,80C51向DS18B20发送Read ROM命令;(2)DS18B20向80C51发送64位ROM码,80C51将收到的ROM码存入数据暂存存储器;(3)80C51向总线发送复位脉冲后释放总线;(4)80C51向总线发送Convert T命令并延时1-2秒钟,DS18B20开始进行温度转换,并将结果存入存储器;(5)80C51向总线发送复位脉冲,收到响应存在脉冲后

42、,向总线发送Match ROM命令;(6)80C51向总线发送ROM编码,该ROM码的DS18B20开始响应;(7)80C51向总线发送Read Scratchpad命令并释放总线;(8)DS18B20向总线发送存储器里存放的温度转换结果;(9)80C51将接收到的结果转换成十进制,并通过LED数码管显示出来;图3-9 系统工作流程图当系统进入温度监测运行之后,是无法再进入读ROM操作的。系统每次重启进入温度监测运行模式之后,都要重新搜索总线上DS18B20的ROM码。所以,如果在系统重启之前改变总线上的DS18B20,那么系统就会重新为DS18B20排序和编号。用户在每次重启的时候都需要注意

43、这个问题。要看看总线上的DS18B20是否有变动。如果有变动,就必须重新为这些DS18B20的编号做记录。反过来说,如果系统总线上的DS18B20发生变动,就必须重启系统。重新搜索DS18B20的ROM码13。3.5 系统程序的设计3.5.1 程序模块设计系统程序主要包括C程序主函数、DS18B20复位函数、DS18B20写字节函数、DS18B20读字节函数、温度计算转换函数和显示函数。1)主函数主函数的主要功能是初始化并负责温度的读出、处理计算及显示。温度测量每2s进行一次,其程序流程如图3-10所示:图3-10 DS18B20数字温度计主函数流程图2)DS18B20复位函数复位函数时序如图

44、3-11所示,总线t0时刻发送一复位脉冲,接着在t1时刻释放总线并进入接收状态,DS18B20在总线的上升沿之后等待1560s,然后在t2时刻发出存在脉冲,如图虚线所示,单片机接收到低电平脉冲说明复位成功,否则需要重新进行复位操作14。图3-11 DS18B20复位时序3)DS18B20写字节函数当主机总线t0时刻从高拉至低电平时就产生写时间隙,写位时序见图3-12。从t0时刻开始15s之内主机应将所需写的位送到总线上,DS18B20在t0后1560s内对总线电平采样。连续写两位的间隙应大于1s。图3-12 DS18B20写0和写1时序4)读字节函数如图3-13所示为读位时序函数,主机总线t0

45、时刻从高拉至低电平时,总线需要保持低电平14s,之后在t1时刻将总线拉高产生读时间隙,读时间隙在t1时刻后t2时刻前有效,t2距t015s,也就是说t2时刻前主机必须完成读位并在t0后的60120s内释放总线。连续读2位的间隙应大于1s15。图 3-13 读位函数时序5)温度计算转换函数温度数据处理程序将12位温度值进行BCD码转换运算,并进行温度值正负的判断,其程序流程如图3-14所示: 图 3-14温度计算转换函数流程图6)DS18B20的主要ROM命令和存储器命令一旦总线主机检测到从属器件的存在,它便可以发出某个ROM操作命令。所有ROM 操作命令均为8位长,这些命令列表如下表3-8所示:表3-8 ROM操作指令指令说明 代码 总线操作Read ROM 读ROM33HDS18B20发送ROM码Match ROM 匹配ROMCCH 主机发送ROM码Skip ROM 跳过ROM55H 主机发出存储器命令Search ROM 搜索ROMF0H DS18B20发送第一位“与”

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号