From 8366e290e34c2b2842de5a27de7d6d7dabe7e680 Mon Sep 17 00:00:00 2001 From: florisdebeast Date: Sun, 29 Jun 2025 01:39:04 +0200 Subject: [PATCH] voeg threading toe om meerdere dingen tegelijk te kunnen doen --- dht11.py | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/dht11.py b/dht11.py index dc0ec85..a549b16 100644 --- a/dht11.py +++ b/dht11.py @@ -3,6 +3,7 @@ import adafruit_dht import board import RPi.GPIO as GPIO import http.server +import threading sensor = adafruit_dht.DHT11(board.D6) LED_PIN = 21 @@ -12,20 +13,26 @@ GPIO.setmode(GPIO.BCM) GPIO.setup(LED_PIN, GPIO.OUT) GPIO.setup(FAN_PIN, GPIO.OUT) -while True: - try: - temperatuur_C = sensor.temperature - temperatuur_F = temperatuur_C * (9/5) + 32 - humidity = sensor.humidity - except RuntimeError as err: - print(err.args[0]) - if temperatuur_C > 20: - GPIO.output(LED_PIN, GPIO.HIGH) - GPIO.output(FAN_PIN, GPIO.HIGH) - else: - GPIO.output(LED_PIN, GPIO.LOW) - GPIO.output(FAN_PIN, GPIO.LOW) +def check_data(): + while True: + try: + temperatuur_C = sensor.temperature + temperatuur_F = temperatuur_C * (9/5) + 32 + humidity = sensor.humidity + except RuntimeError as err: + print(err.args[0]) + if temperatuur_C > 20: + GPIO.output(LED_PIN, GPIO.HIGH) + GPIO.output(FAN_PIN, GPIO.HIGH) + else: + GPIO.output(LED_PIN, GPIO.LOW) + GPIO.output(FAN_PIN, GPIO.LOW) + +def web_server(): web_binding = ('', 8000) server = http.server.HTTPServer(web_binding) print ("server draait") server.serve_forever() + +threading.Thread(target=web_server, daemon=True).start() +threading.Thread(target=check_data, daemon=True).start()