RISC-V技术论坛
直播中

华仔stm32

4年用户 3157经验值
擅长:嵌入式技术
私信 关注
[经验]

【DFRobot Beetle ESP32-C3开发板试用体验】OLED温度计

【目的】利用python库驱动18B20温度计,快速实现一个测温系统
【步聚】
1、硬件准备:DS18B20接线:
ESP32C3                         DS18B20
VCC                                    VCC
GND                                  GND
GPIO0                               DATA
2、在上篇帖子(https://bbs.elecfans.com/jishu_2284098_1_1.html)的基础上增加代码:
  1. from machine import Pin,I2C
  2. import ssd1306
  3. import onewire
  4. import ds18x20

  5. import time

  6. ow = onewire.OneWire(Pin(0))   #Init wire
  7. ow.scan()
  8. ds=ds18x20.DS18X20(ow)          #create ds18x20 object
3、开启温度转换然后把温度展示在OLED屏上:
  1. while True:
  2.   roms=ds.scan()                #scan ds18x20
  3.   ds.convert_temp()             #convert temperature
  4.   for rom in roms:
  5.     print(ds.read_temp(rom))    #display
  6.     temp = ds.read_temp(rom)
  7.     hight = int(temp)
  8.     low = int((temp-hight)*10)
  9.     str_temp = str(hight) +"." + str(low)  + " C"
  10.     print(str_temp)
  11.     lcd.fill(0)
  12.     lcd.text("DS18X20",10,20)
  13.     lcd.text(str_temp,10,40)
  14.     lcd.show()
  15.   time.sleep(0.5)
4、下载程序,OK!一个字,python就是代码简洁,速度超快:
python18B20.png
5、展示一下图片(备注:这个Python的库只能显示8*8的字符,没空移植其他的字库)看起来有点小。。但是效果出来了!
温度计.jpg
【总结】ESP32支持python编程,开发速度快,值得大家入手!

温度计

更多回帖

发帖
×
20
完善资料,
赚取积分