文档介绍:温度传感显示器项目负责人:邓深文05110049邝振华05110149温度传感显示器项目概述?本课程设计项目通过51单片机技术为支撑,应用单片机硬件与汇编语言编程技术完成温度传感显示器的项目实现工作,在51单片机外部接上一个温度传感器,通过传感功能,使得外部的温度信号转化成电信号,通过以LED数码显示管的形式显示温度。温度传感显示器项目流程??项目实现目的:本项目用途广泛实用,.??通过网络,书本途径查找温度传感器,51单片机,LED数码显示管相关资料,由温度传感器,单片机控制实现LED数码显示管显示温度并实现报警模拟情况.??确定落实项目所需元器件,主要元器件包括:89C51单片机,温度传感器,LED数码管等.?使用protel99SE制作项目原理图?硬件版面布局,.?项目程序调试确认无误,程序录入芯片.?整体项目实现效果调试.?制作课程项目设计报告,PPT等.(a)外观图(b)侧面图(c)顶视图图DS18B20芯片表DS18B20详细引脚功能描述可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。VDD3数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。DQ2地信号GND1引脚功能描述名称序号从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,那么,,DS18B20温度传感器与单片机的接口如图所示. 8051 ,而对AT89C51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。因此,对读写的数据位有着严格的时序要求。该协议定义了几种信号的时序:初始化时序、读时序、写时序。根据DS18B20的初始化时序、写时序和读时序,分别编写3个子程序:INIT_1820为初始化子程序,WRITE_1820为写(命令或数据)子程序,READ_1820为读数据子程序,所有的数据读写均由最低位开始。1 初始化时序首先, 每一次读写之前都要对DS18B20进行复位,我们先来看看初始化时序, DS18B20温度传感器初始化时序如图所示。DS18B20主动15~60uS单片机主动480uS<T<960uS单片机检测,当检测到为低电平时复位成功,并说明器件存在,当检测到依然为高电平时,说明复位不成功,可从A处再次复位,当多次复位不成功可能器件不存在或故障。A单片机主动单片机主动释放并等待480uS后再作其它操作总线控制器将数据线下拉480—960US然后释放,DS18B20温度传感器收到信号后等待15—60US左右后发出60—240US的存在低脉冲,总线控制器收到此信号表示复位成功。特别注意的是DS18B20温度传感器收到信号后等待15—60US左右后发出60—240US的存在低脉冲,,当检测到为低电平时表示复位成功,并说明器件存在,当检测到依然为高电平时,说明复位不成功,可从A处再次复位,当多次复位不成功可能器件不存在或故障。480uS<T<960uSDS18B20初始化CLR DQ向DS18B20发出reset脉冲等待480us以上SETB DQ等待15-60usDQ是否变低?置FLAG标志并延时200us初始化结束YYNN清除FLAG标志INIT_1820:SETB NOP NOP CLR ;将数据线下拉500US ACALL YS500 ;500US延时子程序 SETB ;释放数据线 ORL P1,#10H ;P1转为输入 ACALL DELAY1 ;DS18B20收到信号后等待50US JNB ,TSR3 ;判断DS18B20是否存在 AJMP TSR4 TSR3: SETB FLAG1 ;置标志位,表示DS18B20存在 AJMP TSR5