Example for reading and writing SD card using SPI mode.

Dependencies:   mbed

Fork of Demo_NucleoF4xx_SD_Card by 不韋 呂

Revision:
1:640ebf433b62
Parent:
0:08b4a59451e5
--- a/main.cpp	Sun Nov 13 11:37:35 2016 +0000
+++ b/main.cpp	Thu Dec 01 14:08:59 2016 +0000
@@ -1,44 +1,34 @@
-//--------------------------------------------------------------
-//  SD カード書き込み,読み出しの例
-//      インターフェース:SPI モード使用
-//
-//  このプログラムが STM32F446RE で動作するライブラリのリビジョン:
-//      SDFileSystem      3,      4 ~ 6 では正常に動かない
-//      FATFileSystem     3,      4 ~ 9 では正常に動かない
-//      mbed            121,    122 ~ 128 では正常に動かない
-//  調べた時点での mbed ライブラリの最新版:128
-//
-//  fprintf() で,文字列に日本語を使っているため,コンパイル時に
-//  警告が出るが,無視しても問題はない
-//
-//  2016/11/13, 三上 直樹
-//--------------------------------------------------------------
-
 #include "mbed.h"
 #include "SDFileSystem.h"
 
-//SDFileSystem sd_(D11, D12, D13, D10, "sd"); // MOSI, MISO, SCK, CS: SPI1
-SDFileSystem sd_(D4, D5, D3, D2, "sd");     // MOSI, MISO, SCK, CS: SPI3
+SDFileSystem sd(D11, D12, D13, D10, "sd"); // MOSI, MISO, SCK, CS: SPI1
+//SDFileSystem sd(D4, D5, D3, D2, "sd");     // MOSI, MISO, SCK, CS: SPI3
+//原平台LPC1768 (p11, p12, p13, p8, "sd");
+//              mosi,miso,sck,cs,
+//  nucleo       D11,D12,D13,D10
+
 Serial pc_(USBTX, USBRX);
 
 int main() {
-    pc_.baud(9600);
+    pc_.baud(115200);
     pc_.printf("\r\nInitializing\r\n");
 
-    // 書き込みのテスト
+    // 書き込みのテスト == Test writing
     pc_.printf("\nWriting to SD card...: ");
-    FILE *fp = fopen("/sd/sdtest.txt", "a+");   // 追加書き込み
+    //mkdir("/sd/mydir", 0777); //criar uma pasta
+    //FILE *fp = fopen("/sd/mydir/sdtest.txt", "a");//"w" para criar o ficheiro limpo, "a" para append (adicionar ao ficheiro)
+    FILE *fp = fopen("/sd/sdtest.txt", "a+");   // additional writing
     
     if (fp != NULL)
     {
-        fprintf(fp, "SD カードのテストです.\r\n");
+        fprintf(fp, "SD sdsdsd"); //texto a escrever no ficheiro
         fclose(fp);
         pc_.printf("success!\r\n");
     }
     else
         pc_.printf("failed!\r\n");
  
-    // 読み出しのテスト
+    // 読み出しのテスト == Test readout
     pc_.printf("Reading from SD card...:\r\n");
     fp = fopen("/sd/sdtest.txt", "r");
     if (fp != NULL)
@@ -48,7 +38,7 @@
             pc_.printf("%s", str);
         
         fclose(fp);
-        pc_.printf("success!\r\n");
+        pc_.printf("\r\nsuccess!\r\n");
     }
     else
         pc_.printf("failed!\r\n");