Web siteme hoşgeldiniz, 18 Mayıs 2026
muratdonmez.com.tr
Anasayfa » IOT » microSD Kart Modülü: Arduino Veri Kayıt Rehberi

microSD Kart Modülü: Arduino Veri Kayıt Rehberi

microSD Kart Modülü: Arduino Veri Kayıt Rehberi

microSD Kart – Kalıcı Hafızanın Önemi

Arduino ve diğer mikrodenetleyiciler, güç kesildiğinde içindeki verileri (RAM) kaybeder. Ancak hava durumu istasyonları, uzun süreli sensör takibi veya otonom araçların rota kaydı gibi projelerde, verilerin kalıcı olarak saklanması gerekir. İşte microSD Kart Modülü bu ihtiyacı karşılayan temel bileşendir.

micro SD Kart Modülü, genellikle 3.3V’luk hassas microSD kartı, 5V’luk Arduino gibi kartlarla güvenli bir şekilde kullanabilmek için gerekli voltaj regülatörlerini ve seviye dönüştürücüleri (Level Shifter) barındıran küçük bir karttır.

microSD Kart Modülü

microSD Modül Çalışma Prensibi: SPI Protokolü

micro SD kartlar, mikrodenetleyicilerle iletişim kurmak için yüksek hızlı SPI (Serial Peripheral Interface – Seri Çevresel Arayüz) protokolünü kullanır.

SPI, 4 ana pin üzerinden çalışan senkronize bir iletişim standardıdır:

  1. VCC/GND: Güç bağlantıları (Genellikle 5V veya 3.3V).
  2. CS (Chip Select – Çip Seçimi): Arduino’nun SD kart ile konuşmaya başlayacağını belirtmek için kullanılan sinyal.
  3. MOSI (Master Out Slave In): Veri gönderim hattı (ESP32’den SD karta).
  4. MISO (Master In Slave Out): Veri alım hattı (SD karttan ESP32’ye).
  5. SCK (Serial Clock): İletişimi senkronize eden saat sinyali.

Veri Aktarımı: SPI, birden fazla cihazın aynı MISO, MOSI ve SCK pinlerini paylaşmasına izin verir. Ancak her cihaza özel bir CS pini atanır. Arduino, hangi cihazla konuşacağını o cihazın CS pinini LOW (Düşük) çekerek belirler.

ESP32 ile Bağlantı Şeması

ESP32 gibi kartlar için SPI pinleri sabittir ve bu pinler tüm SPI cihazları için ortak kullanılır.

SD Modülü PiniArduino UNO PiniSPI Fonksiyonu
CS/SSD5Çip Seçimi
MOSID23Veri Gönderimi
MISOD19Veri Alımı
SCKD18Saat Sinyali
VCC3.3VGüç
GNDGNDToprak

microsSD Kart Modülü Diagram

microSD Kart Formatı: FAT Dosya Sistemi

Arduino’nun bir SD kartı tanıyabilmesi ve dosya okuma/yazma işlemini gerçekleştirebilmesi için kartın belirli bir dosya sistemi ile formatlanmış olması gerekir.

  • Format: SD kartlar genellikle FAT16 veya FAT32 dosya sistemi ile formatlanmalıdır. Modern, büyük kapasiteli kartlar FAT32 veya exFAT olarak gelir, ancak Arduino SD Kütüphanesi en iyi FAT32 ile çalışır.
  • SD Kütüphanesi: Arduino IDE, dosya işlemleri için gerekli tüm fonksiyonları içeren yerleşik bir SD Kütüphanesine sahiptir. Bu kütüphane, Serial.print() komutuna benzer şekilde, metin dosyalarına kolayca veri yazmanıza olanak tanır.
  • Dosya Adları: SD karttaki dosya adları, kütüphane sınırlamaları nedeniyle genellikle 8 karakter + 3 karakter uzantı (örneğin: DATA0001.TXT) kuralına uymalıdır.

Kullanım Alanları ve Önemli Notlar

Kullanım Alanları:

  1. Datalogging (Veri Kaydı): Sıcaklık, nem, hava basıncı veya GPS konumu gibi sensör verilerini saatlik veya günlük olarak kaydetme.
  2. Konfigürasyon (Ayarlar): WiFi şifreleri, kalibrasyon değerleri veya kullanıcı tercihlerini bir metin dosyasından okuyup projeyi başlatma.
  3. Medya Depolama: Mp3 çalarlar, TFT ekranlar veya kameradan alınan görüntüleri depolama.

