Kazuya Natsusako / Mbed 2 deprecated dataloger_for_modelrocket

Dependencies:   MPL115A2 mbed ADXL345 SDFileSystem

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "ADXL345.h"
00003 #include "MPL115A2.h"
00004 #include "SDFileSystem.h"
00005 
00006 ADXL345 accelerometer(p11, p12, p13, p9);
00007 MPL115A2 mpl115a2(p28, p27);
00008 SDFileSystem sd(p5, p6, p7, p8, "sd");
00009 Serial pc(USBTX, USBRX);
00010 AnalogIn temp_in(p20);
00011 AnalogIn Gyrox(p15);
00012 AnalogIn Gyroy(p16);
00013 AnalogIn hiG(p17);
00014 Ticker logger;
00015 DigitalOut ping(p17);
00016 DigitalOut myled(LED1);
00017 
00018 int readings[3] = {0,0,0};
00019 float pressure;
00020 char pres_data[16];
00021 float temp1;
00022 float temp2;
00023 
00024 volatile int cnt=0;
00025 
00026 volatile int cntt=0;
00027 
00028 int i,j,k=0;
00029 void logging(){
00030     myled=1;
00031     FILE *fp = fopen("/sd/datalog/log.txt","a");
00032     if(fp == NULL){
00033         error("Could not open file for write\n");
00034     }
00035     cnt++;
00036     accelerometer.getOutput(readings);
00037     fprintf(fp,"%d,%i,%i,%i,%4.2f,%3.2f,%f,%f,%f\n",cnt,(int16_t)readings[0], (int16_t)readings[1], (int16_t)readings[2],  mpl115a2.readPressure(),(float)temp_in.read()*3.3*100,(float)Gyrox,(float)Gyroy,(float)hiG);
00038     fclose(fp);
00039     myled=0;
00040 }
00041 
00042 int main(){
00043     accelerometer.setPowerControl(0x00);
00044     accelerometer.setDataFormatControl(0x0B);
00045     accelerometer.setDataRate(ADXL345_3200HZ);
00046     accelerometer.setPowerControl(0x08);
00047 
00048     mkdir("/sd/datalog",0777);
00049     
00050     logger.attach(&logging,0.05);
00051     k=0; 
00052     while(1){
00053     }
00054 }