Python ile Arduino LED Kontrolü
Python ile Arduino mikrodenetleyici kartının bağlı olduğu seri portu kontrol edebilmek için PySerial modülünün kurulması gerekir. Bu kütüphane kullanılarak Python ile seri port kontrolü yapılabilir. Bu modülün kurulması için aşağıdaki işlem adımları takip edilir:
1. Kullanılan Python editörünün komut satırı (terminal) açılır. Alternatif olarak Windows komut istemi veya Windows PowerShell açılır.
2. pip install pyserial komutu verilir.
Editör olarak Thonny 4.1.6 kullanılmıştır. Kod açıklamaları açıklama (yorum) satırı olarak verilmiştir. Thonny yazılımında "Çalıştır" menüsünden "Configure interpreter..." seçeneği çalıştırılarak açılan pencerenin "Yorumlayıcı" sekmesinden "Local Python 3" seçilmelidir.
Thonny Python IDE for beginners, https://thonny.org sitesinden ücretsiz olarak indirilebilir. Alternatif editör olarak IDLE Shell, Visual Studio Code vb. kullanılabilir.
Bu uygulamada Python ile Arduino'nun 13 nolu pinine bağlı yerleşik (LED_BUILTIN) veya bağlanacak harici LED kontrol edilmiştir.
Uygulamaya Ait Şema, Bağlantı Şekli ve Görseller

Görsel 1: LED diyot pin yapısı

Görsel 2: Arduino Uno ile LED kontrol uygulaması devre şeması
Malzeme Listesi
|
Sıra No |
Adı |
Özelliği |
Miktarı |
|
1 |
Arduino Uno R3 |
- |
1 Adet |
|
2 |
LED diyot |
5 mm |
1 Adet |
|
3 |
Direnç |
220R / ¼ W |
1 Adet |
|
4 |
Breadboard |
830 pin |
1 Adet |
|
5 |
Jumper kablo |
Erkek-erkek |
- |
Uygulamaya Ait Python Kodu
"""
Uygulama Adı : Python ile Arduino LED kontrolü uygulaması
Açıklama :
Tarih : 18 Nisan 2026
Yazan : İlhan DEMİR
"""
import serial
#serial modülü eklendi.
#Arduino kartının bağlı olduğu seri port ayarları yapıldı.
#Haberleşme portu com3, haberleşme hızı 9600 baud
#port=serial.Serial("com3",9600)
port=serial.Serial()
port.port="com3"
port.baudrate=9600
port.open()
print("Port açıldı.")
#port bilgileri konsoldan yazdırıldı.
print(port)
while True: #sonsuz döngü
veri=input("Komut gönder: [a][b][q]: ")
#Kullanıcıdan komut alma, a ve b komutlarında porta byte olarak veri gönderir.
#Kullanıcıdan q komutu gelirse programdan çıkış yapılır.
if(veri=="a"):
port.write(b'a')
if(veri=="b"):
port.write(b'b')
if(veri=="q"):
port.close()
print()
print("Port kapandı.")
print("Çıkış yapıldı.")
break
Uygulamaya Ait Arduino Kodu
/*
Uygulama Adı : Python ile LED kontrolü
Açıklama :
Tarih : 18 Nisan 2026
Yazan : İlhan DEMİR
*/
#define LED 13
char gelenKomut;
void setup() {
pinMode(LED, OUTPUT);
Serial.begin(9600);
//Donanımsal seri port ile haberleşmeyi başlat.
}
void loop() {
if (Serial.available() > 0) {
gelenKomut = Serial.read();
//Seri porttan gelen veri varsa oku ve değişkende sakla.
delay(100);
if (gelenKomut == 'a')
//Gelen komut "a" ise;
digitalWrite(LED, HIGH);
if (gelenKomut == 'b')
//Gelen komut "b" ise;
digitalWrite(LED, LOW);
}
}
Bu internet sitesi içeriğinde yer alan tüm eserler (yazı, resim, görüntü, fotoğraf, video, müzik vb.) İlhan DEMİR'e ait olup, 5846 sayılı Fikir ve Sanat Eserleri Kanunu ve 5237 sayılı Türk Ceza Kanunu kapsamında korunmaktadır. Bu hakları ihlal eden kişiler, 5846 sayılı Fikir ve Sanat eserleri Kanunu ve 5237 sayılı Türk Ceza Kanununda yer alan hukuki ve cezai yaptırımlara tabi olurlar. İlhan DEMİR, yasal işlem başlatma hakkına sahiptir.

BİR CEVAP YAZ