Önemli Notlar:

  • Voltaj: SD kartlar 3.3V ile çalışır. Modülünüzde voltaj seviye dönüştürücü yoksa (ki nadirdir), kartı doğrudan 5V’a bağlamak karta zarar verebilir.
  • Güç Tüketimi: Veri yazma işlemi sırasında modül kısa süreli yüksek akım çekebilir. Güç kaynağınızın yeterli olduğundan emin olun.
  • Çıkarma: Kartı çıkarırken daima önce Arduino’nun gücünü kesmek veya kod içinde myFile.close() komutu ile dosyayı düzgünce kapatmak, veri bozulmasını engeller.

ESP32 microSD Kart Bağlantı Şeması

ESP32 (Arduino IDE) Örnek Kodu

Gerekli Kütüphaneler: SD.h ve SPI.h (Arduino ile standart gelir)

//muratdonmez.com.tr
#include "FS.h"
#include "SD.h"
#include "SPI.h"

#define SD_CS_PIN 5 // CS pinini tanımla

void setup() {
  Serial.begin(115200);
  Serial.println("SD Kart Testi Başladı.");

  if (!SD.begin(SD_CS_PIN)) {
    Serial.println("SD Kart başlatılamadı! Kart takılı mı, FAT32 formatlı mı?");
    return;
  }
  Serial.println("SD Kart başarıyla başlatıldı.");

  // ---- 1. Dosya Yazma ----
  Serial.println("test.txt dosyasına yazılıyor...");
  File file = SD.open("/test.txt", FILE_WRITE);

  if (file) {
    file.println("Merhaba, bu bir ESP32 SD kart testidir.");
    file.close(); // Dosyayı mutlaka kapat!
    Serial.println("Dosyaya yazma başarılı.");
  } else {
    Serial.println("Dosya açılamadı (yazma).");
  }

  // ---- 2. Dosya Okuma ----
  Serial.println("\n'test.txt' dosyası okunuyor...");
  file = SD.open("/test.txt", FILE_READ);

  if (file) {
    while (file.available()) {
      Serial.write(file.read());
    }
    file.close();
  } else {
    Serial.println("Dosya açılamadı (okuma).");
  }
}

void loop() {}

Eğer akıllı ev, IOT projeleri ile ilgili sorularınız veya yapmak istediğiniz bir projeniz varsa, yedek alma ve yedekten dönme planınız veya felaket kurtarma planınız yoksa, işletmeniz için nasıl bir Sunucu, Bilgisayar veya Kesintisiz Güç Kaynağı seçmeniz gerektiğini bilmiyorsanız danışmanlık hizmetlerimden faydalanmak isterseniz bana WhatsApp üzerinden ulaşabilirsiniz.

İlgili Yazılar

Sık Sorulan Sorular

  • microSD Kart Modülü nedir?
    microSD Kart Modülü, Arduino gibi mikrodenetleyicilerin, sensör verilerini veya konfigürasyon dosyalarını kalıcı olarak bir microSD karta yazıp okuyabilmesi için gerekli elektronik bağlantıları (seviye dönüştürücü ve regülatör) sağlayan arayüz kartıdır.
  • Arduino, SD Kart ile nasıl iletişim kurar?
    Arduino, SD kart ile SPI (Serial Peripheral Interface) adı verilen hızlı bir seri iletişim protokolü üzerinden iletişim kurar. Bu protokol için 4 pin kullanılır: SCK, MOSI, MISO ve CS.
  • Neden Arduino’da genellikle 10, 11, 12 ve 13 numaralı pinler kullanılır?
    Arduino UNO gibi kartlarda bu pinler, kartın donanımsal olarak hızlı SPI iletişimini desteklemek üzere tasarlanmıştır. Bu pinlerin kullanılması, veri aktarımını en verimli hale getirir. CS pini (genellikle 10), modülü aktif hale getirir.
  • SD Kart modülü kaç volt ile çalışır?
    microSD kartın kendisi 3.3V ile çalışır. Ancak modüllerin çoğu, üzerinde bir regülatör barındırdığı için 5V’luk Arduino kartlarından gelen gücü güvenli bir şekilde alıp kullanabilir.
  • Veri kaydı (Datalogging) yaparken hangi dosya sistemi kullanılır?
    Arduino projelerinde veri kaydı (datalogging) için genellikle FAT16 veya FAT32 dosya sistemleri kullanılır. Bu, kartın hem Arduino hem de bir bilgisayar tarafından kolayca okunabilmesini sağlar.

Etiketler:

BU KONUYU SOSYAL MEDYA HESAPLARINDA PAYLAŞ
Yorumlar

Henüz yorum yapılmamış.

Yorum Yaz