Arduino İle SD Kart Modülü Kullanımı
SD kart modülü, standart bir sd karta veya karttan veri aktarmak için kullanılır. Pin çıkışı, Arduino ile doğrudan uyumludur ve diğer mikrodenetleyicilerle de kullanılabilir. Projemize yığın depolama ve veri kaydı eklememizi sağlar.
SD Kart Modülü Özellikleri
- Giriş Voltajı: 3.3V/5V
- Tüm SD SPI Pinleri ile: MOSI, SCK, MISO ve CS, daha fazla bağlantı için. Programlama yoluyla, arduino’nuzu kullanarak SD kartı okuyabilir ve yazabilirsiniz.
- SPI arayüzünü kullanarak Arduino ile iletişim kurun
- Kartlı push-pop soketi, PCB’nin kenarının biraz üzerindedir, böylece takılması ve çıkarılması kolaydır
- 2,2 mm çapında 4 montaj deliği bulunur
- Boyut: 42 mm x 25 mm x 5 mm
Projede Kullanılacak Malzemeler
Arduino İle SD Kart Modülü Bağlantı Şeması
Bu modül, MISO, MOSI, SCK ve bir CS sinyal pinini içeren iletişim için standart SPI arayüzünü kullanır. Arduino veya diğer mikrodenetleyiciler kullanılarak kolayca veri okunabilir ve SD Karta yazılabilir.
- CS (chip select)
- SCK (serial clock)
- MOSI (master out slave in)
- VCC (3.3V veya 5V)
- GND (toprak)
Yukarıdaki şema, Micro SD Kart Modülü ile Arduino UNO arasındaki basit bağlantıyı göstermektedir:
Arduino | SD Kart Modülü |
5V | VCC |
GND | GND |
14 | CS |
13 | SCK |
11 | MOSI |
12 | MISO |
SD Kart Modülü Kodu
Bu modülün kütüphanesi Arduino IDE programı ile birlikte gelmektedir. Sizin ayrıca bir kütüphane yüklemenize gerek yok. Ama isterseniz başka kütüphaneleri indirip onlar ile de kullanabilirsiniz. Aşağıdaki yolu izleyerek veri okuma ve yazma kodounu açabilirsiniz.
Örnekler > SD > ReadWrite
Yolumuzu takip ederek veri okuma ve yazma kodumuzu arduinoya yükleyelim. Kodun aynısı aşağıdakidir.
/*
SD card read/write
This example shows how to read and write data to and from an SD card file
The circuit:
SD card attached to SPI bus as follows:
** MOSI - pin 11
** MISO - pin 12
** CLK - pin 13
** CS - pin 4
created Nov 2010
by David A. Mellis
modified 9 Apr 2012
by Tom Igoe
This example code is in the public domain.
*/
#include <SPI.h>
#include <SD.h>
File myFile;
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(115200);
Serial.print("Initializing SD card...");
if (!SD.begin(4)) {
Serial.println("initialization failed!");
return;
}
Serial.println("initialization done.");
// open the file. note that only one file can be open at a time,
// so you have to close this one before opening another.
myFile = SD.open("test.txt", FILE_WRITE);
// if the file opened okay, write to it:
if (myFile) {
Serial.print("Writing to test.txt...");
myFile.println("testing 1, 2, 3.");
// close the file:
myFile.close();
Serial.println("done.");
} else {
// if the file didn't open, print an error:
Serial.println("error opening test.txt");
}
// re-open the file for reading:
myFile = SD.open("test.txt");
if (myFile) {
Serial.println("test.txt:");
// read from the file until there's nothing else in it:
while (myFile.available()) {
Serial.write(myFile.read());
}
// close the file:
myFile.close();
} else {
// if the file didn't open, print an error:
Serial.println("error opening test.txt");
}
}
void loop() {
// nothing happens after setup
}
Ardından seri monitörümüzü açalım ve SD Kartımıza yazdığı ve okuduğu yazılara bakabilirsiniz.