Alışverişlerinizi Robotistan’dan Yapın

Faydalı içerikler oluşturarak size yardımcı olmak istiyoruz. Aynı zamanda uygun fiyat, hızlı teslimat ve kaliteli hizmetle Robotistan.com’da hizmet veriyoruz. Siz de alışverişlerinizi robotistan.com‘dan yaparak bize yardımcı olabilirsiniz 🙂

Raspberry Pi 3 İle LED Yakmak – GPIO Pinlerinin Kullanımı #5

Bu içerik 11 Ocak 2017 Tarihinde Raspberry Pi 3 Uyumlu Olacak Şekilde Güncellenmiştir. Güncellenen kısımları daha kolay şekilde görebilmeniz için farklı renkte (lacivert) yazdık. Güncelliğini yitiren kısımların ise üzerini çizdik. Keyifle oku, bol bol üret!

 

Raspberry Pi Dersleri serimizde kullanacağımız malzemelerin tamamına sizler için hazırladığımız setler ile kolayca sahip olabilirsiniz. Raspberry Pi’ye Uzaktan Bağlantı Yöntemleri (VNC,SSH,TTL) #4 dersimize kadar olan malzemeler için Kombo Kit, Raspberry Pi 3 Röle Kartı İle Alarm Devresi Yapımı #11 dersimize kadar olan malzemeler için Süper Başlangıç Seti, tüm derslerdeki malzemeler için Proje Seti tercih edebilirsiniz.

 

Merhaba arkadaşlar. Bu yazımızda Raspbery Pi’mizin GPIO pinlerini kullanmayı öğreneceğiz.

 

 

Gereken malzemeler:

 

 

Projedeki Malzemeler Bu Sette. Şimdi İncele >

 

Raspberry Pi’deki GPIO konektöründe farklı işlevlere sahip pinler bulunmaktadır:

 

  • Genel amaçlı giriş/çıkış için kullanabileceğimiz GPIO pinleri
  • I2C haberleşme portu (GPIO02 ve GPIO03 pinleri)
  • SPI haberleşme portu (GPIO10, GIPO09 ve GPIO11 pinleri)
  • UART seri haberleşme portu (GPIO14 ve GPIO15 pinleri)

 

Bu pinlerin yerlerini görebilmemiz için şu şekilde bir diyagram mevcuttur:

 

Raspberry Pi GPIO Header

 

Raspberry Pi’mizin tüm haberleşme yeteneklerini kullanabilmemiz için raspi-config programını kullanarak I2C, SPI ve Device Tree özelliklerini aktifleştirmemiz gereklidir. Bu özellikleri açmak için 1 numaralı dersimize bakabilirsiniz.

 

GPIO pinlerini kullanabilmemiz için python-dev ve python-rpi.gpio isimli paketlerin sistemde kurulu olması gereklidir. Raspbian’ın güncel sürümlerinde gerekli tüm paketler yüklü gelmektedir.

 

sudo apt-get updatesudo apt-get install python-dev python-rpi.gpio

 

Komutları ile paketleri sisteme yüklüyoruz. Yükleme işlemi bitince boş bir dosya açıp, aşağıdaki kodu kaydettikten sonra dosyayı blink.py ismiyle kaydediyoruz.

 

import RPi.GPIO as GPIOimport time# blinking functiondef blink(pin): GPIO.output(pin,GPIO.HIGH) time.sleep(1) GPIO.output(pin,GPIO.LOW) time.sleep(1) return# to use Raspberry Pi board pin numbersGPIO.setmode(GPIO.BOARD)# set up GPIO output channelGPIO.setup(11, GPIO.OUT)# blink GPIO17 50 timesfor i in range(0,50): blink(11)GPIO.cleanup()

 

Kodların satır satır detaylı açıklaması için aşağıdaki videoyu izleyebilirsiniz:

 

 

Kaydettiğimiz kodu

 

sudo python blink.py

 

Komutuyla çalıştırıyoruz. Raspbian’ın güncel sürümünde Python komutlarından önce sudo yazmamıza gerek yoktur.

 

Devre şemamız:

 

 

Burada dikkat etmemiz gereken nokta, GPIO17 isimli pinin, 11 numaralı pinde olmasıdır. 17 numaralı pin ile (3.3V) karıştırmamamız gerekir.

 

Paylaş

