Tough microSD カードに関連するAPIとサンプルプログラム。
#include <Arduino.h>#include <SPI.h>#include <SD.h>#include <M5Unified.h>#include <M5GFX.h> #define SD_SPI_CS_PIN 4#define SD_SPI_SCK_PIN 18#define SD_SPI_MOSI_PIN 23#define SD_SPI_MISO_PIN 38 void setup() { M5.begin(); M5.Display.setRotation(1); M5.Display.setFont(&fonts::FreeMono12pt7b); // SD Card Initialization SPI.begin(SD_SPI_SCK_PIN, SD_SPI_MISO_PIN, SD_SPI_MOSI_PIN, SD_SPI_CS_PIN); if (!SD.begin(SD_SPI_CS_PIN, SPI, 25000000)) { // Print a message if SD card initialization failed or if the SD card does not exist. M5.Display.print("\n SD card not detected\n"); while (1) ; } else { M5.Display.print("\n SD card detected\n"); } delay(1000); // Write TXT file M5.Display.print("\n SD card write test...\n"); auto file = SD.open("/WriteTest.txt", FILE_WRITE, true); if (file) { file.print("Hello, world! \nSD card write success! \n"); file.close(); M5.Display.print(" SD card write success\n"); } else { M5.Display.print(" Failed to create TXT file\n"); } delay(1000); M5.Display.print("\n SD card read test...\n"); if (SD.open("/TestPicture01.png", FILE_READ, false)) { M5.Display.print(" PNG file 01 detected\n"); } else { M5.Display.print(" PNG file 01 not detected\n"); } if (SD.open("/TestPicture02.png", FILE_READ, false)) { M5.Display.print(" PNG file 02 detected\n"); } else { M5.Display.print(" PNG file 02 not detected\n"); } delay(1000);} void loop() { // Read PNG file and draw picture M5.Display.drawPngFile(SD, "/TestPicture01.png"); delay(500); M5.Display.drawPngFile(SD, "/TestPicture02.png"); delay(500);}
microSD カードを用意し、FAT32 形式でフォーマットした後、ルートディレクトリに 320*240
解像度の PNG
画像を2枚保存してください。ファイル名は TestPicture01.png
と TestPicture02.png
にします。(または、サンプル画像1 と サンプル画像2 を直接ダウンロードすることもできます。画像の解像度が 320*240
でない場合、プログラムはプリセットに基づいて表示方式を決定し、表示が乱れる可能性があります。)
下図のように、製品に付属の 2.5mm 六角レンチを使って背面の4本のネジを緩めてカバーを開けます。右側の矢印が指しているのが Tough の microSD カードスロットです。
準備したSDカードをToughに挿入します。SDカードの接点がToughの画面と同じ向きになるように注意してください。上記のコードをArduino IDEにコピーし、コンパイルしてToughにアップロードします。
このプログラムはSDカード上に WriteTest.txt
というテキストファイルを作成して文字列を書き込み、その後SDカードに保存された2枚のPNG画像をループ再生します。
ToughのmicroSDカード機能には、Arduino標準の SD
ライブラリと M5GFX
ライブラリの drawPngFile
関数が使用されています。詳細なAPIは以下のドキュメントを参照してください: