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测温的迟滞性,不宜做即时温度测量。
上一篇:51单片机串口通信实验电路详解
下一篇:使用单片机实现拉幕式数码显示技术的详细说明
推荐阅读最新更新时间:2024-11-17 15:30
推荐帖子
- 【免费租用】Xilinx Spartan-6 FPGA 嵌入式套件!
- XilinxSpartan-6FPGA嵌入式套件免费租用。【免费租用】XilinxSpartan-6FPGA嵌入式套件!
- soso 活动列表
- 无处不在的嵌入式如何改变生活?
- 从去年开始,智能硬件,智能手环,智能家居,,,,一系列的智能出现在我们的生活里。今年,谷歌,苹果,微软,三星,霍尼韦尔等国外巨头,和百度,腾讯,阿里,小米,乐视,海尔等国内巨头不管自主开发还是一系列的收购智能家居公司,都表现出对未来智能家居的布局积极心态。并各自隐藏着对智能家居垄断布局的野心。做为终端用户,咱完全是看热闹不嫌事大的心情~~不过,对于咱技术开发人,每个人都有自己对智能家居的见解,或是脑海里的方案雏形。但大多功能都是说起来容易,做起来难。谈及终端产品价格和实用价值时更是浇了一个
- 芯灵思 嵌入式系统
- DSP在Load Program过程中报错,求助
- 大家好,我现在用TI的2407DSP进行编程。现在是往外扩的RAM里loadprogram过程中报错了,大家帮忙分分析下原因,拜托了!其中报错提示如下:Dataverificationfailedataddress0x144.Pleaseverifytargetmemoryandmemorymap.DSP在LoadProgram过程中报错,求助还玩2407呢?换了吧 谢谢你的回复,帮忙分析下原因吧,谢谢啦 报错的信息应该是说写0x144这个
- xiaoping2016 微控制器 MCU
- Linux环境下的网络编程
- Linux环境下的网络编程本文介绍了在Linux环境下的socket编程常用函数用法及socket编程的一般规则和客户/服务器模型的编程应注意的事项和常遇问题的解决方法,并举了具体代码实例。要理解本文所谈的技术问题需要读者具有一定C语言的编程经验和TCP/IP方面的基本知识。要实习本文的示例,需要Linux下的gcc编译平台支持。Linux环境下的网络编程非常好,顶!Re:Linux环境下的网络编程
- mdreamj RF/无线
- 有没有哪位大神做过光栅数据采集
- 求光栅数据采集资料有没有哪位大神做过光栅数据采集{:1_103:}光栅对数据的采样率貌似不高,应该还需要一个扫频系统,不知道是不是这个意思。 我是刚接触这个,然后想做一个光栅数据采集的板子,不知道该用到什么模块光栅就是一对红外管,一个发送红外光,另外一端接收,可以搜索光栅https://detail.tmall.com/item.htm?spm=a230r.1.14.20.3b572fedMmaGB2&id=538663309313&ns=1&abbucket=12&skuI
- hnkjdxwyj FPGA/CPLD
- 大佬们帮我看看我这个电路可以正常实现pwm3.3v控制12v 可调吗
- 大佬们帮我看一下谢谢大佬们帮我看看我这个电路可以正常实现pwm3.3v控制12v可调吗OUT输出端接继电器吗?DCF_CH1处的PWM信号可以控制Q7的输出,但控制可能非常缓慢。2楼问你OUT端是否接继电器,他是从该输出端到电源端接有一个二极管而产生怀疑的。如果Q7负载是继电器,那根本用不着什么PWM,R52左端给一个开关信号即可。在VIN和JDQ1_OUT之间接感性负载?PWM的开关频率不能太高,需要考虑到光耦的导通/关断速度 不是直接接到电动推杆
- nicai2 模拟电子
设计资源 培训 开发板 精华推荐
- LT1076HVCT-5 5V 降压型开关稳压器的典型应用电路
- LTC2355-12 的典型应用 - 具有关断功能的串行 12 位、3.5Msps 采样 ADC
- LTC3536EMSE 演示板、1A、低噪声、宽输入电压降压-升压型 DC/DC 转换器
- 用于便携式计算机的 25W、-96V、-26V DC 到 DC 多输出电源
- 【训练营】氛围背景灯+381874A
- 家用电器的微处理器电源监控
- 使用 ROHM Semiconductor 的 BD49L28G-TL 的参考设计
- ZXLD1371 60V高精度Buck-Boost LED驱动器典型应用
- 松下PAN9026:短距离全方位解决方案
- SPT2028_AirTouch_Segment