Yorumları Görüntüle

  • Merhaba,
    Baska bir cihaz var. Bunun bir tusunun kablosunu uzattim. Gpoi ile bu tusa basmak istiyorum. Ayni mantikta m yapmaliyim

    • Anladığım kadarıyla yapmak istediğiniz işlem başka bir cihazın butonunu Raspberry Pi'nin GPIO pinleri ile kontrol etmek. Bu işlem için Raspberry Pi'nin GPIO pinlerine bir röle veya transistör devresi bağlayabilir ve butonunu kontrol edeceğiniz cihazın bağlantısını bu devre üzerinden yapabilirsiniz.

  • merhaba.raspi3 üm var.gpio kontrolu yapmak istiyorum.terminal üzerinden python kodlari ile pini aciyorum fakat voltaj gelmiyor.elimde multimetre olmadigi icin bende webgpio yukledim.python kodunu yazip enterladiktandan donra durum degisiyor webgpioda yani kod calisiyor sorun yok algiliyor sistem onu fakat voltaj gelmiyor.pin durumu açikken kucuk motorun bir icini + pine digerini topraga deydirdigim an lojik 1 den, lojik 0 oluyor webgpioda.surekli gelen +3 ve +5 volt pinlerinde sikinti yok denemek icin direk bagladim calisiyor yabanci forumlara gruplara heryere sordum cozum bulamadim sizcr tekniki bir arizami?nasil cozebilirim?

    • Eğer fiziksel bir arıza olsaydı webgpio ile de çalışmazdı. Sizin yaşadığınız sorun yazılımsal kaynaklı görünüyor. Yazdığınız kod ile ilgili bir sorun olabilir veya kullanıcı yetkilerinizden kaynaklı olabilir. Ayrıca ne kadar küçük boyutlu olursa olsun, herhangi bir motoru doğrudan GPIO pinlerine bağlamak kartınıza hasar verebilir.

  • Öncelikle emeğiniz ve çalışmalarınız için teşekkür ederim elinize sağlık.Sorum şu ; Raspberry pi 3 de tam 26 tane GPIO pini bulunmakta , bunların tamamı digital I/O olarak kullanılabilir mi? Cevabınız için şimdiden teşekkürler

    • Merhabalar. Raspberry Pi'de yer alan GPIO pinleri, bahsettiğiniz gibi I/O olarak kullanılabilmektedir. Fakat I2C, SPI ve UART gibi haberleşmeye ayrılmış özel pinler bulunmaktadır. Bu haberleşme pinlerinin yerleri malesef değiştirilemez.

      • Yani bu bahsettiğiniz I2C , SPI ve UART yazan pinler Digital I/O olarak kullanılamaz. Doğru mudur?

        • Örnekle anlatmak gerekirse, bir röleyi GPIO14 (UART TX) pinine de bağlayabilir, GPIO23 pinine de bağlayabilirsiniz. Fakat UART TX pininin yeri değiştirilemez.

  • boş bir dosya açılır deniyor. bu işlem raspberry pi 3 ve python 3 de nasıl yapılıyor. ayrıntıya girmemişsiniz.

  • Merhabalar.GPIO pinlerine bağlayacağımız bir butonun klavyedeki enter tuşu işlevini görmesi mümkün müdür?

  • iyi çalışmalar. bir kaç sorum olacak. raspbery gpıo pinleri ile yapmak istediğim bir konu var. yardım edermisiniz. bir manina anakartından gelen 24 volt enerjiyi 5 volta düşürerek pinlerden birine girmek ve bu sinyali raspberry aldığı zaman ekrana bir görüntü gelmesini, enerji kesildiği an ise bir ses çalıp sesin bitiminde stabil konuma gelmesini istiyorum. bir kaç ayrı makina var, ve hangi makinadan voltaj gelir ise voltaj kesilene kadar makinanın resmini. voltaj kesildiği anda makinanın ismini sesli söyleyip durmasını, herhangi bir makinadan voltaj gelene kadar başka bir işlem yapmasına gerek yok.

  • Merhaba,
    Verdiğiniz bilgiler için teşekkür edim.
    Rappberry ile daha önce yazdığımız bir programı 60 dk araklıklarla çalıştırmak istiyorum. Bunun için ne yapmam gerekiyor?

    • Merhabalar. Linux işletim sistemlerinde

      watch -n sure programadi

      komutu ile istediğiniz sürede (saniye cinsinden) programlarınızı tekrar çalıştırmanız mümkündür.

En Son İçerik

  • Genel
  • Raspberry Pi

Raspberry Pi 4 Model B Tanıtıldı – Özellikleri Neler Farklı?

https://youtu.be/LSHLeKOxv0Y Raspberry Pi severlere müjde: Raspberry Pi 4 Model B tanıtıldı ! Mini bilgisayar olarak kullanılan ve farklı versiyonları ile…

2 hafta Önce
  • Arduino
  • Arduino Programlama ve Dersler

Arduino ile RFID Kart Okuyucu (RC522) Modül Kullanarak Kapı Kilidi Yapımı

< 19. Derse Dön Herkese merhabalar. Eve kim ne zaman girmiş çıkmış, bilmek istemez misiniz? Öyleyse bu proje size göre…

2 hafta Önce
  • Arduino
  • Arduino C# Projeleri ve Uygulamaları

Arduino ve C# ile Mesafe Ölçer – 4. Ders

Sonraki Ders > < Önceki Ders Arkadaşlar merhaba, bu dersimizde HC-SR04 sensörü ile ölçtüğümüz mesafeyi seri haberleşme yardımıyla anlık olarak…

3 hafta Önce
  • Arduino
  • Arduino Programlama ve Dersler
  • Arduino Projeleri
  • Genel

Arduino İle MQ Gaz Sensörlerinin Kullanımı – Yanıcı Gaz Alarmı

20. Derse Geç > < 18. Derse Dön Arkadaşlar herkese selamlar ! Daha önce hiç gaz sensörü kullandınız mı? Bu…

1 ay Önce
  • Arduino
  • Arduino Programlama ve Dersler
  • Arduino Projeleri
  • Genel

Arduino İle Yağmur Sensörü Kullanarak Yağmur Alarmı Yapalım

19. Derse Geç > < 17. Derse Dön Herkese selamlar ! Bu yazımızda ise yağmur sensörü kullanarak Arduino ile Yağmur…

1 ay Önce
  • Arduino
  • Arduino C# Projeleri ve Uygulamaları

Arduino ve C# Haberleşmesi ile RGB Led Kontrolü – 3. Ders

Sonraki Ders > < Önceki Ders Arkadaşlar merhaba, Arduino ve C# haberleşmesi serisinin 3. yazısında RGB led kontrolü yapabileceğimiz bir…

2 ay Önce