好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

基于某AT89C51单片机电子体温计设计.doc

23页
  • 卖家[上传人]:cn****1
  • 文档编号:496773572
  • 上传时间:2022-10-07
  • 文档格式:DOC
  • 文档大小:91KB
  • / 23 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • word1系统设计的目的意义1.1 目的体温是生命活动的一种表现,是人体新陈代谢的一个重要生理参数体温既有生理学的意义,又有重要的临床意义,是临床诊断的一个重要指标因此体温计在现在的生活中有极为重要的作用传统的水银体温计易破碎,存在水银污染的可能,测量时间较长,不易读数,为此设计一种新型的体温计,它的测量精度与传统的水银体温计相媲美的情况下,大大地缩短了测量时间且携带方便,对环境几乎没有污染它以AT89C51单片机为核心,结合温度传感器,LED模块等外部设备,在软件的控制下,实现智能化的体温测量,不但能够准确测温,而且能够对温度进展逻辑判断,并且通过LED显示器将测量结果显示出来假如温度高于38摄氏度系统就会自动报警,这就意味着所测得的温度异于人体正常温度,引起人们注意本设计的创新点在于,不仅完成了电子体温计的要求,而且还增加了一个报警装置当测量者的体温高于人体正常体温时,体温计就会自动报警,人性化设计,为广阔客户带来方便1.2 国内外进展情况中国电子体温计行业最早起源于1998年,以每年高于30%的速度开展至今经历了十多年时间高达数倍甚至十多倍的利润空间、较低的政策壁垒和技术壁垒吸引了众多企业进入该行业。

      目前国内涌现了大小80多家电子体温计品牌,既有“欧姆龙〞、“婴之侣〞、“捷威〞等行业领头的外资品牌,也有“华辰〞、“世佳〞、“华安〞、“康复〞等迅速开展壮大的国内品牌今后试图进去该行业的生产厂家将达到50多家由于行业逐步规X和新一轮电子体温计产品消费热潮的兴起,2009年以后,电子体温计产品行业进入了一个前所未有的高速开展时期,市场的快速开展孕育着巨大的商机1.3 设计思路本系统可以使用ISIS画出原理图,打开ISIS软件,单击命令窗口file——new design,创建一个default模板,保存名称为“〞执行菜单命令library——pick device/symbol,添加所需元件本程序中可以使用DS18B20温度传感器,上面有“+〞“-〞可以模拟外界温度变化芯片选取74LS137,74LS373在原理图编辑窗口中放置元件,再单击工具箱中的“原件终端〞图标,在对象选择中单击POWER和GROUND放置电源和地放置好元件后,布好线左键双击各元件,设置好相应参数,完成电路设计设计的软件局部在Keil中完成,具体操作步骤在后面仿真步骤中有详细介绍,在此就不一一列出2系统分析2.1 系统总体设计本系统采用AT89C51单片机、DS18B20温度采集模块和LED显示器共同实现。

      AT89C51集合了温度传感器、放大器、A/D转换器三者的作用其中AT89C51通过P1.0和DS18B20进展单总线通信,启动DS18B20温度采集功能并取出转化后的体温数值,最后将体温值显示在外接在P0口与P2口的四位共阴LED上设计思路如图2.1所示DS18B20单片机LED显示器蜂鸣器图2.1 设计思路示意图2.2 DS18B20根底知识DS18B20是Dallas公司继DS1820后推出的一种改良型智能数字温度传感器,与传统热敏电阻相比,只需一根线就能直接读出被测温度,并可根据实际需求编程实现9~12位数字值的读数方式2.2.1 DS18B20的封装形式与引脚功能DS18B20有三种封装形式:(1) 采用3引脚TO-92的封装形式2) 采用6引脚TSOC封装形式3) 采用8引脚SOIC封装形式DS18B20芯片的引脚功能如下:(1) GND:电源地2) DQ:数字信号输入/输出端3) VDD:外接供电电源输入端采用寄生电源方式时,该引脚接地2.2.2 DS18B20的内部结构温度传感器DS18B20的内部结构如下列图,主要由64位ROM、温度传感器与高速缓存器配置存放器等局部组成,如图2.2所示。

      VDDDQ64位ROM和单线接口高速缓存器温度传感器高温触发器TH低温触发器TL配置存放器存储与控制逻辑电源检测8位CRC发生器C图2.2 DS18B20内部结构示意图下面对DS18B20的相关局部进展简单的描述 〔1〕64位ROM64位ROM是由厂家用激光刻录一个64位的二进制ROM代码,是该芯片的标志号,如图2.3所示8位循环冗余检验48位序列号8位分类编号〔10H〕图2.3 64位ROM示意图 MSB LSB MSB LSB MSB LSB8位分类编号表示产品分类编号,DS18B20的分类编号为 10H;48号序列号是一个大于281x1012的十进数编码,作为该芯片的唯一标志代码;8位循环冗余检验为前56位的CRC循环冗余校验码〔CRC=X8+X5+X4+1〕由于每个芯片的64位ROM代码不同,因此在单总线上能够并挂多个DS18B20进展多点温度实时检测〔2〕温度传感器温度传感器是DS18B20的核心局部,该功能部件可完成对温度的测量通过软件编程可将-55~+125摄氏度X围内的温度值按9位、10位、11位、12位的转换精度进展量化,以上的转换精度都包括一个符号位,因此对应的温度量化值分别为0.5、0.25、0.125、0.0625摄氏度,即最高转换精度为0.0625摄氏度。

      芯片出厂时默认为12位的转换精度当接收到温度转换指令〔44H〕后,开始转换,转换完成后的温度以16位带符号扩展的二进制补码形式表示,存储在高速缓存器RAM的第0、1字节中,二进制数的前5位是符号位如果测得的温度大于0,这5位为0,只要将测到的数值乘上0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘上0.0625即可得到实际温度〔3〕高速缓存器高速缓存器包括一个高速暂存器RAM和一个非易失性可电擦除E2PROM非易失性可电擦除E2PROM用于存放高温触发器TH、低温触发器TL和配置存放器中的信息高速暂存器RAM是一个连续8字节的存储器,前两个字节是测得的温度信息,第1个字节的内容是温度的低8位,第2个字节是温度的高8位第3个和第4个字节是高温触发器TH、低温触发器TL的易失性复制,第5个字节是配置存放器的易失性复制,以上字节的内容在每一次上电复位时被刷新第6、7、8个字节用于暂时保存为1〔4〕配置存放器配置存放器的内容用于确定温度值的数字转换分辨率DS18B20工作时按此存放器的分辨率将温度转换为相应精度的数值,它是高速缓存器的第5个字节,该字节定义如图2.4所示。

      图2.4 高速缓存器的第5个字节示意图TMR0R111111TM是测试模块位,用于设置DS18B20在工作模式还是在测试模式在DS18B20出厂时,该位被设置为0,用户不必改动;R1和R0用来设置分辨率;其余5位均固定为1DS18B20的分辨率设置如表2.1所示表2.1 DS18B20的分辨率设置R1R0分辨率最大转换时间〔ms〕009位0110位1011位3751112位7502.2.3 DS18B20的测温原理DS18B20主要由斜率累加器、温度系数振荡器、减法计数器、温度存放器等局部组成斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值温度系数振荡器用于产生减法计数脉冲信号,其中低温度系数振荡器受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数振荡器受温度的影响较大,随温度的变化,其振荡频率明显改变,产生的信号作为减法计数器2的输入脉冲减法计数器对脉冲信号进展减法计数温度存放器暂存温度数值在图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进展计数,从而完成温度测量计数门的开启时间由高温度系数振荡器决定,每次测量前,首先将-55摄氏度多对应的基数分别置入减法计数器1和温度存放器中,减法计数器1和温度存放器被预置在-55摄氏度所对应的一个基数值。

      减法计数器1对低温度系数振荡器产生的脉冲信号进展减法计数,当减法计数器1的预置值减到0时,温度存放器的值将加1之后,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数振荡器产生的脉冲信号进展计数,如此循环,直到减法计数器2计数到0时,停止温度存放器的值的累加此时,温度存放器中的数值即为所测温度斜率累加器不断补偿和修正测温过程中的非线性,只要计数门未关闭就重复上述过程,直至温度存放器的值达到被测温度值由于DS18B20是单总线芯片,在系统中假如有多个单总线芯片,每个芯片的信息交换如此是分时完成的,均有严格的读/写时序要求系统对DS18B20的操作协议为:初始化DS18B20〔发复位脉冲〕→发ROM功能命令→发存储器操作命令→处理数据2.2.4 DS18B20的ROM命令〔1〕Read ROM命令代码33H,允许主设备读出DS18B20的64位二进制ROM代码该命令只适用于总线上存在单只DS18B20〔2〕Match ROM命令代码55H,假如主线上有多个从设备,使用该命令可以选中某一制定的DS18B20,即可与64位二进制ROM代码完全匹配的DS18B20才能响应其操作〔3〕Skip ROM命令代码CCH,在启动所有DS18B20转换之前或系统只有一个DS18B20时,该命令将允许主设备不提供64位二进制ROM代码就使用存放器操作命令。

      〔4〕Search ROM命令代码F0H,当系统初次启动时,主设备可能不知总线上有多少个从设备或者它们的ROM代码,使用该命令可确定系统中的从设备个数与ROM代码〔5〕Alarm ROM命令代码ECH,该命令用于鉴别和定位系统中超出程序设定的报警温度值〔6〕Write Scratchpad命令代码4EH,允许主设备向DS18B20的存放器写入两个字节的数据,其中第一个字节写入TH中,第二个字节写入TL中可以在任何时刻发出复位命令中止数据的写入〔7〕Read Scratchpad命令代码BEH,允许主设备读取暂存器中的内容从第一个字节开始,直到CRC读完第九个字节也可以在任何时刻发出复位命令中止数据的读取操作〔8〕Copy Scratchpad命令代码48H,将高温触发器TH和低温触发器TL中的字节复制到非易失性E2PROM假如主机在该命令之后又发出读操作,而DS18B20又忙于将暂存器的内容复制到E2PROM时,DS18B20就会输出一个“0〞假如复制完毕,如此DS18B20输出一个“1〞如果使用寄生电源,如此主设备发出该命令后,立即发出强上拉并至少保持10ms以上的时间〔9〕Convert T命令代码44H,启动一次温度转换。

      假如主机在该命令之后又发出其他操作,而DS18B20又忙于温度转换,DS18B20就会输出一个“0〞假如转换完毕,如此DS18B20输出一个“1〞如果使用寄生电源,如此主设备发出该命令之后,立即发出强上拉并至少保持500ms以上的时间〔10〕Recall E2命令代码B8H,将高温触发器TH和低温触发器TL中的字节从E2ROM中复制回到暂存器中该操作是在DS18B20上电时自动执行,假如执行该命令后又发出读操作,DS18B20会输出温度转换忙标志:0为忙,1完成〔11〕Read Power Supply命令代码B4。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.