Pendrive to sd card data transfer coding

Dependencies:   FatFileSystem TextLCD mbed

Fork of MSCUsbHost by gavin beardall

Committer:
sathguru
Date:
Thu Apr 16 05:12:20 2015 +0000
Revision:
1:77e50c06ea01
Parent:
0:e6a539e59b52
Pendrive to sd card data transfer coding

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gbeardall 0:e6a539e59b52 1 #include "mbed.h"
gbeardall 0:e6a539e59b52 2 #include "MSCFileSystem.h"
gbeardall 0:e6a539e59b52 3 //#include <stat.h>
sathguru 1:77e50c06ea01 4 DigitalInOut button1(p11);
gbeardall 0:e6a539e59b52 5
sathguru 1:77e50c06ea01 6 DigitalInOut button2(p12);
sathguru 1:77e50c06ea01 7
sathguru 1:77e50c06ea01 8 #include "TextLCD.h"
sathguru 1:77e50c06ea01 9
gbeardall 0:e6a539e59b52 10 #define FSNAME "msc"
gbeardall 0:e6a539e59b52 11 MSCFileSystem msc(FSNAME);
sathguru 1:77e50c06ea01 12 #include "SDFileSystem.h"
sathguru 1:77e50c06ea01 13 SDFileSystem sd(p5, p6, p7, p8, "sd");
gbeardall 0:e6a539e59b52 14
sathguru 1:77e50c06ea01 15 TextLCD lcd(p26, p25, p24, p23, p22, p21); // rs, e, d4-d7
sathguru 1:77e50c06ea01 16 int k;
gbeardall 0:e6a539e59b52 17 int main()
gbeardall 0:e6a539e59b52 18 {
sathguru 1:77e50c06ea01 19 while(1)
sathguru 1:77e50c06ea01 20 {
sathguru 1:77e50c06ea01 21
sathguru 1:77e50c06ea01 22
sathguru 1:77e50c06ea01 23
sathguru 1:77e50c06ea01 24
sathguru 1:77e50c06ea01 25 button1 = 1;
sathguru 1:77e50c06ea01 26 button2 = 1;
sathguru 1:77e50c06ea01 27 lcd.locate(0,0);
sathguru 1:77e50c06ea01 28 lcd.printf("1.Pendrv 2 SD");
sathguru 1:77e50c06ea01 29 lcd.locate(0,1);
sathguru 1:77e50c06ea01 30 lcd.printf("2.SD 2 Pendrv");
sathguru 1:77e50c06ea01 31 wait(0.5);
sathguru 1:77e50c06ea01 32 if(button1==0)
sathguru 1:77e50c06ea01 33 {
sathguru 1:77e50c06ea01 34 lcd.cls();
sathguru 1:77e50c06ea01 35 lcd.locate(0,0);
sathguru 1:77e50c06ea01 36 lcd.printf("1.Pendrv 2 SD");
sathguru 1:77e50c06ea01 37 lcd.locate(0,1);
sathguru 1:77e50c06ea01 38 lcd.printf(" Reading Files..");
sathguru 1:77e50c06ea01 39 wait(5);
sathguru 1:77e50c06ea01 40 lcd.cls();
sathguru 1:77e50c06ea01 41 lcd.locate(0,0);
sathguru 1:77e50c06ea01 42 lcd.printf("1.test.docx");
sathguru 1:77e50c06ea01 43 lcd.locate(0,1);
sathguru 1:77e50c06ea01 44 lcd.printf("2.demo.txt");
sathguru 1:77e50c06ea01 45 wait(2);
sathguru 1:77e50c06ea01 46 k=1;
sathguru 1:77e50c06ea01 47 while(k)
sathguru 1:77e50c06ea01 48 {
sathguru 1:77e50c06ea01 49
sathguru 1:77e50c06ea01 50
sathguru 1:77e50c06ea01 51
sathguru 1:77e50c06ea01 52 //////////////////////////////Pendrive to SD Card/////////////////////////////////////////////////////////
sathguru 1:77e50c06ea01 53
sathguru 1:77e50c06ea01 54 if(button1==0)
sathguru 1:77e50c06ea01 55 {
sathguru 1:77e50c06ea01 56
sathguru 1:77e50c06ea01 57 lcd.cls();
sathguru 1:77e50c06ea01 58 lcd.locate(0,0);
sathguru 1:77e50c06ea01 59 lcd.printf("1.demo.txt");
sathguru 1:77e50c06ea01 60 lcd.locate(0,1);
sathguru 1:77e50c06ea01 61 lcd.printf("Transfer2SDCard");
sathguru 1:77e50c06ea01 62 wait(7);
sathguru 1:77e50c06ea01 63 ///////////////////
gbeardall 0:e6a539e59b52 64 DIR *d;
gbeardall 0:e6a539e59b52 65 struct dirent *p;
gbeardall 0:e6a539e59b52 66 //struct stat st;
gbeardall 0:e6a539e59b52 67 //char path[PATH_MAX];
sathguru 1:77e50c06ea01 68
gbeardall 0:e6a539e59b52 69
sathguru 1:77e50c06ea01 70 d = opendir("/" FSNAME);
sathguru 1:77e50c06ea01 71
sathguru 1:77e50c06ea01 72 printf("\nList of files on the flash drive:\n");
sathguru 1:77e50c06ea01 73 if ( d != NULL )
sathguru 1:77e50c06ea01 74 {
sathguru 1:77e50c06ea01 75 while ( (p = readdir(d)) != NULL )
sathguru 1:77e50c06ea01 76 {
sathguru 1:77e50c06ea01 77 printf(" - %s\n", p->d_name);
sathguru 1:77e50c06ea01 78
sathguru 1:77e50c06ea01 79 }
sathguru 1:77e50c06ea01 80 }
sathguru 1:77e50c06ea01 81 else
sathguru 1:77e50c06ea01 82 {
sathguru 1:77e50c06ea01 83 error("Could not open directory!");
sathguru 1:77e50c06ea01 84 }
sathguru 1:77e50c06ea01 85 /*printf("\nTesting file write:\n");
sathguru 1:77e50c06ea01 86 FILE *fp1 = fopen( "/" FSNAME "/demo.txt", "w");
sathguru 1:77e50c06ea01 87 if ( fp1 == NULL )
sathguru 1:77e50c06ea01 88 {
sathguru 1:77e50c06ea01 89 error("Could not open file for write\n");
sathguru 1:77e50c06ea01 90 }
sathguru 1:77e50c06ea01 91 fprintf(fp1, "Hello mass storage sathguru!");
sathguru 1:77e50c06ea01 92 fclose(fp1);
sathguru 1:77e50c06ea01 93 printf("\n - OK\n");
sathguru 1:77e50c06ea01 94 */
sathguru 1:77e50c06ea01 95 printf("\nTesting file read:\n");
sathguru 1:77e50c06ea01 96 FILE *fp1 =fopen( "/" FSNAME "/demo.txt", "r");
sathguru 1:77e50c06ea01 97 if ( fp1 == NULL )
sathguru 1:77e50c06ea01 98 {
sathguru 1:77e50c06ea01 99 lcd.cls();
sathguru 1:77e50c06ea01 100 lcd.locate(0,0);
sathguru 1:77e50c06ea01 101 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 102 lcd.locate(0,1);
sathguru 1:77e50c06ea01 103 lcd.printf("Opening File ");
sathguru 1:77e50c06ea01 104 wait(2);
sathguru 1:77e50c06ea01 105 lcd.cls();
sathguru 1:77e50c06ea01 106 }
sathguru 1:77e50c06ea01 107 char buf[256];
sathguru 1:77e50c06ea01 108 if ( NULL == fgets(buf, sizeof(buf), fp1) )
sathguru 1:77e50c06ea01 109 {
sathguru 1:77e50c06ea01 110 lcd.cls();
sathguru 1:77e50c06ea01 111 lcd.locate(0,0);
sathguru 1:77e50c06ea01 112 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 113 lcd.locate(0,1);
sathguru 1:77e50c06ea01 114 lcd.printf("Reading File ");
sathguru 1:77e50c06ea01 115 wait(2);
sathguru 1:77e50c06ea01 116 lcd.cls();
sathguru 1:77e50c06ea01 117 }
sathguru 1:77e50c06ea01 118 fclose(fp1);
sathguru 1:77e50c06ea01 119 printf("\n - OK, read string: '%s'\n\n", buf);
sathguru 1:77e50c06ea01 120
sathguru 1:77e50c06ea01 121 /////////////////////////////////////////////////////////////
sathguru 1:77e50c06ea01 122 wait(0.5);
sathguru 1:77e50c06ea01 123 mkdir("/sd/mydir", 0777);
sathguru 1:77e50c06ea01 124
sathguru 1:77e50c06ea01 125
sathguru 1:77e50c06ea01 126 FILE *fp = fopen("/sd/mydir/demo.txt", "w");
sathguru 1:77e50c06ea01 127 if(fp == NULL) {
sathguru 1:77e50c06ea01 128 lcd.cls();
sathguru 1:77e50c06ea01 129 lcd.locate(0,0);
sathguru 1:77e50c06ea01 130 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 131 lcd.locate(0,1);
sathguru 1:77e50c06ea01 132 lcd.printf("Opening File ");
sathguru 1:77e50c06ea01 133 wait(2);
sathguru 1:77e50c06ea01 134 lcd.cls();
sathguru 1:77e50c06ea01 135 }
sathguru 1:77e50c06ea01 136 fprintf(fp, buf);
sathguru 1:77e50c06ea01 137 fclose(fp);
sathguru 1:77e50c06ea01 138
sathguru 1:77e50c06ea01 139 printf(buf);
sathguru 1:77e50c06ea01 140 k=0;
sathguru 1:77e50c06ea01 141 lcd.cls();
sathguru 1:77e50c06ea01 142 lcd.locate(0,0);
sathguru 1:77e50c06ea01 143 lcd.printf("File ");
sathguru 1:77e50c06ea01 144 lcd.locate(0,1);
sathguru 1:77e50c06ea01 145 lcd.printf(" Transferred ");
sathguru 1:77e50c06ea01 146 wait(5);
sathguru 1:77e50c06ea01 147 }
sathguru 1:77e50c06ea01 148
sathguru 1:77e50c06ea01 149 else if(button2==0)
sathguru 1:77e50c06ea01 150 {
sathguru 1:77e50c06ea01 151
sathguru 1:77e50c06ea01 152
sathguru 1:77e50c06ea01 153
sathguru 1:77e50c06ea01 154 lcd.cls();
sathguru 1:77e50c06ea01 155 lcd.locate(0,0);
sathguru 1:77e50c06ea01 156 lcd.printf("2.test.doc");
sathguru 1:77e50c06ea01 157 lcd.locate(0,1);
sathguru 1:77e50c06ea01 158 lcd.printf("Transfer2SDCard");
sathguru 1:77e50c06ea01 159 wait(7);
sathguru 1:77e50c06ea01 160 ///////////////////
sathguru 1:77e50c06ea01 161 DIR *d;
sathguru 1:77e50c06ea01 162 struct dirent *p;
sathguru 1:77e50c06ea01 163 //struct stat st;
sathguru 1:77e50c06ea01 164 //char path[PATH_MAX];
sathguru 1:77e50c06ea01 165
gbeardall 0:e6a539e59b52 166
gbeardall 0:e6a539e59b52 167 d = opendir("/" FSNAME);
gbeardall 0:e6a539e59b52 168
gbeardall 0:e6a539e59b52 169 printf("\nList of files on the flash drive:\n");
gbeardall 0:e6a539e59b52 170 if ( d != NULL )
gbeardall 0:e6a539e59b52 171 {
gbeardall 0:e6a539e59b52 172 while ( (p = readdir(d)) != NULL )
gbeardall 0:e6a539e59b52 173 {
gbeardall 0:e6a539e59b52 174 printf(" - %s\n", p->d_name);
sathguru 1:77e50c06ea01 175
sathguru 1:77e50c06ea01 176 }
sathguru 1:77e50c06ea01 177 }
sathguru 1:77e50c06ea01 178 else
sathguru 1:77e50c06ea01 179 {
sathguru 1:77e50c06ea01 180 error("Could not open directory!");
sathguru 1:77e50c06ea01 181 }
sathguru 1:77e50c06ea01 182 /*printf("\nTesting file write:\n");
sathguru 1:77e50c06ea01 183 FILE *fp1 = fopen( "/" FSNAME "/demo.txt", "w");
sathguru 1:77e50c06ea01 184 if ( fp1 == NULL )
sathguru 1:77e50c06ea01 185 {
sathguru 1:77e50c06ea01 186 error("Could not open file for write\n");
sathguru 1:77e50c06ea01 187 }
sathguru 1:77e50c06ea01 188 fprintf(fp1, "Hello mass storage sathguru!");
sathguru 1:77e50c06ea01 189 fclose(fp1);
sathguru 1:77e50c06ea01 190 printf("\n - OK\n");
sathguru 1:77e50c06ea01 191 */
sathguru 1:77e50c06ea01 192 printf("\nTesting file read:\n");
sathguru 1:77e50c06ea01 193 FILE *fp1 =fopen( "/" FSNAME "/test.doc", "r");
sathguru 1:77e50c06ea01 194 if ( fp1 == NULL )
sathguru 1:77e50c06ea01 195 {
sathguru 1:77e50c06ea01 196 lcd.cls();
sathguru 1:77e50c06ea01 197 lcd.locate(0,0);
sathguru 1:77e50c06ea01 198 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 199 lcd.locate(0,1);
sathguru 1:77e50c06ea01 200 lcd.printf("Opening File ");
sathguru 1:77e50c06ea01 201 wait(2);
sathguru 1:77e50c06ea01 202 lcd.cls();
sathguru 1:77e50c06ea01 203 }
sathguru 1:77e50c06ea01 204 char buf[256];
sathguru 1:77e50c06ea01 205 if ( NULL == fgets(buf, sizeof(buf), fp1) )
sathguru 1:77e50c06ea01 206 {
sathguru 1:77e50c06ea01 207 lcd.cls();
sathguru 1:77e50c06ea01 208 lcd.locate(0,0);
sathguru 1:77e50c06ea01 209 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 210 lcd.locate(0,1);
sathguru 1:77e50c06ea01 211 lcd.printf("Reading File ");
sathguru 1:77e50c06ea01 212 wait(2);
sathguru 1:77e50c06ea01 213 lcd.cls();
sathguru 1:77e50c06ea01 214 }
sathguru 1:77e50c06ea01 215 fclose(fp1);
sathguru 1:77e50c06ea01 216 printf("\n - OK, read string: '%s'\n\n", buf);
sathguru 1:77e50c06ea01 217
sathguru 1:77e50c06ea01 218 /////////////////////////////////////////////////////////////
sathguru 1:77e50c06ea01 219
sathguru 1:77e50c06ea01 220
sathguru 1:77e50c06ea01 221 wait(0.5);
sathguru 1:77e50c06ea01 222 mkdir("/sd/mydir", 0777);
sathguru 1:77e50c06ea01 223
sathguru 1:77e50c06ea01 224 FILE *fp = fopen("/sd/mydir/test.doc", "w");
sathguru 1:77e50c06ea01 225 if(fp == NULL) {
sathguru 1:77e50c06ea01 226 lcd.cls();
sathguru 1:77e50c06ea01 227 lcd.locate(0,0);
sathguru 1:77e50c06ea01 228 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 229 lcd.locate(0,1);
sathguru 1:77e50c06ea01 230 lcd.printf("Opening File ");
sathguru 1:77e50c06ea01 231 wait(2);
sathguru 1:77e50c06ea01 232 lcd.cls();
sathguru 1:77e50c06ea01 233 }
sathguru 1:77e50c06ea01 234 fprintf(fp, buf);
sathguru 1:77e50c06ea01 235 fclose(fp);
sathguru 1:77e50c06ea01 236
sathguru 1:77e50c06ea01 237 printf(buf);
sathguru 1:77e50c06ea01 238 k=0;
sathguru 1:77e50c06ea01 239 lcd.cls();
sathguru 1:77e50c06ea01 240 lcd.locate(0,0);
sathguru 1:77e50c06ea01 241 lcd.printf("File ");
sathguru 1:77e50c06ea01 242 lcd.locate(0,1);
sathguru 1:77e50c06ea01 243 lcd.printf(" Transferred ");
sathguru 1:77e50c06ea01 244 wait(5);
sathguru 1:77e50c06ea01 245 }
sathguru 1:77e50c06ea01 246 }
sathguru 1:77e50c06ea01 247
sathguru 1:77e50c06ea01 248 }
sathguru 1:77e50c06ea01 249
sathguru 1:77e50c06ea01 250
sathguru 1:77e50c06ea01 251 //////////////////////////////////////// SD card to Pendrive /////////////////////////////////
sathguru 1:77e50c06ea01 252
sathguru 1:77e50c06ea01 253
sathguru 1:77e50c06ea01 254
sathguru 1:77e50c06ea01 255 else if(button2==0)
sathguru 1:77e50c06ea01 256 {
sathguru 1:77e50c06ea01 257 lcd.cls();
sathguru 1:77e50c06ea01 258 lcd.locate(0,0);
sathguru 1:77e50c06ea01 259 lcd.printf("1.Pendrv2Pendrv");
sathguru 1:77e50c06ea01 260 lcd.locate(0,1);
sathguru 1:77e50c06ea01 261 lcd.printf(" Reading Files..");
sathguru 1:77e50c06ea01 262 wait(5);
sathguru 1:77e50c06ea01 263 lcd.cls();
sathguru 1:77e50c06ea01 264 lcd.locate(0,0);
sathguru 1:77e50c06ea01 265 lcd.printf("1.blue.txt");
sathguru 1:77e50c06ea01 266 lcd.locate(0,1);
sathguru 1:77e50c06ea01 267 lcd.printf("2.check.txt");
sathguru 1:77e50c06ea01 268 wait(2);
sathguru 1:77e50c06ea01 269 k=1;
sathguru 1:77e50c06ea01 270 while(k)
sathguru 1:77e50c06ea01 271 {
sathguru 1:77e50c06ea01 272
sathguru 1:77e50c06ea01 273
sathguru 1:77e50c06ea01 274
sathguru 1:77e50c06ea01 275 //////////////////////////////Pendrive to SD Card/////////////////////////////////////////////////////////
sathguru 1:77e50c06ea01 276
sathguru 1:77e50c06ea01 277 if(button1==0)
sathguru 1:77e50c06ea01 278 {
sathguru 1:77e50c06ea01 279
sathguru 1:77e50c06ea01 280 lcd.cls();
sathguru 1:77e50c06ea01 281 lcd.locate(0,0);
sathguru 1:77e50c06ea01 282 lcd.printf("1.blue.txt");
sathguru 1:77e50c06ea01 283 lcd.locate(0,1);
sathguru 1:77e50c06ea01 284 lcd.printf("Transfer2Pendrv");
sathguru 1:77e50c06ea01 285 wait(7);
sathguru 1:77e50c06ea01 286 ///////////////////
sathguru 1:77e50c06ea01 287 DIR *d;
sathguru 1:77e50c06ea01 288 struct dirent *p;
sathguru 1:77e50c06ea01 289 //struct stat st;
sathguru 1:77e50c06ea01 290 //char path[PATH_MAX];
sathguru 1:77e50c06ea01 291
sathguru 1:77e50c06ea01 292
sathguru 1:77e50c06ea01 293 d = opendir("/" FSNAME);
sathguru 1:77e50c06ea01 294
sathguru 1:77e50c06ea01 295 printf("\nList of files on the flash drive:\n");
sathguru 1:77e50c06ea01 296 if ( d != NULL )
sathguru 1:77e50c06ea01 297 {
sathguru 1:77e50c06ea01 298 while ( (p = readdir(d)) != NULL )
sathguru 1:77e50c06ea01 299 {
sathguru 1:77e50c06ea01 300 printf(" - %s\n", p->d_name);
sathguru 1:77e50c06ea01 301
gbeardall 0:e6a539e59b52 302 }
gbeardall 0:e6a539e59b52 303 }
gbeardall 0:e6a539e59b52 304 else
gbeardall 0:e6a539e59b52 305 {
gbeardall 0:e6a539e59b52 306 error("Could not open directory!");
gbeardall 0:e6a539e59b52 307 }
sathguru 1:77e50c06ea01 308
sathguru 1:77e50c06ea01 309 mkdir("/sd/mydir", 0777);
sathguru 1:77e50c06ea01 310
sathguru 1:77e50c06ea01 311
sathguru 1:77e50c06ea01 312 FILE *fp = fopen("/sd/mydir/blue.txt", "r");
sathguru 1:77e50c06ea01 313 if(fp == NULL) {
sathguru 1:77e50c06ea01 314 lcd.cls();
sathguru 1:77e50c06ea01 315 lcd.locate(0,0);
sathguru 1:77e50c06ea01 316 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 317 lcd.locate(0,1);
sathguru 1:77e50c06ea01 318 lcd.printf("Opening File ");
sathguru 1:77e50c06ea01 319 wait(2);
sathguru 1:77e50c06ea01 320 lcd.cls();
gbeardall 0:e6a539e59b52 321 }
sathguru 1:77e50c06ea01 322 char buf[256];
gbeardall 0:e6a539e59b52 323 if ( NULL == fgets(buf, sizeof(buf), fp) )
gbeardall 0:e6a539e59b52 324 {
sathguru 1:77e50c06ea01 325 lcd.cls();
sathguru 1:77e50c06ea01 326 lcd.locate(0,0);
sathguru 1:77e50c06ea01 327 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 328 lcd.locate(0,1);
sathguru 1:77e50c06ea01 329 lcd.printf("Reading File ");
sathguru 1:77e50c06ea01 330 wait(2);
sathguru 1:77e50c06ea01 331 lcd.cls();
sathguru 1:77e50c06ea01 332 }
sathguru 1:77e50c06ea01 333 fprintf(fp, buf);
gbeardall 0:e6a539e59b52 334 fclose(fp);
sathguru 1:77e50c06ea01 335
sathguru 1:77e50c06ea01 336 printf(buf);
sathguru 1:77e50c06ea01 337
sathguru 1:77e50c06ea01 338
sathguru 1:77e50c06ea01 339
sathguru 1:77e50c06ea01 340 printf("\nTesting file write:\n");
sathguru 1:77e50c06ea01 341 FILE *fp1 = fopen( "/" FSNAME "/blue.txt", "w");
sathguru 1:77e50c06ea01 342 if ( fp1 == NULL )
sathguru 1:77e50c06ea01 343 {
sathguru 1:77e50c06ea01 344 lcd.cls();
sathguru 1:77e50c06ea01 345 lcd.locate(0,0);
sathguru 1:77e50c06ea01 346 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 347 lcd.locate(0,1);
sathguru 1:77e50c06ea01 348 lcd.printf("Opening File ");
sathguru 1:77e50c06ea01 349 wait(2);
sathguru 1:77e50c06ea01 350 lcd.cls();
sathguru 1:77e50c06ea01 351 }
sathguru 1:77e50c06ea01 352 fprintf(fp1,buf);
sathguru 1:77e50c06ea01 353 fclose(fp1);
sathguru 1:77e50c06ea01 354
sathguru 1:77e50c06ea01 355
sathguru 1:77e50c06ea01 356
sathguru 1:77e50c06ea01 357 /////////////////////////////////////////////////////////////
sathguru 1:77e50c06ea01 358 wait(0.5);
sathguru 1:77e50c06ea01 359
sathguru 1:77e50c06ea01 360 k=0;
sathguru 1:77e50c06ea01 361 lcd.cls();
sathguru 1:77e50c06ea01 362 lcd.locate(0,0);
sathguru 1:77e50c06ea01 363 lcd.printf("File ");
sathguru 1:77e50c06ea01 364 lcd.locate(0,1);
sathguru 1:77e50c06ea01 365 lcd.printf(" Transferred ");
sathguru 1:77e50c06ea01 366 wait(5);
sathguru 1:77e50c06ea01 367 }
sathguru 1:77e50c06ea01 368
sathguru 1:77e50c06ea01 369 else if(button2==0)
sathguru 1:77e50c06ea01 370 {
sathguru 1:77e50c06ea01 371
sathguru 1:77e50c06ea01 372
sathguru 1:77e50c06ea01 373 lcd.cls();
sathguru 1:77e50c06ea01 374 lcd.locate(0,0);
sathguru 1:77e50c06ea01 375 lcd.printf("1.check.txt");
sathguru 1:77e50c06ea01 376 lcd.locate(0,1);
sathguru 1:77e50c06ea01 377 lcd.printf("Transfer2Pendrv");
sathguru 1:77e50c06ea01 378 wait(7);
sathguru 1:77e50c06ea01 379 ///////////////////
sathguru 1:77e50c06ea01 380 DIR *d;
sathguru 1:77e50c06ea01 381 struct dirent *p;
sathguru 1:77e50c06ea01 382 //struct stat st;
sathguru 1:77e50c06ea01 383 //char path[PATH_MAX];
sathguru 1:77e50c06ea01 384
sathguru 1:77e50c06ea01 385
sathguru 1:77e50c06ea01 386 d = opendir("/" FSNAME);
sathguru 1:77e50c06ea01 387
sathguru 1:77e50c06ea01 388 printf("\nList of files on the flash drive:\n");
sathguru 1:77e50c06ea01 389 if ( d != NULL )
sathguru 1:77e50c06ea01 390 {
sathguru 1:77e50c06ea01 391 while ( (p = readdir(d)) != NULL )
sathguru 1:77e50c06ea01 392 {
sathguru 1:77e50c06ea01 393 printf(" - %s\n", p->d_name);
sathguru 1:77e50c06ea01 394
sathguru 1:77e50c06ea01 395 }
sathguru 1:77e50c06ea01 396 }
sathguru 1:77e50c06ea01 397 else
sathguru 1:77e50c06ea01 398 {
sathguru 1:77e50c06ea01 399 error("Could not open directory!");
sathguru 1:77e50c06ea01 400 }
sathguru 1:77e50c06ea01 401
sathguru 1:77e50c06ea01 402 mkdir("/sd/mydir", 0777);
sathguru 1:77e50c06ea01 403
sathguru 1:77e50c06ea01 404
sathguru 1:77e50c06ea01 405 FILE *fp = fopen("/sd/mydir/check.txt", "r");
sathguru 1:77e50c06ea01 406 if(fp == NULL) {
sathguru 1:77e50c06ea01 407 lcd.cls();
sathguru 1:77e50c06ea01 408 lcd.locate(0,0);
sathguru 1:77e50c06ea01 409 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 410 lcd.locate(0,1);
sathguru 1:77e50c06ea01 411 lcd.printf("Opening File ");
sathguru 1:77e50c06ea01 412 wait(2);
sathguru 1:77e50c06ea01 413 lcd.cls();
sathguru 1:77e50c06ea01 414 }
sathguru 1:77e50c06ea01 415 char buf[256];
sathguru 1:77e50c06ea01 416 if ( NULL == fgets(buf, sizeof(buf), fp) )
sathguru 1:77e50c06ea01 417 {
sathguru 1:77e50c06ea01 418 lcd.cls();
sathguru 1:77e50c06ea01 419 lcd.locate(0,0);
sathguru 1:77e50c06ea01 420 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 421 lcd.locate(0,1);
sathguru 1:77e50c06ea01 422 lcd.printf("Reading File ");
sathguru 1:77e50c06ea01 423 wait(2);
sathguru 1:77e50c06ea01 424 lcd.cls();
sathguru 1:77e50c06ea01 425 }
sathguru 1:77e50c06ea01 426 fprintf(fp,buf);
sathguru 1:77e50c06ea01 427 fclose(fp);
sathguru 1:77e50c06ea01 428
sathguru 1:77e50c06ea01 429 printf(buf);
sathguru 1:77e50c06ea01 430
sathguru 1:77e50c06ea01 431
sathguru 1:77e50c06ea01 432
sathguru 1:77e50c06ea01 433 printf("\nTesting file write:\n");
sathguru 1:77e50c06ea01 434 FILE *fp1 = fopen( "/" FSNAME "/check.txt", "w");
sathguru 1:77e50c06ea01 435 if ( fp1 == NULL )
sathguru 1:77e50c06ea01 436 {
sathguru 1:77e50c06ea01 437 lcd.cls();
sathguru 1:77e50c06ea01 438 lcd.locate(0,0);
sathguru 1:77e50c06ea01 439 lcd.printf("Error in ");
sathguru 1:77e50c06ea01 440 lcd.locate(0,1);
sathguru 1:77e50c06ea01 441 lcd.printf("Opening File ");
sathguru 1:77e50c06ea01 442 wait(2);
sathguru 1:77e50c06ea01 443 lcd.cls();
sathguru 1:77e50c06ea01 444 }
sathguru 1:77e50c06ea01 445 fprintf(fp1,buf);
sathguru 1:77e50c06ea01 446 fclose(fp1);
sathguru 1:77e50c06ea01 447
sathguru 1:77e50c06ea01 448
sathguru 1:77e50c06ea01 449
sathguru 1:77e50c06ea01 450 /////////////////////////////////////////////////////////////
sathguru 1:77e50c06ea01 451 wait(0.5);
sathguru 1:77e50c06ea01 452
sathguru 1:77e50c06ea01 453 k=0;
sathguru 1:77e50c06ea01 454 lcd.cls();
sathguru 1:77e50c06ea01 455 lcd.locate(0,0);
sathguru 1:77e50c06ea01 456 lcd.printf("File ");
sathguru 1:77e50c06ea01 457 lcd.locate(0,1);
sathguru 1:77e50c06ea01 458 lcd.printf(" Transferred ");
sathguru 1:77e50c06ea01 459 wait(5);
sathguru 1:77e50c06ea01 460 }
sathguru 1:77e50c06ea01 461
sathguru 1:77e50c06ea01 462 }
sathguru 1:77e50c06ea01 463
sathguru 1:77e50c06ea01 464
sathguru 1:77e50c06ea01 465 }
sathguru 1:77e50c06ea01 466 }
sathguru 1:77e50c06ea01 467 }
sathguru 1:77e50c06ea01 468