【更好用的单片机】Stduino学习(三十)DS18B20模块

37种传感器(三十)DS18B20模块+Stduino Nano&UNO

本文转载自:http://www.stduino.com/forum.php?mod=viewthread&tid=57&extra=page%3D1=

关键词:
51、stm32、arduino、stduino单片机、stduino UNO&Nano、DS18B20模块

说明:
1DS18B20是由 DALLAS 半导体公司推出的一种的“单总线”接口的温度传感器。与传统的热敏电阻等测温元件相比,它是一种新型的体积小、适用电压宽、与微处理器接口简单的数字化温度传感器。
在这里插入图片描述

单总线结构具有简洁且经济的特点,可使用户轻松地组建传感器网络,从而为测量系统的构建引入全新概念,测量温度范围为-55到+125℃,精度为±0.5℃。现场温度直接以“单总线”的数字方式传输,大大提高了系统的抗干扰性。它能直接读出被测温度,并且可根据实际要求通过简单的编程实现 9-12 位的数字值读数方式。它工作在 3~5.5V 的电压范围,采用多种封装形式,从而使系统设计灵活、方便,设定分辨率及用户设定的报警温度存储在 EEPROM 中,掉电后依然保存。
DS18B20的操作步骤如下:
1.初始化单总线对象;
2.搜索单总线上的仆从设备,并返回其ROM地址;
3.对ROM地址进行处理,包括CRC校验、判断芯片类型,无误后进行下一步;
4. 读取温度,具体过程包括:
4.1 复位,向DS18B20 发温度转换命令(0X44 )
4.2 重置,发读取存储命令(0XBE )
4.3 对连续校正的两个字节数据进行转换。
5. 将温度通过串口打印

具体寄存器说明,功能指令以及 ROM 指令参考DS18B20 数字温度传感器
http://wiki.stduino.com:8181/docs/help/help-1c8t0fj4iqcb6)。

实验目的:
在本例中,我们将利用 DS18B20模块测定温度。

器材:
Stduino UNO / Nano;、杜邦线、数字温度传感器(DS18B20 )模块

电路连接:
在这里插入图片描述
代码展示:

#include <OneWire.h>


OneWire  ds(10);  // 选择I/O,实例化对象

void setup(void) {
   
  Serial.begin(9600);
}

void loop(void) {
   
  byte i;
  byte present = 0;
  byte data[12];
  byte addr[8];
  float celsius, fahrenheit;

  if ( !ds.
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值