#6 MEBKİT-Buton İle Led Yakma
Merhabalar, bu yazımızda MEBKİT-Buton İle Led Yakma devresini anlatacağım. MEBKİT, robotik kodlama seti kullanarak buton ile nasıl led yakabiliriz? Bir butonla, iki butonla led kontrolü nasıl yapılır? Mebkit kartı ile led ve buton bağlantısı yaparken nelere dikkat etmeliyiz? Bu soruların cevabını bu yazımızda bulabilirsiniz.
Devre bağlantı şeması, Arduino programı ayrıntılı kod kısmı, mBlock programı blok şeması, devre kurulumu detaylı anlatımı ve devre çalışma videosu şu şekildedir.
MEB-KİT BİR BUTON İLE LED YAKMA:
DEVRE BAĞLANTI ŞEMASI:
DEVRE KURULUMU:
Malzemeler:
MEBKİT Robotik Kodlama Seti
2 adet iki ucu erkek jumper kablo
Jumper kabloların birer uçları Arduino’nun 7 ve 8 numaralı pinlerine bağlanır. 7 numaralı pine bağlı kablonun diğer ucu, MEBKİT üzerinde yer alan Led pinlerinden kırmızı renge ait pine, 8 numaralı kablonun diğer ucu ise, Buton1 bağlantı soketine bağlanır ve devre tamamlanır.
NOT: Devrede LED ve buton için, direnç ve GND bağlantısı kullanmıyoruz. Direnç ve GND bağlantıları kart arkasında yapılmış durumdadır. Bundan dolayı sadece LED ve buton girişleri için bağlantıyı kuruyoruz.
MEBKİT ARDUINO İLE BİR BUTONLA LED YAKMA DEVRESİ
ARDUINO KOD BÖLÜMÜ:
NOT: Kod bölümü içerisinde yer alan ve // işareti ile başlayan satırlar açıklama satırlarıdır. O satırda, kod bloğunun ne anlama geldiği ve nasıl çalıştığı ile ilgili bilgi verir. Arduino // işaretli alanı çalıştırmaz. İsterseniz kod satırından // işaret ile başlayan açıklama satırlarını silebilirsiniz.
// MEBKİT BİR BUTONLA 1 LED YAKMA
// digitalRead komutu ile butona bastığımızda dijital pine HIGH ( 5 volt) , butona basılmadığında LOW (0 volt) gönderilmiş olur.
void setup()
{
pinMode(8, INPUT); // Buton pini tanımlaması
pinMode(7, OUTPUT); // Led pini tanımlaması
}
void loop()
{
if (digitalRead (8) == 1) // 8 rakamı buton pin numarasıdır. 1 yerine HIGH da kullanılabilir.
digitalWrite(7, HIGH);
else
digitalWrite(7, LOW);
}
DEVRENİN ÇALIŞMASI:
Butona bastığımızda 7 numaralı pine, yani LED diyotun bağlı olduğu pine 5 Volt gelecek olup durum High veya 1 olacak; buton basılı değilken pine 0 (sıfır) Volt gelecek olup durum Low veya 0 olacaktır. Biz her butona bastığımızda LED yanacak, butona basmadığımızda ise LED yanmayacaktır.
MEBKİT MBLOCK İLE BİR BUTONLA LED YAKMA DEVRESİ
MBLOCK PROGRAMI BLOK ŞEMASI:
DEVRENİN ÇALIŞMASI:
Blok şemasına göre, butona bastığımızda 7 numaralı pine, yani LED diyotun bağlı olduğu pine 5 Volt gelecek olup durum yüksek olacak; buton basılı değilken pine 0 Volt gelecek olup durum düşük olacaktır. Biz her butona bastığımızda LED yanacak, butona basmadığımızda ise LED yanmayacaktır.
MEB-KİT BİR BUTON İLE İKİ LED YAKMA:
DEVRE BAĞLANTI ŞEMASI:
DEVRE KURULUMU:
Malzemeler:
MEBKİT Robotik Kodlama Seti
3 adet iki ucu erkek jumper kablo
Jumper kabloların birer uçları Arduino’nun 6, 7 ve 8 numaralı pinlerine bağlanır. 6 numaralı pine bağlı kablonun diğer ucu, MEBKİT üzerinde yer alan Led pinlerinden kırmızı renge ait pine, 7 numaralı pine bağlı kablonun diğer ucu, Led pinlerinden yeşil renge ait pine, 8 numaralı kablonun diğer ucu ise, Buton1 bağlantı soketine bağlanır ve devre tamamlanır.
NOT: Devrede LED ve buton için, direnç ve GND bağlantısı kullanmıyoruz. Direnç ve GND bağlantıları kart arkasında yapılmış durumdadır. Bundan dolayı sadece LED ve buton girişleri için bağlantıyı kuruyoruz.
MEBKİT ARDUINO İLE BİR BUTONLA İKİ LED YAKMA DEVRESİ
ARDUINO KOD BÖLÜMÜ:
NOT: Kod bölümü içerisinde yer alan ve // işareti ile başlayan satırlar açıklama satırlarıdır. O satırda, kod bloğunun ne anlama geldiği ve nasıl çalıştığı ile ilgili bilgi verir. Arduino // işaretli alanı çalıştırmaz. İsterseniz kod satırından // işaret ile başlayan açıklama satırlarını silebilirsiniz.
// MEBKİT BİR BUTONLA 2 LED YAKMA
// Butona basmaz iken kırmızı led (kled) yanacak, butona basınca yeşil led (yled) yanacak
// int değişken türü yerine #define kullanabiliriz. Define kullanımı aşağıdaki şekildedir.
#define kled 6
#define yled 7
#define buton 8
void setup()
{
pinMode(buton, INPUT);
pinMode(kled, OUTPUT);
pinMode(yled, OUTPUT);
}
void loop()
{
if (digitalRead(buton) == 1)
{
digitalWrite(kled, LOW);
digitalWrite(yled, HIGH);
}
else
{
digitalWrite(kled, HIGH);
digitalWrite(yled, LOW);
}
}
DEVRENİN ÇALIŞMASI:
Butona basmadığımız zaman kırmızı led yanacak, yeşil led sönük olacaktır. Butona bastığımızda yeşil led yanacak, kırmızı led sönecektir.
MEBKİT MBLOCK İLE BİR BUTONLA İKİ LED YAKMA DEVRESİ
MBLOCK PROGRAMI BLOK ŞEMASI:
DEVRENİN ÇALIŞMASI:
Blok şemasına göre, butona basmadığımız zaman kırmızı led yanacak, yeşil led sönük olacaktır. Butona bastığımızda yeşil led yanacak, kırmızı led sönecektir.
MEB-KİT İKİ BUTON İLE BİR LED YAKMA SÖNDÜRME:
DEVRE BAĞLANTI ŞEMASI:
DEVRE KURULUMU:
Malzemeler:
MEBKİT Robotik Kodlama Seti
3 adet iki ucu erkek jumper kablo
Jumper kabloların birer uçları Arduino’nun 7, 8 ve 9 numaralı pinlerine bağlanır. 7 numaralı pine bağlı kablonun diğer ucu, MEBKİT üzerinde yer alan Led pinlerinden kırmızı renge ait pine, 8 numaralı kablonun diğer ucu ise, Buton1 bağlantı soketine, 9 numaralı kablonun diğer ucu ise, Buton2 bağlantı soketine bağlanır ve devre tamamlanır.
NOT: Devrede LED ve buton için, direnç ve GND bağlantısı kullanmıyoruz. Direnç ve GND bağlantıları kart arkasında yapılmış durumdadır. Bundan dolayı sadece LED ve buton girişleri için bağlantıyı kuruyoruz.
MEBKİT ARDUINO İLE İKİ BUTONLA BİR LED YAKMA SÖNDÜRME DEVRESİ
ARDUINO KOD BÖLÜMÜ:
NOT: Kod bölümü içerisinde yer alan ve // işareti ile başlayan satırlar açıklama satırlarıdır. O satırda, kod bloğunun ne anlama geldiği ve nasıl çalıştığı ile ilgili bilgi verir. Arduino // işaretli alanı çalıştırmaz. İsterseniz kod satırından // işaret ile başlayan açıklama satırlarını silebilirsiniz.
// MEBKİT İKİ BUTONLA BİR LED YAKMA SÖNDÜRME
// int değişkeni ile led ve butonları tanımladık
int led = 7;
int buton1 = 8;
int buton2 = 9;
void setup()
{
pinMode(led, OUTPUT);
pinMode(buton1, INPUT);
pinMode(buton2, INPUT);
}
void loop()
{
if (digitalRead(buton1) == HIGH)
{
digitalWrite(led, HIGH);
}
if (digitalRead(buton2) == HIGH)
{
digitalWrite(led, LOW);
}
}
DEVRENİN ÇALIŞMASI:
Birinci butona bastığımızda led diyot yanacak, ikinci butona bastığımızda led diyot sönecektir.
MEBKİT MBLOCK İLE İKİ BUTONLA BİR LED YAKMA SÖNDÜRME DEVRESİ
MBLOCK PROGRAMI BLOK ŞEMASI:
DEVRENİN ÇALIŞMASI:
Blok şemasına göre, birinci butona bastığımızda LED yanacak, ikinci butona bastığımızda LED sönecektir.
MEB-KİT BİR BUTON İLE LED YAKMA SÖNDÜRME:
DEVRE BAĞLANTI ŞEMASI:
DEVRE KURULUMU:
Malzemeler:
MEBKİT Robotik Kodlama Seti
2 adet iki ucu erkek jumper kablo
Jumper kabloların birer uçları Arduino’nun 7 ve 8 numaralı pinlerine bağlanır. 7 numaralı pine bağlı kablonun diğer ucu, MEBKİT üzerinde yer alan Led pinlerinden kırmızı renge ait pine, 8 numaralı kablonun diğer ucu ise, Buton1 bağlantı soketine bağlanır ve devre tamamlanır.
NOT: Devrede LED ve buton için, direnç ve GND bağlantısı kullanmıyoruz. Direnç ve GND bağlantıları kart arkasında yapılmış durumdadır. Bundan dolayı sadece LED ve buton girişleri için bağlantıyı kuruyoruz.
MEBKİT ARDUINO İLE BİR BUTONLA LED YAKMA SÖNDÜRME DEVRESİ
ARDUINO KOD BÖLÜMÜ:
NOT: Kod bölümü içerisinde yer alan ve // işareti ile başlayan satırlar açıklama satırlarıdır. O satırda, kod bloğunun ne anlama geldiği ve nasıl çalıştığı ile ilgili bilgi verir. Arduino // işaretli alanı çalıştırmaz. İsterseniz kod satırından // işaret ile başlayan açıklama satırlarını silebilirsiniz.
// MEBKİT BİR BUTONLA 1 LED YAKMA SÖNDÜRME
int led = 7;
int buton = 8;
boolean leddurum = 0; //Başlangıçta ledin durumunu değişkenle belirledik
void setup()
{
pinMode(led, OUTPUT);
pinMode(buton, INPUT);
}
void loop() {
if
((digitalRead(buton) == HIGH) && (leddurum == 0)) // Her iki işlemde doğru ise if şartını uygular. (&&) karakterleri ile
{
digitalWrite(led, HIGH);
leddurum=1;
delay (250); // 250 değerinin altında kararsız çalışma yapmaktadır. 250 - 1000 arası değer verilebilir.
}
if ((digitalRead(buton) == HIGH) && (leddurum == 1))
{
digitalWrite(led, LOW);
leddurum=0;
delay (250);
}
}
DEVRENİN ÇALIŞMASI:
Butona bastığımızda led diyot yanacak, butona tekrar bastığımızda led diyot sönecektir.
MEBKİT MBLOCK İLE BİR BUTONLA LED YAKMA SÖNDÜRME DEVRESİ
MBLOCK PROGRAMI BLOK ŞEMASI:
mBlock programında üstteki blok diyagramını kullanarak devremizin blok kısmını tasarlayabiliriz. Blok şemasında leddurum isimli bir değişken tanımladık. Değişken nasıl tanımlanır? öğrenmek istiyorsanız aşağıdaki bağlantıyı tıklayıp inceleyebilirsiniz.
https://egitim.ahmetcandemir.com.tr/mblock-dersleri-13-mblock-degisken-olusturma/
DEVRENİN ÇALIŞMASI:
Blok şemasına göre, butona bastığımızda led diyot yanacak, butona tekrar bastığımızda led diyot sönecektir.
Devremizde sürekli tekrarla fonksiyonu içerisinde eğer yapısı ile butonun durumunun basılı olup olmadığını ve led diyotun yanıp yanmadığını dijital pin okuma bloğu kullanarak okuduk. (Buton basılı olduğunda pine 5 Volt gelecek olup durum High veya 1 olacaktır.) Butonumuz pull-down direnci ile toprağa (GND) bağlı olduğundan normal durumda buton pininin girişi LOW olacaktır. Biz butona bastığımızda buton pinine 5 Volt gidecek ve HIGH (yüksek) seviyesine çıkacaktır. Aynı zamanda led diyotta yanmıyorsa buton HIGH ( 1 ) seviyesine çıktığında Led pinini HIGH (yüksek) yaparak yanmasını sağladık. Butona tekrar bastığımızda buton pinine 5 Volt gidecek ve HIGH ( 1 ) seviyesine çıkacaktır. Aynı zamanda led diyotta ışık verdiği için Led pinini LOW (düşük) yaparak led diyotun sönmesini sağladık.
MEBKİT-Buton İle Led Yakma
Devre hakkında yorumlarınızı aşağıdaki yorum kısmına yazabilirsiniz. Youtube kanalımızda da mBlock ve Arduino ile ilgili ders videoları bulabileceksiniz. Youtube kanalıma abone olmayı da unutmayınız.
https://www.youtube.com/@candemirahmet












Yorum Yap