User manual
40
Pri razvoju programa smo pazili na to, da je karseda vsestransko uporaben, torej da ga je
možno enostavno nadgraditi na več kot štiri LED. K dobremu slogu programiranja danes sodi
takšna fleksibilnost. Na primeru računalnika Raspberry Pi je možno na ta način programirane
programe ne samo nadgraditi z novimi GPIO-vrati, temveč jih je možno enostavno predelati
na druga GPIO-vrata, če je to potrebno zaradi tehnike strojne opreme.
LED = [4,18,23,24]
Za LED se ponovno definira seznam s številkami GPIO-vrat, tako da je treba ta vrata fiksno
vnesti samo na enem mestu v programu.
for i in LED:
GPIO.setup(i, GPIO.OUT, initial=0)
Namesto posamezne inicializacije GPIO-vrat LED, tako kot je to potekalo v prejšnjih
programih, tokrat čez seznam LED teče zanka for. Zančni števec i zaporedoma prevzema
posamezne vrednosti iz seznama, v našem primeru so to številke GPIO-vrat LED, in več
preprosto ne prišteva vrednosti, tako kot v zankah for, ki smo jih uporabljali doslej. Na ta
način je možna obdelava poljubno dolgih seznamov. Ni nujno, da je dolžina seznama pri
razvoju programa znana.
Štiri GPIO-vrata za LED se definirajo kot izhodi in ponastavijo na 0, da se izklopijo vse LED,
ki morda svetijo iz prejšnjih preizkusov.
z = len(LED); w = 5; t = 0.2
Da program ohrani svojo splošno veljavnost in ga je možno enostavno spreminjati, bomo
sedaj definirali še tri spremenljivke:
z
Število
LED
Število LED se s pomočjo funkcije len() samodejno prevzame iz seznama
LED.
w
Ponovitve
Vsak vzorec se v standardnih nastavitvah petkrat ponovi, da ga je možno
bolje prepoznati. To število lahko poljubno spreminjate in nato velja za vse
vzorce.
t
Čas
Ta spremenljivka navaja, kako dolgo je LED pri utripanju vklopljena. Premor,
ki temu sledi, traja enako dolgo. Ime t se je v skoraj vseh programskih
jezikih uveljavilo za spremenljivke, ki shranjujejo časovne intervale v
programih.
Vrednosti, ki so določene kot spremenljivke, so samo na tem mestu fiksno vnesene v
programu, tako da jih je možno enostavno spremeniti. Po teh definicijah se zažene dejanski
program.
print ("Svetlobni učinki na izbiro");
print ("1 – ciklična tekoča luč")
print ("2 – tekoča luč naprej in nazaj");
print ("3 – naraščajoča in padajoča")
print ("4 – vse utripajo hkrati");
print ("5 – vse utripajo naključno");
print ("Ctrl+C zaključi program")
Te vrstice uporabniku nudijo navodila na zaslonu glede tega, s katero številsko tipko je
prikazan kateri vzorec.