基于DS1620和AT89C2051的数字温度计的设计

发布时间:2010-9-11 12:58    发布者:techshare
关键词: AT89C2051 , DS1620 , 数字温度计
1 DS1620芯片介绍

DS1620是一片8引脚的片内建有温度测量并转换为数字值的集成电路,他集温度传感、温度数据转换与传输、温度控制等功能于一体。测温范围:-55~+125℃,精度为0.5℃。该芯片非常容易与单片机连接,实现温度的测控应用,单独做温度控制器使用时,可不用外加其他辅助元件。

引脚功能及排列如图1所示。



其中:RST,CLK/CONV及DQ为三线串行通信线;DQ为数据输入输出端。当RST保持高电平,对应CLK/CONV时钟脉冲的上升沿处,DQ可按位输入各种控制指令及数据,在CLK/CONV时钟脉冲的下降沿处开始按位输出9 B温度值,分2个字节输出,最低位(LSB)在最先输出,先输出的1个字节(8 B)除以2就是摄氏温度值,后输出的1个字节(仅1 B)为温度的符号位,是0为正,是1为负。RST为低电平时结束通信,CLK/CONV保持低电平,DQ呈现高阻态,但芯片内部在进行温度的测量与数字转换(即温度值的更新),这需要大约1 s的时间。

引脚THIGH为高温临界触发输出端,当所测温度高于高温临界寄存器中设定的温度TH时,该引脚由低电平变为高电平,而温度低于TH时又回到低电平;TLOW为低温临界触发输出端,其电平变化与THIGH类似;TCOM为高/低温临界组合触发输出端;他们都可作为温度调节器的输出端,直接控制加热或冷却设备。

DS1620内部有一个工作方式寄存器,如表1所示。



其中:DONE为温度数据转换位,为0时表示正,在转换过程中,为1表示已转换完毕;THF:高温标志位,当温度高于或等于高温临界寄存器中的设定值TH时,硬件对该位置位,但硬件不能对该位清零;TLF:低温标志位,当温度低于或等于设定值TL时,硬件对该位置位,同样,硬件不能对该位清零;CPU:CPU使用位,通过软件对该位清零时,若RST为低电平,则可由CLK/CONV控制温度数据的转换,通过软件对该特定温度转换位,若通过软件对该位置1,则DS1620进行该时刻的温度转换,并等待读取,若该位被置0,则DS1620将不停地进行温度转换。

DS1620的工作状态都是由外部输入的指令来控制的,具体的指令如下:

AAH 读取转换好的温度数据;从指令输入后的第9个时钟(亦称移位)脉冲开始,将输出温度寄存器中的数据。
01H 给高温临界寄存器写入TH数据。
02H 给低温临界寄存器写入TL数据。
A1H 读高温临界寄存器中的TH数据。
A2H 读低温临界寄存器中的TL数据。
EEH 开始转换温度数据。
22H 停止转换温度数据。
0CH 写工作方式寄存器。
ACH 写工作方式寄存器。

2 电路设计

如图2所示,单片机P3.3~P3.5与DS1620按三线通信方式相连,P1口输出七段码,P3.0~P3.2通过驱动三极管接到共阳数码管的COM端,3个按键在P3.7的配合下提供功能扩展。




3 程序设计

程序的流程图如图3所示,各程序模块均为子程序及嵌套有子程序的调用,其中读、写DS1620模块模块为子程序,完成1个字节的温度值或指令的读写;按键服务模块主要完成对高/低温临界寄存器中TH、TL值的改写。

下面给出写/读DS1620、配置DS1620、开始转换、读取温度等5个子程序的汇编语言程序,其余模块及程序不再赘述。









  



4 结 语

所设计的数字温度计测量精度高、工作可靠、体积小、成本低,可扩展为温度调节器。不足之处是由于DS1620测温的迟滞性,不宜做即时温度测量。
本文地址:https://www.eechina.com/thread-26123-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

  • Microchip视频专区
  • 我们是Microchip
  • 你仿真过吗?使用免费的MPLAB Mindi模拟仿真器降低设计风险
  • 深度体验Microchip自动辅助驾驶应用方案——2025巡展开启报名!
  • 利用模拟开发工具生态系统进行安全电路设计
  • 贸泽电子(Mouser)专区
关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表