当前位置:首页 > 模拟 > 模拟
[导读]本文以数字温度传感器DSl8B20为例,介绍一种实用和简单的编程方案。 1 DS18B20的精简编程考虑 测温分辨率:通过设置配置寄存器,DS18B20有0.5℃、0.25℃、0.125℃和0.062 5℃几种温度可供选择。如果不作选择,

本文以数字温度传感器DSl8B20为例,介绍一种实用和简单的编程方案。

DS18B20的精简编程考虑

测温分辨率:通过设置配置寄存器,DS18B20有0.5℃、0.25℃、0.125℃和0.062 5℃几种温度可供选择。如果不作选择,缺省值为12位,即最高分辨率0.062 5℃,这样可省去相关写EEPROM的命令。图1为温度格式。



温度报警高限TH和低限TL:如果设置了TH和TL,DS18B20将在温度高于TH或低于TL时做出响应。这要用到写入EEPROM的命令,将可改写RAM(Scratchpad RAM)拷入EEPROM。其实,在很多应用场合,这样的报警设置完全可以在MASTER(如单片机)中完成,从而节省DS18B20的编程。这只要不使用报警搜索命令(Alarm search command)即可。

光刻ROM(lasered ROM)命令:一共有6个。对于只要单个DS18B20的场合,如果不考虑读ROM中的序列号代码,不允许报警等功能,只要进行测温的话,用一个跳过ROM(Skip ROM)命令就足够了。

RAM有关的命令:一共有6个。如果在DS18B20的电源端专配电源,不设置高低温报警,只需使用“ConvertT”和“Read Scratch”命令即可。前者开始进行温度转换(时间约需750 ms),后者将温度值及循环冗余校验码CRC等9字节读入MASTER(如单片机)。

关键时序:尽管测量时可以作上述简化,但DS18B20的时序必须严格遵循。最苛刻的时间要求应是读时槽(read time slots):MASTER在数据线上发出一个下降沿表示读时槽开始,时间至少保持1μs,然后停止驱动数据总线。DS18B20在数据线上输出约15 μs的数据。在这一时间段内,MASTER必须及时采样数据线。这样的定时要求与之相连的单片机必须工作在较高的频率,如主频为32 kHz就无法满足15μs内完成采样的要求。

2  一个简单实用的程序设计方案

采用上述精简方案后,基于单片机PIC16F628A(主频为4 MHz)实现的测温程序如下:



到此开始读9个字节scratchpad,并检查CRC。如无误,再次调用rp子程序复位DS18B20,结束本次测量;如出错,转出错处理子程序。为使系统具有一定的容错能力,出错时也可将上述程序再试一遍,如连续3次都出现CRC检查错则转出错处理子程序。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

你了解DS1820工作原理嘛,今天就让我来带你深入探索数字温度传感器的科技奥秘。在科技飞速发展的今天,传感器作为获取物理世界信息的重要工具,已经广泛应用于各个领域。其中,DS1820作为一款数字温度传感器,以其独特的优势...

关键字: ds1820 数字温度传感器

学好电子技术基础知识,如电路基础、模拟电路、数字电路和微机原理。这几门课程都是弱电类专业的必修课程,学会这些后能保证你看懂单片机电路、知道电路的设计思路和工作原理;

关键字: 单片机 编程 电路设计

单片机编程需要使用专门的软件工具,这些工具能够帮助程序员编写、调试和烧录程序到单片机中。以下是一些常用的单片机编程软件:

关键字: 单片机 编程 软件工具

Java语言和C语言是两种不同的编程语言,它们在语法、特性和应用领域上有许多差别。下面将详细介绍Java语言和C语言之间的差异以及它们各自的技术特点。

关键字: Java语言 C语言 编程

嵌入式系统是现代生活中无处不在的一部分。它们包括了我们的家电、汽车、智能手机、医疗设备等等。这些系统的工作必须高效、可靠,因为它们往往控制着生活中的关键方面。而C语言作为一种广泛用于嵌入式系统开发的编程语言,其质量和稳定...

关键字: 嵌入式系统 C语言 编程

在嵌入式系统开发领域中,C语言是使用最广泛的编程语言之一。它具有高效、灵活和可移植的特点,成为嵌入式系统设计师的首选语言。本文将介绍C语言编程的基本概念、特点以及在嵌入式系统开发中的应用。

关键字: 嵌入式系统 C语言 编程

在编程和计算中,运算符优先级是解释和计算表达式的一个关键因素。本文旨在阐述运算符优先级的概念、规则及其在表达式中的应用,以帮助读者更好地理解和运用运算符优先级。

关键字: 表达式 运算符 编程

泰克科技组合软件总经理Rick Khulman:“激发孩子们——尤其是女孩们对STEM的兴趣,对我本人乃至广大工程界都至关重要。”

关键字: 编程 机器人 示波器

PIC单片机采用精简指令集,例如对于PIC16F716单片机,只有35条单字节指令。要用这么少的指令实现复杂的控制或计算,显然要在程序设计上多做文章,以下就程序设计需要注意的问题谈一些看法。 美国微芯公司开发的CMOS工...

关键字: 单片机 控制 编程

PLC编程是一种数字运算操作的电子系统,专为在工业环境下应用而设计。它采用可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字式、模拟式的输入和输出,控制各种类型的机械或...

关键字: plc 编程 plc编程
关闭
关闭