【Arduino】ArduinoでSDカードを扱ってみた

はじめに

こんにちは、がんがんです。
ArduinoでSDカード扱ったので読み込みと書き込みだけでも
忘れないようにまとめておきます。

目的

  • ArduinoのSDカードライブラリを使用してみる

参考記事

qiita.com

実験1 SDカードから書き込み,読み込みを行ってみる

まずはこちらを参考にしてSDカードの読み書きを行っていきます。

コードは参考記事のままです。

SDカードに書き込む

#include <SD.h>


//  CSピン
const int chipSelect = 4;

void setup() {
  //シリアルポート初期化
  Serial.begin(9600);
  Serial.println(F("Initializind SD card..."));

  pinMode(SS, OUTPUT);
  SD.begin(chipSelect);
  SD.remove("datalog.txt");
}

void loop() {
  File dataFile = SD.open("datalog.txt", FILE_WRITE);

  if ( dataFile ) {
    int value = analogRead(0);
    dataFile.println(value);
    dataFile.close();
  }
  delay(1000);
}

SDカードから読み込み

#include <SD.h>


//  CSピン
const int chipSelect = 4;

void setup() {
  //シリアルポート初期化
  Serial.begin(9600);
  Serial.println(F("Initializind SD card..."));

  pinMode(SS, OUTPUT);
  SD.begin(chipSelect);
}

void loop() {
  File dataFile = SD.open("datalog.txt");

  if ( dataFile ) {
    while (dataFile.available()){
      Serial.write(dataFile.read());
    }
    dataFile.close();
  }
  delay(2000);
}
}

実行結果は以下の通りです。analogで読み込んだ値をループして表示できています。
f:id:gangannikki:20190513160755p:plain

まとめ

次の実験を行うまでに少し時間が空くため、とりあえずSDカードの読み込み・書き込みについてまとめました。
次はSDカード内のファイル情報を読み込み、情報に合わせてLEDなどを変化させる実験をやります。