4 LED´s sollen Flackern. Klappt bisher nur mit einer.
Verfasst: Dienstag 18. Dezember 2018, 18:16
Hallo zusammen, ich bin der Christian und neu im Forum.
Ich hoffe es hat vielleicht mal einer kurz Zeit für mich.
Ich bin ehrlich, ich habe mein PI erst seit 2 Tagen, und versuche mich mit dem Einstieg in Python.
Ich habe mein erstes kleines Projekt begonnen:
Aufgabe:
Teil1:
4 LED´s sollen Flackern (Kerze), mit Einer klappt es soweit, aber wie kann ich es so schreiben das alle 4 das gleiche tun?
Weiter unten im 2ten Teil, wird es noch ein bisschen spezieller, da soll von 4 LED´s immer eine LED zufällig flackern (Teil1) für 4 Sekunden und nicht ausgehen. Also quasi Teil1 und Teil2 kompieniert.
GIOP der LED´s sind 17,18,22,27
Vielen Dank
Teil1:
# fackernde Kerze:
import RPi.GPIO as GPIO
import time
from random import randrange
GPIO.setmode(GPIO.BCM)
LED = 18
GPIO.setup(LED, GPIO.OUT)
# PWM einschalten
pwm = GPIO.PWM(LED, 200)
pwm.start(100)
time.sleep(5.0)
while True:
pwm.ChangeDutyCycle(randrange(0, 100))
time.sleep(randrange(1, 10) * 0.01)
####################################################################
Teil2:
####################################################################
#von 4 LEDs soll immer eine zufällig flackern
import RPi.GPIO as GPIO
import time # fuer sleep()
import random # fuer random()
# BCM-Bezeichnung der Pins verwenden
GPIO.setmode(GPIO.BCM)
LED = [17,27,22,18] # GPIOs fuer die LEDs
NumLED = len(LED) # Anzahl aktiver LEDs
Repeat = 1 # Muster wird Repeat mal wiederholt
Ontime = 1 # Leuchtdauer der LED
# GPIOs auf Ausgang setzen und LED ausschalten
for i in LED:
GPIO.setup(i, GPIO.OUT, initial=0)
# Zufaellig blinkern
while True:
for i in range(Repeat*NumLED):
j = random.randint(0,NumLED - 1)
GPIO.output(LED[j], True)
time.sleep(Ontime)
GPIO.output(LED[j], False)
Ich hoffe es hat vielleicht mal einer kurz Zeit für mich.
Ich bin ehrlich, ich habe mein PI erst seit 2 Tagen, und versuche mich mit dem Einstieg in Python.
Ich habe mein erstes kleines Projekt begonnen:
Aufgabe:
Teil1:
4 LED´s sollen Flackern (Kerze), mit Einer klappt es soweit, aber wie kann ich es so schreiben das alle 4 das gleiche tun?
Weiter unten im 2ten Teil, wird es noch ein bisschen spezieller, da soll von 4 LED´s immer eine LED zufällig flackern (Teil1) für 4 Sekunden und nicht ausgehen. Also quasi Teil1 und Teil2 kompieniert.
GIOP der LED´s sind 17,18,22,27
Vielen Dank
Teil1:
# fackernde Kerze:
import RPi.GPIO as GPIO
import time
from random import randrange
GPIO.setmode(GPIO.BCM)
LED = 18
GPIO.setup(LED, GPIO.OUT)
# PWM einschalten
pwm = GPIO.PWM(LED, 200)
pwm.start(100)
time.sleep(5.0)
while True:
pwm.ChangeDutyCycle(randrange(0, 100))
time.sleep(randrange(1, 10) * 0.01)
####################################################################
Teil2:
####################################################################
#von 4 LEDs soll immer eine zufällig flackern
import RPi.GPIO as GPIO
import time # fuer sleep()
import random # fuer random()
# BCM-Bezeichnung der Pins verwenden
GPIO.setmode(GPIO.BCM)
LED = [17,27,22,18] # GPIOs fuer die LEDs
NumLED = len(LED) # Anzahl aktiver LEDs
Repeat = 1 # Muster wird Repeat mal wiederholt
Ontime = 1 # Leuchtdauer der LED
# GPIOs auf Ausgang setzen und LED ausschalten
for i in LED:
GPIO.setup(i, GPIO.OUT, initial=0)
# Zufaellig blinkern
while True:
for i in range(Repeat*NumLED):
j = random.randint(0,NumLED - 1)
GPIO.output(LED[j], True)
time.sleep(Ontime)
GPIO.output(LED[j], False)