การใช้งาน DHT22, ต่อกับจอ OLED, ESP8266v3
ภาพแสดงผลออกจอ OLED ค่าอุณหภูมิ, ความชื้น
การต่อสายภาพโดยรวม
การเขียนโค๊ดและการกำหนดค่า
from machine import Pin, I2C
import time
import ssd1306 # ให้โหลดไลบราลี่ OLED github-micropython-drivers-display
import dht
width = 128
height = 64
i2c = I2C(scl=Pin(5), sda=Pin(4))
oled = ssd1306.SSD1306_I2C(width, height, i2c)
oled.text('TEMP: ', 60, 20)
oled.line(60, 40, 125, 40, 1)
oled.text('HUMI: ', 60, 50)
oled.show()
d = dht.DHT22(Pin(16)) # กำหนดpin 16 ที่ต่อกับ DHT22
#d.measure() # คำนวนค่าอุหภูมิและความชื้น
#d.temperature() # อ่านค่าอุณหภูมิ( ํC)
#d.humidity() # อ่านค่าความชื้น
while True:
try:
oled.fill(0)# clear oled
d.measure()
temp = d.temperature()
humi = d.humidity()
oled.text('TEMP-HUMI _4Qch',5, 5, 1)
Temp = str('TEMP: {temp}')+'C'# แปลงค่าให้เป็นสตริงก่อนนำมาแสดงผล
Humi = str('HUMI: {humi}')+'%'# humi
#print('TEMP', temp, 'C',end=' : ')#แสดงค่าอุณหภูมิ
#print('HUMI', humi, '%')# แสดงค่าความชื้น
oled.text(Temp.format(temp=temp), 5, 25)
oled.line(0, 40, 100, 40, 1) # เส้นกั้น
oled.text(Humi.format(humi=humi), 5, 50)
oled.show()
time.sleep_ms(1000)
#oled.invert(1)
#time.sleep_ms(5000)
#oled.invert(0)
except OSError as e:
print('Failed to read sensor...')
เพิ่มเติม.... ดู vedios ช่อง 4Qchannelhttps://youtu.be/o4oRIpmKqL8
การลง Firmware
1. Download Firm ware ตามเวอร์ชั่น
esp8266 https://micropython.org/download/esp8266/2. Download Python
pip install esptool
python -m pip install esptoo
Command for Flash Bootloader
----------------------------------------------
Erase
python -m esptool --chip esp8266 --port COM8 erase_flash
Flash Bootloader ขั้นตอนนี้ให้ DIR ไปที่เก็บไฟล์ esp8266-20200911-v1.13.bin
python -m esptool --chip esp8266 --port COM8 --baud 115200 write_flash --flash_size=detect -fm dio 0 esp8266-20200911-v1.13.bin
ไม่มีความคิดเห็น:
แสดงความคิดเห็น