1

RPi: Karaşimsek (Sıralı Led Dizisi)

Şuraya karaşimşek uygulaması resmi de çizelim…Hmm, tamamdır. Karaşimşek uygulamasını yaparken en çok dikkat ettiğim noktalardan biri ne kadar mükemmel algoritma olmasıdır. Komik olan birinci ledi yak, söndür; ikinciye geç şeklinde olan algoritmalardan kaçınmalısınız. İşin bel kemiği algoritma mantığıdır, yazılım dünyasında. Bir programcı gibi düşünüp ona göre davranmalısınız. Bakalım benim karaşimşek algoritmam nasılmış? Farklı algoritmalarınız varsa paylaşın ki ibret alalım bizde.

Şöyle bir şey karaladım ben…

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)
GPIO.setwarnings(False)

# Pin tanimlamalari
GPIO.setup(11, GPIO.OUT)
GPIO.setup(12, GPIO.OUT)
GPIO.setup(13, GPIO.OUT)
GPIO.setup(15, GPIO.OUT)

# Led pinlerimizi iceren LED dizisi tanımı
#           1.   2.  3.  4.  led pinleri
ledDizisi = [11, 13, 15, 12]

# Kac LED oldugunun ciktisi
print (len(ledDizisi), "LED bagli olmali...")
print ("Cikis icin CTRL + C yapin")
try:
    while True:
        for i in range(0, len(ledDizisi) -1, +1):
            print (i +1, ". led yandi")
            GPIO.output(ledDizisi[i], GPIO.HIGH)
            time.sleep(0.5)
            GPIO.output(ledDizisi[i], GPIO.LOW)
            
                        
        for j in range(len(ledDizisi) -1, 0, -1):
            print (j +1, ". led yandi")
            GPIO.output(ledDizisi[j], GPIO.HIGH)
            time.sleep(0.5)    
            GPIO.output(ledDizisi[j], GPIO.LOW)
                  

except KeyboardInterrupt:
    GPIO.cleanup()
    print ("Cikis ve GPIO temizligi yapildi")
Bu yazı size yardımcı oldu mu?
Daha iyi bir deneyim için bana yardımcı olun.
Evet
Hayır
Powered by Devhats

Hakan Kaya

Yarı zamanlı mühendis. Yarı zamanlı eğitmen. Biraz da film sever.

One Comment

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir