これSDカードが無い!(01)

製品を見て気付いてのですが、これSDカードが付いていません。ESP32-CAMには有ったのに。そこで、今回は回路図を元に製品の詳細を見て行く事にします。

使えるポートは幾つある?

既にOV2640制御用にポートの大半は使用済みです。それ以外で回路図から空いていそうなポートを探した所、下記の様になりました。また各ポートは起動時に下記の様に設定されています。

 GPIO No.  I/O  Pull Up/Down  用途 
00INUp Boot時の状態判断 
01INUpTX
02INDown Boot時の状態判断 
03INUpRX
12INDown内部LDOの電圧
13INX
14INX
15INUpデバッグログの設定
32XX
33XX
  • GPIO1,3は通信に使用するので使用不可
  • GPIO0,2はBoot時の状態判断に使用されますが、GPIO2は使用出来そう出すが既にLED表示用に使用済み
  • GPIO12は起動時にLowにする必要有り
  • GPIO15は起動時にHighにする必要有り

SDカードを追加するなら

この情報を元にSDカードをこの製品に追加して行きます。今回はこのSDカードを使用します。

GPIO12,13,14,15を使い下記の様に配線しました。GPIO12,15は起動時にLow,Highとする必要が有るのでSDカードの入力端子に配線しています

 ESP32  SDカード 
12CS
13SCK
14MISO
15MOSI

また、このSDカードは入力電圧5Vで設計されています。今回はESP32から電源を取るので、SDカードのレギュレーター2,3端子を基板から浮かせて基板のパッド同士を直接繋いでいます

Arduino IDEで確認

下記のコードを実行して下さい。SDカードに ”This is test. This is test. “と書かれたtest1.txtファイルが作成されます。

u_SD.ino

#include "FS.h"
#include <SD.h>

#define sd_sck  13
#define sd_mosi 15
#define sd_ss   12
#define sd_miso 14

void setup() 
{
  File fo;

    SPI.begin(sd_sck, sd_miso, sd_mosi, sd_ss);
    SD.begin(sd_ss);

    fo = SD.open("/test1.txt", FILE_WRITE); 
    fo.println("This is test.\nThis is test.");
    fo.close();    

    SD.end();

}

void loop() 
{
    
}

次回は

この製品にSDカードが追加されました。後空きポートは、2つ(GPIO32,33)です。ESP32-CAMには撮影用フラッシュライトが付いていましたが、LEDライトを持っていないので今回は諦めました。

次回はサンプルの詳細を見て行く予定です。