下载此文档

简易数字温度计设计.docx


文档分类:通信/电子 | 页数:约18页 举报非法文档有奖
1/18
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/18 下载此文档
文档列表 文档介绍
目录摘要 21系统设计 22系统方案论证 33系统理论分析与计算 34电路与程序设计 75测试方案与测试数据 96总结 9附录主要源程序 10摘要:本系统利用单片机AT89C52采用程序设计方法来测试温度,还可以通过两个按键设置温度报警上限,当测试温度超过设定的温度上限时,蜂鸣器器就会报警且绿灯关闭,红灯点亮;当温度低于上限时蜂鸣器关闭且红灯关闭,绿灯点亮。并通过液晶屏1602显示其测试温度以及设置的上限温度。关键词:STC89C52、LCD1602、,能自动实现实际温度的测量与显示。(1)测温范围-30℃~+120℃。(2)测量误差在±℃之内。(3)能正常显示测量的温度。(1)增加温控功能,并可修改设置温控的上下限。(2)增加温控报警功能。2系统方案论证本系统主要由主控模块、显示模块、按键模块、蜂鸣器模块、LED模块、传感器模块组成,下面分别论证这几个模块的选择。:AT89C52单片机是一种高性能8位单片微型计算机。内核本身具有丰富的指令集,足够实现本次作品的全部基本功能和部分拓展功能,相比Atmega16我们对AT89C52更为熟悉,且芯片价格较低,性价比高。方案二:采用ATmega16芯片作为主控芯片。由于对芯片的不熟悉,导致如果想要实现温度计全部基本功能和部分拓展功能,较为困难。综上所述,选择方案一。:采用LCD1602显示。LCD1602相对便宜,虽然其本身不能显示中文,但是温度计只需显示数字和一些英文,符合这次设计要求。方案二:采用LCD12864显示。LCD12864屏幕显示细腻直观,且可以显示中文,但是相对昂贵。综上所述,选择方案一。:采用4X4矩阵按键。尽管按键一目了然,但连线复杂,扫描过程烦琐,会耗费大量的系统资源。方案二:独立按键,我们只使用了两个按键来调节上限,大大节省了系统硬件资源,便于系统扩展。综上所述,选择方案二。,可以实现最高12位的温度存储值,在寄存器中,以补码的格式存储,如图1所示。图1DS18B20温度数据格式寄存器一共2个字节,LSB是低字节,MSB是高字节,其中MSb是字节的高位,LSb是字节的低位。大家可以看出来,二进制数字,每一位代表的温度的含义,都表示出来了。其中S表示的是符号位,低11位都是2的幂,用来表示最终的温度。DS18B20的温度测量范围是从-55度到+125度,而温度数据的表现形式,有正负温度,寄存器中每个数字如同卡尺的刻度一样分布,如图2所示。图2DS18B20温度值二进制数字最低位变化1,。当0度的时候,那就是0x0000,当温度125度的时候,对应十六进制是0x07D0,当温度是零下55度的时候,对应的数字是0xFC90。反过来说,当数字是0x0001的时候,。*2LCD1602DS18B20温度传感器最小系统蜂鸣器模块LED*&LED电路按下S1能增加温度报警上限,按下S2能减少温度报警上限。测试温度低于上限时,绿灯LED1亮。当温度超过设定的上限时,红灯LED2亮。图4控制按键&,蜂鸣器开启;当测试温度低于设定温度时,蜂鸣器关闭。蜂鸣器电流相对较大,因此需要用三极管驱动,并且加了一个1K欧的电阻作为限流电阻。此外还加了一个D1二极管,这个二极管叫做续流二极管。,第一行显示”Temperature”第二行显示测试温度和温度上限,两者中间显示一个”>”或”<”。RP1为上拉排阻。。(1)能够测试-30℃~+120℃的温度。(2)按下S1能增加温度报警上限,按下S2能减少温度报警上限。(3)测试温度低于上限时,绿灯亮,蜂鸣器关闭。当温度超过设定的上限时,红灯亮

简易数字温度计设计 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数18
  • 收藏数0 收藏
  • 顶次数0
  • 上传人花花世界
  • 文件大小195 KB
  • 时间2019-01-24