esemi00

Dependencies:   mbed FatFileSystemCpp

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers mainUSB3.cpp Source File

mainUSB3.cpp

00001 //mainUSB3.cpp
00002 #include "mbed.h"
00003 #include "MSCFileSystem.h"
00004 #define FSNAME "usb"//FATファイルシステムのマウント名(任意) /マウント名 がルートディレクトリ
00005 
00006 Serial pc(USBTX,USBRX);
00007 MSCFileSystem msc(FSNAME);
00008 AnalogIn ond(p15);          // 温度センサ LM61 10mV/℃ 0℃ 600mV
00009 
00010 int main(){ 
00011 DIR *d;     //ディレクトリ
00012     struct dirent *p;       //ディレクトリ内情報(ファイル名、ファイルタイプ)
00013     char buf_f[1024];       //ファイル読み出し時のバッファ
00014     float a,b,c     ;//温度計算時使用
00015 
00016     d = opendir("/" FSNAME "/web"); //①   // /usb/webをオープン
00017     
00018     pc.printf("\nList of files on the flash drive:\r\n");
00019  
00020     if ( d != NULL )    {
00021         while ( (p = readdir(d)) != NULL ) {        //ディレクトリ内情報読み出し
00022             pc.printf(" - %s\n", p->d_name);        //ファイル名を表示
00023         }
00024     } else {
00025         pc.printf("Could not open directory!\r\n");
00026     }
00027 
00028     pc.printf("\r\nwrite file test\r\n");
00029 
00030     FILE *write_fp = fopen("/" FSNAME "/web/ond_test.txt", "aw");//② //追加書き(a)および新規書き込み(w)
00031     if(write_fp != NULL) {
00032     //ファイルがオープンできた
00033         a = ond.read();     // LM61 0.01V/ ℃    0 ℃ 0.6V   (b - 0.6)/0.01
00034         b = a * 3.3;//③       
00035         c = b * 100 - 60;//④
00036         fprintf(write_fp,"ond=%f\r\n", c);//⑤     
00037         pc.printf("%f V:%f C:%f\n", a, b, c);
00038         fclose(write_fp);
00039     }
00040         
00041     pc.printf("\r\nread file test\r\n");
00042     FILE *read1_fp = fopen("/" FSNAME "/web/ond_test.txt", "r"); //⑥ //ファイル読み込み(r)
00043     if(read1_fp != NULL) {
00044         //ファイルがオープンできた
00045         while( NULL != fgets(buf_f, sizeof(buf_f), read1_fp) ) {
00046             pc.printf("%s", buf_f);
00047             //ファイル読み込み用バッファメモリを初期化
00048             memset(buf_f, 0, sizeof(buf_f));//これがないと文字化けみたいになる
00049         }
00050         fclose(read1_fp);
00051     }
00052 }
00053 
00054 
00055 // "/" FSNAME "/web" //①
00056 // "/" FSNAME "/web/ond_test.txt", "aw" //②
00057 // a * 3.3;//③
00058 // b * 100 - 60;//④   
00059 // write_fp,"ond=%f\r\n", c//⑤
00060 // "/" FSNAME "/web/ond_test.txt", "r" //⑥
00061