




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉职业技术学院毕业设计论文简易数显温度计摘 要 单片机以其体积小、重量轻、轻干扰能力强、对环境要求不高、高可靠性、高性能价格比、开发较为容易,在工业控制系统、数据采集系统、智能化仪器仪表、办公自动化等诸多领域得到极为广泛的应用。因此,单片机技术开发和应用的水平已经逐步成为一个国家工业发展水平的标志之一。现代科学技术的不断进步,使人们对温度计测量技术指标要求越来越高。回顾传统的温度计我们发现它们有反应速度慢、测量精度不高、误差很大、读数麻烦等缺点;同时51单片机在现代电子产品中广泛应用以及其技术已经非常成熟,温度传感器DS18B20具有性能稳定、线性优良、灵敏度高、抗干扰能力强、使用方便等优点,广泛应用于冰箱、空调器、粮仓等日常生活中温度的测量和控制。基于以上问题我们就利用温度传感器DS18B20和单片机STC89C52RC 设计了一款具有显示功能的电子温度计。基于51单片机和DS18B20数字温度传感器来进行温度测量的方法,包括温度传感器芯片的选取、单片机与温度传感器接口电路的设计,以及实现温度信息采集和数据传输的软件设计。DS18B20数字温度传感器是单总线器件,与51单片机组成一个测温系统,具有线路简单、体积小等特点,而且在一根通信线上,可以挂接很多这样的测温系统,十分方便。由于采用较多的集成电路和功能模块化设计,所以系统硬件电路简单,便于实现。本课题研究的内容就是以单片机为主要控制元件,通过温度传感器实现对温度的测量,并通过数码管直接显示所测温度。 关键词:单片机,温度传感器,数码管目 录1 引言12 方案设计与论证12.1 总体设计方案12.2 方案二的总体设计框图22.3 系统整体硬件电路63 系统软件算法分析83.1主函数83.2 单总线初始化函数93.3 字节读操作函数101 引言目前单片机已经渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的足迹,而在单片机的世界里,单片机8051系列是既具有经典性,又不乏生命力的一种单片机系列,因此许多的单片机学习书籍和公司都相续推出了单片机入门开发板或单片机教学开发平台,单片机实验系统主要是利用现成的单片机和外围一些接口电路进行实验,其工作主要集中在编辑和调试单片机的软件,控制其外围接口设备的工作,学生所获得的知识也主要是单片机的软件编程能力,使学生硬件设计方面得到锻炼。随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测和显示系统应用于诸多领域。传统的温度检测都是以热敏电阻为温度敏感元件。热敏电阻的成本低,但需后续处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。与传统的温度计不同的是,本次设计的数字温度计使用的是美国DALLAS半导体公司推出的一种改进型智能温度传感器DS18B20温度传感器,它能直接读出被测温度信息,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。2 方案设计与论证2.1 总体设计方案方案一:由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来。这种设计需要很好地解决引线误差补偿和放大电路零点漂移等问题。在接口上需要A/D转换,因而结构复杂且成本高,调试繁琐,测量温度的精度也很低。方案二:进而考虑到用数字集成温度传感器DS18B20,可以用单片机直接读出温度信息,并且可根据实际要求通过简单的编程实现912位的数字值读数方式,另外现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。这种设计结构简单,成本低,调试方便,测量准确度可达0.5。 综上所述,选用方案二,利用数字可编程温度传感器测量温度。2.2 方案二的总体设计框图温度计电路设计总体设计方框图如图1所示,控制器采用单片机STC89C52RC,温度传感器采用DS18B20,经译码器CD4511输出给3位LED数码管实现温度显示。图1总体设计方框图2.2.1 主控制器单片机STC89C52RC具有低电压供电、体积小、速度快、寿命长、价格低等特点,可以完成ISP在线编程功能。2.2.2 温度传感器DS18B20温度传感器是美国DALLAS半导体公司推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现位的数字值读数方式。DS18B20的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个DS18B20可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.05.5;零待机功耗;温度以或位数字;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作; 本设计中使用的DS18B20采用脚TO-92封装,引脚排序如图2所示,其内部结构框图如图3所示。 图2 DS18B20的引脚排序 图3 DS18B20内部结构图64位ROM中开始8位是产品类型的编号,接着是每个器件的唯一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。温度报警触发器和,可通过软件写入报警上下限。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。高速暂存RAM的结构为8字节的存储器,结构如图4所示。温度 LSB温度 MSBTH用户字节1TL用户字节2配置寄存器保留保留 保留 CRC图4 DS18B20存储器由图4可知,头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位的定义如图5所示。低5位一直为,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,R1和R0决定温度转换的精度位数,来设置分辨率,具体设置如表1所示。图5 配置寄存器字节定义表1 DS18B20温度转换时间表由表1可见,DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有字节的CRC码,可用来检验数据,从而保证通信数据的正确性。当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第、字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625LSB形式表示。当符号位时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。表2是一部分温度值对应的二进制温度数据。表2一部分温度对应值表温度/二进制表示十六进制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 10000000H-0.51111 1111 1111 0000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90HDS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式。在室温数显温度计中,DS18B20采用第一种电源供电方式。另外,由于DS18B20单线通信功能是分时完成的,它有严格的时序关系,因此读写时序很重要。2.2.2 显示电路温度信息由单片机读出并进行处理,然后经CD4511输出段码,驱动3位共阴LED数码管显示所测的温度数值。CD4511是一个用于驱动共阴极 LED(数码管)显示器的BCD码七段码译码器,特点如下:具有BCD转换、消隐和锁存控制、七段译码及驱动功能的CMOS电路,能提供较大的拉电流,可直接驱动LED显示器。CD4511的引脚排列如图6所示。 图6 CD4511的引脚排列引脚功能如下:BI:4脚是消隐输入控制端,当BI=0 时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字。LT:3脚是测试输入端,当BI=1,LT=0 时,译码输出全为1,不管输入 DCBA 状态如何,七段均发亮,显示“8”。它主要用来检测数码管是否损坏。LE:锁定控制端,当LE=0时,允许译码输出。 LE=1时译码器是锁定保持状态,译码器输出被保持在LE=0时的数值。A1、A2、A3、A4:8421BCD码输入端。a、b、c、d、e、f、g:为译码输出端,输出为高电平1有效。CD4511的真值表如下表所示。8421 BCD 码对应的显示如下所示。2.3 系统整体硬件电路系统整体硬件电路包括单片机主板电路、传感器数据采集电路和温度显示电路。制作完成的室温数显温度计如图7所示。图7 室温数显温度计2.3.1 主板电路单片机主板电路如图8所示。复位电路是上电复位加手动复位,使用比较方便,在程序跑飞时,可以手动复位,这样就不用在重起单片机电源,就可以实现复位。图8 单片机主板电路图2.3.2 传感器数据采集电路传感器数据采集电路如图9所示。与单片机间采用单总线连接,硬件连接非常简单。图9 DS18B20与单片机的接口电路2.3.3 显示电路显示电路是采用3片CD4511驱动3位共阴极七段数码管显示温度数值,显示非常清晰稳定,如图10所示。图10 显示电路3 系统软件算法分析室温数显温度计程序采用C51编写,主要由主函数、单总线初始化函数、字节读操作函数、字节写操作函数、温度计算函数等组成。3.1 主函数主函数的主要功能是负责温度的采集、计算和显示。温度测量每1s进行一次。其程序流程见图11所示。初始化调用显示子程序1S到?初次上电读出温度值温度计算处理显示数据刷新发温度转换开始命令NYNY图11 主函数流程图3.2 单总线初始化函数单总线初始化函数代码如下所示。static void OneWire_Init(void)DQ = 1;NOP( );DQ = 0;Delay_Xus(125);Delay_Xus(125);DQ = 1;Delay_Xus(15);while(DQ)NOP( );Delay_Xus(60);DQ = 1; 3.3 字节读操作函数字节读操作函数代码如下所示。static int8u OneWire_ReadByte(void)int8u i;int8u tmp = 0;DQ = 1;NOP( );for(i=0;i= 1;DQ = 0;NOP( );DQ = 1;Delay_Xus(2);NOP( );if(DQ) tmp |= 0x80;Delay_Xus(30);DQ = 1;NOP( );return tmp;3.4 字节写操作函数字节写操作函数代码如下所示。static void OneWire_WriteByte(int8u cmd)int8u i;for(i=0;i= 1;3.5 温度计算函数温度计算函数的功能是将读取值进行BCD码的转换运算,并进行温度值正负的判定,其流程图如图12所示。 开始温度零下?温度值取补码置“”标志计算小数位温度BCD值 计算整数位温度BCD值 结束置“+”标志NY 图12 温度计算流程参考文献1李朝青.单片机原理及接口技术(简明修订版).杭州:北京航空航天大学出版社,19982李广弟.单片机基础.北京:北京航空航天大学出版社,19943阎石.数字电子技术基础(第三版). 北京:高等教育出版社,19894廖常初.现场总线概述J.电工技术,1999袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 60335-2-13:2021/AMD1:2025 EN Amendment 1 - Household and similar electrical appliances - Safety - Part 2-13: Particular requirements for deep fat fryers,frying pans and
- 利润分配合同书6篇
- 土地使用权租赁合同范本6篇
- 包馅机定做合同5篇
- 爱车清洗知识培训内容课件
- 爱的家人课件
- 诗歌梦课件教学课件
- 诗歌意境赏析课件
- 诗歌《伞》课件教学课件
- 货物买卖合同的法律要求
- 设计思维方法与表达(高职艺术设计)PPT完整全套教学课件
- 萍乡社区工作者考试真题及答案2022
- (苏教版)四年级数学上册口算训练册
- 膝关节周围骨折术后康复
- 物业管理公司新员工入职工作规范(九)
- GB/T 8713-1988液压和气动缸筒用精密内径无缝钢管
- FZ/T 10014-2011纺织上浆用聚丙烯酸类浆料试验方法pH值测定
- 导视系统设计课件
- 普通高中化学新教材《化学反应原理》培训讲座(2020年人教版)课件
- 风力发电原理优质课件
- 中考语文标点符号用法汇总课件
评论
0/150
提交评论