当前位置:首页 > 新闻中心

温度传感器DS18B20原理附STM32例程代码

时间:2023-12-31 作者: 新闻中心

  DS18B20是一款常用的高精度的单总线数字温度测量芯片。具有体积小,硬件开销低,抗干扰能力强,精度高的特点。

  测温范围为-55℃到+125℃,在-10℃到+85℃范围内误差为±0.4°

  掉电保护功能 DS18B20 内部含有 EEPROM ,通过配置寄存器可以设定数字转换精度和报警温度,在系统掉电以后,它仍可保存分辨率及报警温度的设定值

  每个DS18B20都有独立唯一的64位-ID,此特性决定了它可以将任意多的DS18b20挂载到一根总线上,通过ROM搜索读取相应DS18B20的温度值

  DS18B20返回的16位二进制数代表此刻探测的温度值,其高五位代表正负。如果高五位全部为1,则代表返回的温度值为负值。如果高五位全部为0,则代表返回的温度值为正值。后面的11位数据代表温度的绝对值,将其转换为十进制数值之后,再乘以0.0625就可以获得此时的温度值传感器引脚及原理图

  单个DS18B20接线方式:VDD接到电源,DQ接单片机引脚,同时外加上拉电阻,GND接地。

  注意这个上拉电阻是必须的,就是DQ引脚必须要一个上拉电阻。DS18B20上拉电阻

  漏极开路:MOS管的栅极G和输入连接,源极S接公共端,漏极D悬空(开路)什么也没有接,直接输出 ,这时只能输出低电平和高阻态,不能输出高电平。

  下图a为正常输出(内有上拉电阻):场效应管导通时,输出低电位输出低电位,截止时输出高电位

  下图b为漏极开路输出,外接上拉电阻:场效应管导通时,驱动电流是从外部的VCC流经电阻通过MOSFET到GND,输出低电位,截止时输出高电位

  下图c为漏极开路输出,无外接上拉电阻:场效应管导通时输出低电位,截止呈高阻态(断开)

  开漏输出只能输出低电平,不能输出高电平。漏极开路输出高电平时必须在输出端与正电源(VCC)间外接一个上拉电阻。否则只能输出高阻态。

  DS18B20 是单线通信,即接收和发送都是这个通信脚进行的。其接收数据时为高电阻输入,其发送数据时是开漏输出,本身不具有输出高电平的能力,即输出0时通过MOS下拉为低电平,而输出1时,则为高阻,需要外接上拉电阻将其拉为高电平。因此,需要外接上拉电阻,否则就没办法输出1。

  DS18B20的工作电流约为1mA,VCC一般为5V,则电阻R=5V/1mA=5KΩ,所以正常选择4.7K电阻,或者相近的电阻值。

  DS18B20的另一个特点是不需要再外部供电下即可工作。当总线高电平时能量由单线上拉电阻经过DQ引脚获得。高电平同时充电一个内部电容,当总线低电平时由此电容供应能量。这种供电方法被称为“寄生电源”。另外一种选择是DSl8B20由接在VDD的外部电源供电。

  64位ROM存储独有的序列号,ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。这样就能轻松实现一根总线的目的。

  配置寄存器允许用户设定9位,10位,11位和12位的温度分辨率,分别对应着温度的分辨率为:0.5°C,0.25°C,0.125°C,0.0625°C,默认为12位分辨率

  存储器:由一个高速的RAM和一个可擦除的EEPROM组成,EEPROM存储高温和低温触发器(TH和TL)以及配置寄存器的值,(就是存储低温和高温报警值以及温度分辨率)

  DS18B20采用16位补码的形式来存储温度数据,温度是摄氏度。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。

  剩下的11位为温度数据位,对于12位分辨率,所有位全部有效,对于11位分辨率,位0(bit0)无定义,对于10位分辨率,位0和位1无定义,对于9位分辨率,位0,位1,和位2无定义。

  当五个符号位S=0时,温度为正值,直接将后面的11位二进制转换为十进制,再乘以0.0625(12位分辨率),就能够获得温度值。

  当五个符号位S=1时,温度为负值,先将后面的11位二进制补码变为原码(符号位不变,数值位取反后加1),再计算十进制值。再乘以0.0625(12位分辨率),就能够获得温度值。

  其中第二步执行ROM指令,也就是访问每个DS18B20,搜索64位序列号,读取匹配的序列号值,然后匹配对应的DS18B20,如果我们仅使用单个DS18B20,可以直接跳过ROM指令。而跳过ROM指令的字节是0xCC。

  任何器件想要使用,首先就是需要初始化,对于DS18B20单总线设备,首先初始化单总线为高电平,然后总线开始也需要检测这条总线这个器件。如果这条总线,总线会根据时序要求返回一个低电平脉冲,如果不存在的话,也就不会返回脉冲,即总线保持为高电平。

  这时DS8B20检测到请求之后,会拉低信号,大约60~240us表示应答

  DS8B20拉低电平的60~240us之间,单片机读取总线的电平,如果是低电平,那么表示初始化成功

  DS18B20拉低电平60~240us之后,会释放总线的初始化代码如下:

  x = DQ; //稍做延时后,如果x=0则初始化成功,x=1则初始化失败

  总线控制器经过控制单总线高低电平维持的时间从而把逻辑1或0写DS18B20中。每次只传输1位数据。

  单片机想要给DS18B20写入一个0时,需要将单片机引脚拉低,保持低电平时间要在60~120us之间,然后释放总线时,需要将单片机引脚拉低,拉低时间需要大于1us,然后在15us内拉高总线处于采样单总线电平状态。如果在此期间总线次写周期之间至少间隔1us。

  采用多个DS18B20时,需要写ROM指令来控制总线,直接写跳过ROM指令0xCC即可。DS18B20写入ROM功能指令如下表:

  DS18B20的一些RAM功能指令如下表。其中常用的是温度转换指令,开启温度读取转换,读取好的温度会存储在高速暂存器的第0个和第一个字节中。另一个常用的是读取温度指令,读取高速暂存器存储的数据。

  读时隙由主机拉低总线μs然后再释放总线在检测到总线微秒后,便开始送出数据,若是要送出0就把总线拉为低电平直到读周期结束。若要送出1则释放总线为高电平。

  注意:所有读时隙必须至少需要60us,且在两次独立的时隙之间至少需要1ps的恢复时间。

  同时注意:主机只有在发送读暂存器命令(0xBE)或读电源类型命令(0xB4)后,立即生成读时隙指令,DS18B20才能向主机传送数据。也就是先发读取指令,再发送读时隙。最后一点:写时序注意是先写命令的低字节,比如写入跳过ROM指令0xCC(11001100),写的顺序是“零、零、壹、壹、零、零、壹、壹”。

  编辑:什么鱼 引用地址:温度传感器DS18B20原理,附STM32例程代码

  下一篇:STM32的启动模式配置与应用推荐阅读最新更新时间:2023-12-31 23:01红外线

  1、引言 在物理实验和生产实际中。往往需要高精度的测量。环境和温度对测量的影响是一个重要的因素。因此要求我们一定要对环境和温度进行精密的测量。对测量仪器也应有如下的要求,即制造成本低。测量精度高。湿度传感器探头,不锈钢电热管,PT100传感器,流体电磁阀,铸铝加热器,加热圈线形度好,应用场景范围广。便于安装和调试。目前市场上有多种传感器能用来实现温度的测量。常用的有石英温度计、光纤传感温度计、热敏电阻温度计等在上述几种器件中,石英温度计灵敏度最高,目前可达到℃数量级然而,这些传感器的价格一般都比较贵。线性度难以达到精密测量的要求。 我们所知道红外光的特性:单色性好,抗干扰,更适合高精度的测量。我们所要设计的仪器结构简单.容易

  热敏电阻、热电偶、模拟硅温度传感器和镍/铂电阻式温度检测器(RTD),有必要进行校准以达到所需的温度精度。作为混合信号器件的数字温度传感器则不有必要进行校准,它们具有集成数字逻辑,工作时候的温度范围为-55℃到50℃,采用绝对温度比例(PTAT)电路,通过检验测试二极管的基极-发射极电压(VBE)的变化来测量本地/远程温度。它具有简单的集成硬件来保存温度值并对温度设定点、器件工作模式、睡眠模式以及快/慢转换速率进行编程设定。数据通过IC间总线C总线)、系统管理总线(SMBus)或串行外围接口(SPI)来通信。实际上,每个器件在生产时均会做调整,温度检测精度达到±0.5℃以内或者更高,性价比和可靠性均很高。这些优点使得数字温度传感器在几乎任

  DS18B20温度传感器采用“单总线”串行传输方式 目前单片机数据传输的串行总线主要由Inter IC Bus, SPI和SCI。其中IIC总线以同步串行二线方式来进行通信(一条数据线、一条时钟线),SPI总线则是以同步串行三线方式来进行通信(一条时钟线,一条数据输入线,一条数据输出线),而SCI总线是以异步方式来进行通信(一条输入线采用单条信号线,既可以传输时钟又可以传输数据,而且数据是双向传输,因而这种总线技术具有线路简单,硬件开销少、陈本低廉,便于总线扩展等优点。单总线适用于单主机系统,能够控制一个或者多个从机设备。 设备(主机或者从机)通过一个漏极开路或三态端口连接至数据线,以允许设备在不发送数据时

  摘要:介绍单线的特性及工作原理,给出了DS1820与89C51单片机接口的应用实例,以及由DS1820组成温度检测系统的方法,并给出了对DS1820进行各种操作的软件流程图。     关键词: 单线-Wire) 时隙 A/D变换         美国DALLAS公司生产的单线,可把温度信号直接转换成串行数字信号供微机处理。由于每片DS1820含有唯一的硅串行数所以在一条总线的信息,仅需要一根口线(单线接口)。读写及温度变换功率来源于数据总线,总线本身也可以向所挂接的DS1820供电

  /* tanqi TFT*/ #include stm32f10x_lib.h #include tft.h #include DS18B20.h extern u8 presence; /************************************************************** 系统时钟初始化 ****************************************************************/ void RCC_Configuration(void) { ErrorStatus HSEStartUpStat

  介绍了一种新型的补偿式温度巡检电路,该电路通过巧妙的设计克服了传统三线制检测的新方法中测量导线对测量结果的影响,提高了温度检测精度。同时该电路通过分组共享的方式完成对多路温度信号的巡检,降低了温度巡检电路的复杂度和成本。试验数据验证了该检测电路的精确性和实用性。 1引言 温度的检测是通过检验测试温度传感器的电阻值并对阻值与温度曲线关系进行换算来实现的。为降低温度巡检电路测量复杂度,工程中常采用三线制测量办法来进行温度测量。测量电路示意图如图1所示。 Rx1~RxN分别为温度传感器1~N的电阻值。以Rx1测量为例,设连接温度传感器1的三根导线的测量

  根据温度传感器的使用方式,通常分为接触式和非接触式两类。 一、热电偶、热电阻接触式 由热平衡原理可知,两个物体接触后,经过足够长的时间达到热平衡,则他们的温度必然相等。如果其中之一是温度计(热电偶或热电阻),就可以用他对另外一个物体进行温度测量,这种测温方式就叫接触式测温。他的特点是,温度计要与被测物体有良好的热接触,使两者达到平衡。应此,测稳精确度非常高。用接触式测温时,感温元件要与被测物体有良好的接触,往往会破坏被测物体的热平衡状态,并受被测物体同化,使其温度一样。应此,对感温元件的结构、性能要求比较高。 二、热电偶、热电阻非接触式 利用物体的热辐射能随气温变化的原理测定物体温度。这样的测温方式叫做非接触式

  引 言 在石油的开采过程中,井下温度的测量是必不可少的测量参数,准确的井下温度测量对于地质资料解释和油井监测等都具备极其重大的作用。尤其在重质油热采工艺中,需要监测井下温度场变动情况。在传统的测量井温过程中,使用了红外测温仪、红外热成像仪、温度传感器阵列等,但由于井下恶劣环境将对测试仪器产生很大的影响,易引起测试误差,且对于温度场的测量有很多不足。而现代的分布式光纤温度传感器具有测量点多,精度高,轻巧且能承受井下恶劣环境等优点,能获取整个光纤分布区域的温度场信息。目前分布式光纤温度传感器已实现井下温度场等参数的测量,在重质油热采过程中温度场的测量具有广阔的应用前景。 1 分布式光纤温度传感器原理 1.1 分布式测量的原理 分布

  实现井温测量系统的设计 /

  Python编程无师自通 专业程序员的养成 ([美]科里·奥尔索夫(Cory Althoff))

  解锁【W5500-EVB-Pico】,探秘以太网底层,得捷电子Follow me第4期来袭!

  参赛冲击【万元大奖】啦|2023 DigiKey“智造万物,快乐不停”创意大赛

  【下载】LAT1317 STM32CubeProgrammer和STM32CubeIDE协同调试的方法

  【下载】LAT1334 基于MCSDK5.4.8电机库修改两电阻采样方法

  【直播】轻松使用STM32MP13x如MCU般在Cortex A 核上裸跑应用程序

  【新品】STM32H5-Arm® Cortex®-M33 内核,主频高达250MHz,提升性能与信息安全性

  【新品】STM32MP13X-支持Linux、RTOS和Bare Metal应用,新一代通用工业级MPU

  【新品】Arm® Cortex®-M33处理器内核,运行频率160 MHz,基于Armv8-M架构并带有TrustZone®

  【Matter】康普和意法半导体强强联手,让物联网设备Matter证书管理既安全又简便

  【方案】STM32WLE5 x 利尔达LoRa模组助力亚残会开幕式惊艳秀

  【新品】意法半导体发布远距离无线微控制器,提高智能计量、智能建筑和工业监控的连接能效

  2023年12月20日,中国 - 意法半导体新软件帮助工程师把STM32微控制器应用代码移植到性能更强大的STM32MP1微处理器上,将嵌入式系统模块设计性 ...

  瑞萨推出面向图形显示应用和语音/视觉多模态AI应用的 全新RA8 MCU产品群

  瑞萨基于Arm® Cortex®-M85处理器的产品在优化图形显示功能的同时,为楼宇自动化、智能家居、消费及医疗应用带来超高性能和领先的安全性2 ...

  Microchip推出PIC18-Q24 系列单片机 为增强代码安全性设置新标准

  该系列单片机新增电压电平转换功能,有助于提高灵活性并降低系统成本从手机、汽车到智能恒温器和家用电器,慢慢的变多日常设备与云端相连。随 ...

  今天就分享一个读者问到的关于中断处理的问题。 很多人都知道STM32CubeMX这套工具的一个目的:减少开发者对STM32底层驱动的开发时间,把重 ...

  在万利STM32学习板的USB摇杆例程中,摇杆的按键处理并没有消抖处理,因此重新修改了摇杆的驱动,顺便还增加了两个按键以及摇杆中键下压的驱 ...

  STM32F103+ESP8266接入机智云 实现小型IOT智能家居项目

  stm32mp1 Cortex M4开发篇2:通过GPIO点亮LED灯详解

  站点相关:综合资讯51单片机PIC单片机AVR单片机ARM单片机嵌入式系统汽车电子

  数据处理视频教程电子百科其他技术STM32MSP430单片机资源下载单片机习题与教程词云:北京市海淀区中关村大街18号B座15层1530室电线

扫一扫,加微信

版权所有 © 火狐电竞(中国)官方网站IOS/安卓通用版/手机APP(www.signaljammerblockers.com)
备案号:沪ICP备05031232号-66 技术支持: Sitemap.xml