“Arduino实验十一:DS18B20温度传感器实验”的版本间的差异

来自丢石头百科
第1行: 第1行:
== 模块介绍 ==
 
=== 模块说明 ===
 
DS18B20 采用的是单线总线协议方式,即在一条数据线上实现数据的双向传输,而单片机硬件上不支持单总线协议,因此必须采用软件方法来模拟单总线的协议是序来完成对DS18B20 芯片的访问。由于DS18B20 是在一根I/ O 线上读写数据,因此对读写的数据位有严格的时序要求,它有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序: 初始化时序、读时序、写时序。所有时序都是将单片机作为主设备,DS18B20 作为从设备,而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求DS18B20 回送数据,在进行写命令后,主机需启动读时序完成数据接收。
 
 
=== 参数说明 ===
 
*PCB尺寸:2.1cm*1.0cm
 
*分辨率调整范围:9-12位
 
*温度测量范围:-55~+125℃
 
*温度测量精度:0.5℃
 
*工作电压:DC5V
 
*数字信号输出
 
 
 
== 实验说明 ==
 
== 实验说明 ==
 
=== 实验现象 ===
 
=== 实验现象 ===

2023年6月3日 (六) 15:01的版本

实验说明

实验现象

  • 串口打印出检测的温度值。

电路连接

  • Arduino实验十一:DS18B20温度传感器实验 接线1.png

安装库

  • 安装DallasTemperature
    • 工具->管理库,搜索DallasTemperature,点击安装
    • Arduino实验十一:DS18B20温度传感器实验 安装库1.png
  • 安装OneWire
    • 工具->管理库,搜索OneWire,点击安装
    • Arduino实验十一:DS18B20温度传感器实验 安装库2.png

主要程序

 Serial.print(" Requesting temperatures...");
  sensors.requestTemperatures();
  Serial.println("DONE");

  Serial.print("Temperature for Device 1 is: ");
  Serial.print(sensors.getTempCByIndex(0));  
  
  delay(500);

相关下载