Raspberry Pi, elektronik mühendisleri ve hobiler için tasarlanmış ARM mimarisi işlemci tabanlı bir karttır. PI, şu anda piyasadaki en güvenilir proje geliştirme platformlarından biridir. Daha yüksek işlemci hızı ve 1 GB RAM ile PI, Görüntü işleme ve Nesnelerin İnterneti gibi birçok yüksek profilli proje için kullanılabilir.
Yüksek profilli projelerden herhangi birini yapmak için, PI'nin temel işlevlerini anlamak gerekir. Bu yüzden buradayız, bu eğitimlerde Raspberry Pi'nin tüm temel işlevlerini ele alacağız. Her eğitim serisinde, PI işlevlerinden birini tartışacağız. Eğitim serisinin sonunda, yüksek profilli projeleri kendi başınıza yapabileceksiniz. Raspberry Pi'ye Başlarken ve Raspberry Pi Yapılandırması için bunları kontrol edin.
Kurulması PI ve kullanıcı arasında iletişim PI yönelik projeler için çok önemlidir. İletişim için, PI kullanıcıdan Girişler almalıdır. PI serisinin bu ikinci eğitiminde, kullanıcıdan GİRİŞLER almak için Raspberry Pi'ye bir düğme Arayüzü yapacağız.
Burada bir GPIO Pinine bir düğme ve Raspberry Pi'nin başka bir GPIO pinine bir LED bağlayacağız. Kullanıcı tarafından butona basıldığında PYTHON'da sürekli ledin yanıp sönmesi için bir program yazacağız. GPIO'yu açıp kapatarak LED yanıp sönecektir.
Programlamaya gitmeden önce, biraz LINUX ve PYHTON hakkında konuşalım.
LINUX:
LINUX, Windows gibi bir İşletim Sistemidir. Windows işletim sisteminin yapabileceği tüm temel işlevleri gerçekleştirir. Aralarındaki temel fark, Linux'un Windows'un olmadığı yerlerde açık kaynaklı yazılım olmasıdır. Temelde anlamı, Windows özgür değilken Linux ücretsizdir. Linux işletim sistemi ücretsiz olarak indirilebilir ve çalıştırılabilir, ancak orijinal Windows işletim sistemini indirmek için parayı ödemeniz gerekir.
Ve aralarındaki bir diğer önemli fark, Linux işletim sisteminin kodda ince ayar yapılarak 'değiştirilebilmesidir', ancak Windows işletim sistemi değiştirilemez, bunu yapmak yasal zorluklara yol açacaktır. Böylece herkes Linux işletim sistemini alabilir ve kendi işletim sistemini oluşturmak için kendi gereksinimine göre değiştirebilir. Ancak bunu Windows'ta yapamayız, Windows işletim sisteminde işletim sistemini düzenlemenizi engellemek için kısıtlamalar vardır.
Burada Linux'tan bahsediyoruz çünkü JESSIE LITE (Raspberry Pi OS), Raspberry Pi Giriş bölümünde kurduğumuz LINUX tabanlı bir işletim sistemi. PI OS, LINUX temel alınarak oluşturulmuştur, bu nedenle LINUX işletim komutları hakkında biraz bilgi sahibi olmamız gerekir. Aşağıdaki eğitimlerde bu Linux komutlarını tartışacağız.
PİTON:
LINUX'tan farklı olarak PYTHON, C, C ++ ve JAVA gibi bir programlama dilidir. Bu diller, uygulamaları geliştirmek için kullanılır. İşletim Sisteminde çalışan programlama dillerini unutmayın. İşletim sistemi olmadan bir programlama dili çalıştıramazsınız. Dolayısıyla, programlama dilleri bağımlıyken işletim sistemi bağımsızdır. PYTHON, C, C ++ ve JAVA'yı hem Linux hem de Windows'ta çalıştırabilirsiniz.
Bu programlama dilleri tarafından geliştirilen uygulamalar oyunlar, tarayıcılar, uygulamalar vb. Olabilir. Proje tasarlamak ve GPIO'ları işlemek için PI'mızda PYTHON programlama dilini kullanacağız.
Daha ileri gitmeden önce PI GPIO hakkında biraz konuşacağız,
GPIO Pinleri:
Yukarıdaki şekilde gösterildiği gibi, PI için 40 çıkış pini vardır. Ancak ikinci şekle baktığınızda, 40 pin çıkışının hepsinin bizim kullanımımıza göre programlanamayacağını görebilirsiniz. Bunlar sadece programlanabilen 26 GPIO pinidir. Bu pinler GPIO2'den GPIO27'ye gider.
Bu 26 GPIO pini ihtiyaca göre programlanabilir. Bu pinlerden bazıları bazı özel işlevleri de yerine getirir, bunu daha sonra tartışacağız. Özel GPIO'yu bir kenara bıraktığımızda, kalan 17 GPIO'muz var (Açık yeşil Cirl).
Bu 17 GPIO pinin her biri maksimum 15mA akım sağlayabilir. Ve tüm GPIO'lardan gelen akımların toplamı 50mA'yı geçemez. Yani bu GPIO pinlerinin her birinden ortalama olarak maksimum 3mA çekebiliriz. Yani ne yaptığınızı bilmediğiniz sürece bu şeylere müdahale etmemelisiniz.
Gerekli Bileşenler:
Burada Raspbian Jessie OS ile Raspberry Pi 2 Model B kullanıyoruz. Tüm temel Donanım ve Yazılım gereksinimleri daha önce tartışılmıştır, ihtiyaç duyduğumuz dışında bunları Raspberry Pi Giriş bölümünde bulabilirsiniz:
- Bağlantı pimleri
- 220Ω veya 1KΩ direnç
- LED
- Buton
- Ekmek Tahtası
Devre Açıklaması:
Devre şemasında gösterildiği gibi, PIN35'e (GPIO19) bir LED ve PIN37'ye (GPIO26) bir düğme bağlayacağız. Daha önce de belirtildiği gibi, bu pinlerden herhangi birinden 15mA'dan fazla çekemeyiz, bu nedenle akımı sınırlamak için LED ile seri olarak 220Ω veya 1KΩ direnç bağlarız.
Çalışma Açıklaması:
Her şey bağlandıktan sonra, programı PYHTON'da yazmak ve çalıştırmak için Raspberry Pi'yi AÇIK hale getirebiliriz. (PYTHON'u nasıl kullanacağınızı öğrenmek için PI BLINKY'ye gidin).
PYHTON programında kullanacağımız birkaç komuttan bahsedeceğiz.
Kütüphaneden GPIO dosyasını içe aktaracağız, aşağıdaki fonksiyon PI'nın GPIO pinlerini programlamamızı sağlar. Ayrıca "GPIO" yu "IO" olarak yeniden adlandırıyoruz, bu nedenle programda GPIO pinlerine başvurmak istediğimizde "IO" kelimesini kullanacağız.
RPi.GPIO'yu IO olarak içe aktar
Bazen kullanmaya çalıştığımız GPIO pinleri başka işlevler yapıyor olabilir. Bu durumda programı çalıştırırken uyarılar alacağız. Aşağıdaki komut PI'ya uyarıları dikkate almamasını ve programa devam etmesini söyler.
IO.setwarnings (False)
PI'nın GPIO pinlerini, kart üzerindeki pin numarasına veya fonksiyon numaralarına göre yönlendirebiliriz. Pin diyagramında, kart üzerindeki 'PIN 37' nin 'GPIO26' olduğunu görebilirsiniz. Yani burada ya buradaki pimi '37' veya '26' ile temsil edeceğimizi söylüyoruz.
IO.setmode (IO.BCM)
GPIO26'yı (veya PIN37) giriş pini olarak ayarlıyoruz. Bu pin ile butona basmayı tespit edeceğiz.
IO. kurulumu (26, IO.IN)
1 iken: sonsuz döngü için kullanılır. Bu komutla, bu döngü içindeki ifadeler sürekli olarak yürütülecektir.
Program yürütüldüğünde, GPIO19'a (PIN35) bağlı LED, düğmeye her basıldığında yanıp söner. LED'i bıraktıktan sonra, tekrar KAPALI durumuna geçecektir.