uPyCraft中的Examples Measure ds18b20Demo.py 4.2.1
# DS18B20测量温度
## 准备
### 硬件:
- FireBeetle-ESP32 × 1
- DS18B20数字温度传感器 ([点击查看](https://wiki.dfrobot.com.cn/_SKU_DFR0024_DS18B20%E6%95%B0%E5%AD%97%E6%B8%A9%E5%BA%A6%E4%BC%A0%E6%84%9F%E5%99%A8_V2)模块详情)
[点击购买](https://www.dfrobot.com.cn/goods-71.html)
### 软件:
- uPyCraft IDE
### 代码位置:
- File → Examples → Measure → ds18b20Demo.py
- 引用模块:uPy_lib → ds18x20.py
## 实验步骤
1. 硬件连接如下图
2. 下载运行 ds18b20Demo.py 文件,具体代码如下
```
#硬件平台:FireBeetle-ESP32
#实验效果:这个实验用来测量环境温度。
#硬件连接:本实验需要在IO25外接一个'DS18B20'数字温度传感器。
#下面的信息显示,对于当前版本,ds18b20Demo是可用的。
# IO0IO2IO4IO5IO9IO10 IO12~19
# IO21 IO22 IO23 IO25 IO26 IO27
from machine import Pin
import onewire
import ds18x20
import time
ow = onewire.OneWire(Pin(25)) #创建单总线对象
ds = ds18x20.DS18X20(ow) #创建ds18b20对象
while True:
roms=ds.scan() #扫描ds18b20地址
ds.convert_temp() #温度转换
for rom in roms:
print(ds.read_temp(rom)) #温度显示
time.sleep(1)
```
## 实验效果
## ds18x20.py库API说明
### 类 — DS18X20
- class DS18X20(object)
### 类函数
- read_temp(rom=None) 函数功能:读取指定ds18x20设备的温度。
- read_temps() 函数功能:读取所有设备的温度。
- convert_temp() 函数功能:将原始数据转换成温度。 不错
页:
[1]