Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: SDBlockDevice_GR_PEACH USBHost_custom
Diff: main.cpp
- Revision:
- 0:392df152119c
- Child:
- 1:c1b5260c1491
diff -r 000000000000 -r 392df152119c main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Mar 16 09:28:46 2017 +0000
@@ -0,0 +1,57 @@
+#include "mbed.h"
+#include "FATFileSystem.h"
+#include "SDBlockDevice_GR_PEACH.h"
+#include "USBHostMSD.h"
+
+int main() {
+    int i = 0;
+    int strage_type = 0;
+    char strage_str[16];
+
+    FATFileSystem fs("storage");
+    SDBlockDevice_GR_PEACH sd;
+    USBHostMSD usb;
+
+    while(1) {
+        // try to connect a storage device
+        fs.unmount();
+        while (1) {
+            if (sd.connect()) {
+                strage_type = 0; // SD
+                strcpy(strage_str, "SD card");
+                fs.mount(&sd);
+                break;
+            }
+            if (usb.connect()) {
+                strage_type = 1; // USB
+                strcpy(strage_str, "USB memory");
+                fs.mount(&usb);
+                break;
+            }
+            Thread::wait(500);
+        }
+
+        // in a loop, append a file
+        // if the device is disconnected, we try to connect it again
+        while(1) {
+            // append a file
+            FILE * fp = fopen("/storage/test1.txt", "a");
+
+            if (fp != NULL) {
+                fprintf(fp, "Hello %s World: %d!\r\n", strage_str, i++);
+                printf("Goodbye World!\r\n");
+                fclose(fp);
+            } else {
+                printf("FILE == NULL\r\n");
+            }
+            Thread::wait(500);
+
+            // if device disconnected, try to connect again
+            if (strage_type == 0) {
+                if (!sd.connected())  break;
+            } else {
+                if (!usb.connected()) break;
+            }
+        }
+    }
+}