Samir Bouaziz
/
test_bmp085
test capteurs BMP085 météo
Diff: main.cpp
- Revision:
- 0:ad2afb285975
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Fri Oct 14 18:44:39 2011 +0000 @@ -0,0 +1,58 @@ +#include "mbed.h" +#include "BMP085.h" +#include "string.h" + +BMP085 bmp085(p9, p10); + +DigitalOut myled(LED1); +DigitalOut myled4(LED4); +Serial pc(USBTX, USBRX); + +LocalFileSystem local("local"); + +int main() { + float p, t; + int ii=0; + char pname[12],stval[6]; + DIR *d = opendir("/local"); // Opens the root directory of the local file system + struct dirent *pdir; + int indice=1; + while((pdir = readdir(d)) != NULL) { // Print the names of the files in the local file system + pc.printf("%u %s\r",indice, pdir->d_name); + if(strstr(pdir->d_name,"OUT")== pdir->d_name) { + indice++; + } + } + closedir(d); + strcpy(pname,"/local/out"); + sprintf(stval,"%02u",indice); + strcat(pname,stval); + strcat(pname,".txt"); + + FILE *fp = fopen(pname, "w"); // Open "out.txt" on the local file system for writing + myled4=0; + while(1) { + myled = 1; + + bmp085.update(); + p = bmp085.get_pressure(); + t = bmp085.get_temperature(); +// if(t>24.0){ +// myled4=1; +// }else{ +// myled4=0; +// } + pc.printf("p:%6.2f hPa / t:%6.2f C\r", p, t); + + if(ii<60){ + ii=ii+1; + fprintf(fp,"p:%6.2f hPa / t:%6.2f C\r", p, t); + }else{ + fclose(fp); + myled4=1; + } + + myled = 0; + wait(0.5); + } +}