動作確認
ESP-WROOM-02
microSDを使う
http://ashiyu.cocolog-nifty.com/blog/2015/09/esp8266-sd-ds32.html
にmicroSD接続の配線情報がある。
とりあえず試してみた。
基板実装
ESP8266用基板を新たに実装した。ESP8266基板は7枚目。
microSDの基板は以下を購入した。
- sunhayato CK-40
- 税込み602円 @ デジット
microSD関連については上記のリンクの配線をそれぞれ対応するESP8266のピンに実装(VDD, CLK, DAT0, VMD, VSS, CD)。
CK-40は1番ピンから8番ピンまでをストレートピンヘッダの長い方にはんだ付けし、反対の短いピンをユニバーサル基板に実装した。
フレームグラウンド関連のピンはとりあえずストレートピンヘッダにはんだ付けしたが、ESP8266には特別接続していない。
code v0.1
参考 https://www.arduino.cc/en/Tutorial/ReadWrite
上記を参考に以下を実装した。
eps8266_160521_microSD.ino
#include <SPI.h>
#include <SD.h>
// SD pin
#define SD_CS (4)
static File s_myFile;
void SD_init()
{
Serial.print("Initializing SD card...");
if (!SD.begin(SD_CS)) {
Serial.println("initialization failed!");
return;
}
Serial.println("initialization done.");
}
void SD_write()
{
s_myFile = SD.open("test.txt", FILE_WRITE);
if (s_myFile) {
Serial.print("Writing to test.txt...");
s_myFile.println("testing 1, 2, 3.");
s_myFile.close();
Serial.println("done.");
} else {
Serial.println("error opening test.txt");
}
}
void setup() {
Serial.begin(115200);
while(!Serial)
;
Serial.println();
SD_init();
SD_write();
}
void loop() {
// put your main code here, to run repeatedly:
}
結果
microSDに書き込みができた。
シリアル出力
Initializing SD card...initialization done.
Writing to test.txt...done.
TEST.TXT
testing 1, 2, 3.
testing 1, 2, 3.
2回実行したので2行となっている。
microSDドライバなどを作る場合と比べて各段に簡単だった。
配線情報の提供者に感謝。
ライブラリ作者に感謝。