User manual

5.1.1 Így működik
A program első sorait az UTF-8-kódolás megadásával és a szükséges könyvtárak
importálásával a korábbi kísérletekből már ismerjük. Kiegészítésül itt még a
random könyvtár
importálása történik meg egy véletlenszerű villogási minta előállításához.
Ennek a programnak a fejlesztésekor arra helyezték a hangsúlyt, hogy lehetőleg sokoldalúan
legyen használható, azaz gond nélkül ki lehessen bővíteni négynél több LED-re. A jó
programozási stílushoz ma már hozzátartozik az ilyen rugalmasság. A Raspberry Pi példáján az
így programozott programok nem csak új GPIO-portokkal bővíthetők, hanem könnyen át is
írhatók más GPIO-portokra, ha erre hardvertechnikailag szükség van.
LED = [4,18,23,24] A LED-ek számára ismét egy lista készül GPIO-számokkal, hogy ezek a
portok csak egy helyen kerüljenek be a programba.
Ahelyett, hogy a LED-ek GPIO-portjait a korábbi programoknak megfelelően egyenként
inicializálnánk, ezúttal egy
for-hurok fut a LEDlistával. Az i hurokszámláló egyenként kiveszi az
egyes értékeket a listából, példánkban a LED-ek GPIO-portszámait, és nem növeli csak úgy
egyesével a számokat, mint az eleddig alkalmazott
for-hurkokban. Ezzel a módszerrel
tetszőleges hosszúságú listák dolgozhatók fel. A lista hosszúságát a program fejlesztésekor
még csak nem is kell ismerni.
A LED-ek négy GPIO-portját kimenetként határozzuk meg, és értéküket 0 -ra állítjuk, hogy
lekapcsolódjanak a korábbi kísérletek után égve maradt LED-ek.
z = len(LED); w = 5; t = 0.2
for
j
in
range(z):
GPIO.output(LED[j], False)
time.sleep(t)
elif
e
==
"5":
for
i
in
range(w*z):
j
=
random.randint(0,z-1)
GPIO.output(LED[j], True); time.sleep(t)
GPIO.output(LED[j], False)
else:
print ("Unltige Eingabe")
("Érvénytelen beadás")
except KeyboardInterrupt:
GPIO.cleanup()
for
i
in
LED:
GPIO.setup(i,
GPIO.OUT,
initial=0)
49