Data collection project

Dependencies:   mbed MMA8452Q SDFileSystem

Committer:
ccschneider
Date:
Sun Dec 23 17:13:49 2018 +0000
Revision:
0:c654fb06ff86
Data collection project;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ccschneider 0:c654fb06ff86 1 // Cecilia Schneider
ccschneider 0:c654fb06ff86 2 // OCE 360 Final Project
ccschneider 0:c654fb06ff86 3
ccschneider 0:c654fb06ff86 4 #include "mbed.h"
ccschneider 0:c654fb06ff86 5 #include "MMA8452Q.h"
ccschneider 0:c654fb06ff86 6 #include "SDFileSystem.h"
ccschneider 0:c654fb06ff86 7
ccschneider 0:c654fb06ff86 8 // AnalogIn ain(p15); // temp sensor on p15
ccschneider 0:c654fb06ff86 9 DigitalIn switchin(p11); // switch on p11
ccschneider 0:c654fb06ff86 10
ccschneider 0:c654fb06ff86 11 // Accelerometer
ccschneider 0:c654fb06ff86 12 MMA8452Q accel(p28, p27, 0x1D); // Accelerometer - SDA, SCL, and I2C address
ccschneider 0:c654fb06ff86 13
ccschneider 0:c654fb06ff86 14 // Serial terminal
ccschneider 0:c654fb06ff86 15 Serial pc(USBTX, USBRX);
ccschneider 0:c654fb06ff86 16
ccschneider 0:c654fb06ff86 17 // SD card reader
ccschneider 0:c654fb06ff86 18 SDFileSystem sd(p5, p6, p7, p8, "sd");
ccschneider 0:c654fb06ff86 19
ccschneider 0:c654fb06ff86 20 int main() {
ccschneider 0:c654fb06ff86 21 // initialize accelerometer
ccschneider 0:c654fb06ff86 22 accel.init();
ccschneider 0:c654fb06ff86 23 float x;
ccschneider 0:c654fb06ff86 24 float y;
ccschneider 0:c654fb06ff86 25 float z;
ccschneider 0:c654fb06ff86 26
ccschneider 0:c654fb06ff86 27 // define and open file
ccschneider 0:c654fb06ff86 28 FILE *file;
ccschneider 0:c654fb06ff86 29 file = fopen("/sd/acceldata.txt", "w");
ccschneider 0:c654fb06ff86 30
ccschneider 0:c654fb06ff86 31 while(1){
ccschneider 0:c654fb06ff86 32 if (switchin == 1){ // store data from accelerometer in x, y , z
ccschneider 0:c654fb06ff86 33 x = accel.readX();
ccschneider 0:c654fb06ff86 34 y = accel.readY();
ccschneider 0:c654fb06ff86 35 z = accel.readZ();
ccschneider 0:c654fb06ff86 36 fprintf(file, "%3.2f %3.2f %3.2f \n\r", x, y, z); // write accelerometer data to file
ccschneider 0:c654fb06ff86 37 }
ccschneider 0:c654fb06ff86 38 else ()
ccschneider 0:c654fb06ff86 39 fclose(file); // close file here
ccschneider 0:c654fb06ff86 40 file = fopen("/sd/acceldata.txt","r"); // reopen for reading
ccschneider 0:c654fb06ff86 41 pc.printf("%3.2f %3.2f %3.2f \n\r", x, y, z); // print data to serial terminal
ccschneider 0:c654fb06ff86 42 pc.printf("TEST");
ccschneider 0:c654fb06ff86 43 break; // only do this once?
ccschneider 0:c654fb06ff86 44 }
ccschneider 0:c654fb06ff86 45 }
ccschneider 0:c654fb06ff86 46
ccschneider 0:c654fb06ff86 47
ccschneider 0:c654fb06ff86 48
ccschneider 0:c654fb06ff86 49
ccschneider 0:c654fb06ff86 50
ccschneider 0:c654fb06ff86 51
ccschneider 0:c654fb06ff86 52
ccschneider 0:c654fb06ff86 53
ccschneider 0:c654fb06ff86 54
ccschneider 0:c654fb06ff86 55
ccschneider 0:c654fb06ff86 56
ccschneider 0:c654fb06ff86 57
ccschneider 0:c654fb06ff86 58
ccschneider 0:c654fb06ff86 59
ccschneider 0:c654fb06ff86 60
ccschneider 0:c654fb06ff86 61
ccschneider 0:c654fb06ff86 62
ccschneider 0:c654fb06ff86 63
ccschneider 0:c654fb06ff86 64
ccschneider 0:c654fb06ff86 65
ccschneider 0:c654fb06ff86 66
ccschneider 0:c654fb06ff86 67