描述
本文来源电子发烧友社区,作者:华仔stm32, 帖子地址:
https://bbs.elecfans.com/jishu_2284126_1_1.html【目的】利用python库驱动18B20温度计,快速实现一个测温系统【步聚】1、硬件准备:DS18B20接线:ESP32C3 DS18B20VCC VCCGND GNDGPIO0 DATA2、在上篇帖子(https://bbs.elecfans.com/jishu_2284098_1_1.html)的基础上增加代码:
-
from machine import Pin,I2C
-
import ssd1306
-
import onewire
-
import ds18x20
-
-
import time
-
-
ow = onewire.OneWire(Pin(0)) #Init wire
-
ow.scan()
-
ds=ds18x20.DS18X20(ow) #create ds18x20 object
复制代码
3、开启温度转换然后把温度展示在OLED屏上:
-
while True:
-
roms=ds.scan() #scan ds18x20
-
ds.convert_temp() #convert temperature
-
for rom in roms:
-
print(ds.read_temp(rom)) #display
-
temp = ds.read_temp(rom)
-
hight = int(temp)
-
low = int((temp-hight)*10)
-
str_temp = str(hight) +"." + str(low) + " C"
-
print(str_temp)
-
lcd.fill(0)
-
lcd.text("DS18X20",10,20)
-
lcd.text(str_temp,10,40)
-
lcd.show()
-
time.sleep(0.5)
复制代码
4、下载程序,OK!一个字,python就是代码简洁,速度超快:
5、展示一下图片(备注:这个Python的库只能显示8*8的字符,没空移植其他的字库)看起来有点小。。但是效果出来了!
【总结】ESP32支持python编程,开发速度快,值得大家入手!
温度计(开发板体验视频,详见作者原文链接内容)
打开APP阅读更多精彩内容