Arudino-L293D İle DC Motor Kontrolü
L293D Motor Sürücü Nedir?

L293D Motor sürücü entegresi
L293D ve L293B motor sürücü entegreleri içlerinde iki adet H köprüsü barındıran 16 bacaklı motor sürücü entegrelerdir. Genellikle DC motor kontrolünde tercih edilen motor sürücü entegreler olan L293D ve L293B ile iki motor birbirinden bağımsız olarak çift yönlü kontrol edilebilmektedir.
Ayrıca L293 motor sürücü entegrelerin enable bacaklarının kullanılmasıyla PWM kontrolü de yapılabilmektedir.
L293D motor sürücü entegresi 4,5 V ile 36 V aralığında maksimum 600 mA akım sınırına kadar kullanılabilir. L293B motor sürücü entegrenin ise aynı voltaj aralığında, maksimum 1 A akım sınırına kadar kullanılması mümkündür. H köprüsünü sizler için detaylı anlattık. H köprüsü nedir yazısına buradan ulaşabilirsiniz.
L298D Entegresi Pin Şeması:

L298D Entegremizde 1-9 bacaklar Enable bacaklarıdır. Enable bacakları ile pwm kontrolü yapılır.
4-5-12 ve 13 numaralı bacaklar toprak hattıdır.
3-6-11 ve 14 numaralı bacaklara motorlar bağlanır.
2-7-10 ve 15. Bacaklar ise motora yön vermek için kullanılır.
Bizim Projemizde;
L298D Motor Sürücü Pinleri | Arduino üzerinde bağlı olduğu pin |
4-5-12-13 | GND |
3-6-11-14 | Motorlara bağlı |
2-7 | 9-10 |
10-15 | 3-4 |
Proje İçin Malzeme listesi:
- Arduino Uno
- L293D Motor Sürücü Entegresi
- 2 Adet DC Motor
- Breadboard
- Bağlantı Kabloları
Devre Şeması

Proje Kodu:
//A Motoru için Bağlantı pinleri
int enA = 8;
int in1 = 9;
int in2 = 10;
//B Motoru için Bağlantı pinleri
int enB = 2;
int in3 = 3;
int in4 = 4;
void setup(){ //Giriş-çıkış pinlerini tanımlıyoruz.
pinMode(enA, OUTPUT);
pinMode(enB, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
}
void loop()
{
analogWrite(enA, 255); //Enable pinlerinden motor hızını ayarlıyoruz.
analogWrite(enB, 255);
digitalWrite(in1, HIGH); //Motorlara ileri yönde hareket komutu veriyoruz.
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
delay(2000);
digitalWrite(in1, LOW); //Motorları durduruyoruz.
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
delay(3000);
digitalWrite(in1, LOW); //Motorlara geri yönde hareket komutu veriyoruz.
digitalWrite(in2, HIGH);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
delay(2000);
digitalWrite(in1, LOW); //Motorları durduruyoruz.
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
delay(3000);
}
Diğer uygulamalarımız için;
Arduino uygulamaları için tıklayınız.
Raspberry Pi uygulamaları için tıklayınız.
Microchip Pic uygulamaları için tıklayınız.