s
Dependencies: C12832_lcd CMPS03 GPS MMA7660 mbed
main.cpp@0:ed3bb00f66af, 2016-03-08 (annotated)
- Committer:
- gegjackson
- Date:
- Tue Mar 08 14:50:55 2016 +0000
- Revision:
- 0:ed3bb00f66af
a
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
gegjackson | 0:ed3bb00f66af | 1 | #include "mbed.h" |
gegjackson | 0:ed3bb00f66af | 2 | #include "CMPS03.h"//added |
gegjackson | 0:ed3bb00f66af | 3 | #include "MMA7660.h" |
gegjackson | 0:ed3bb00f66af | 4 | #include "stdio.h" //needed? |
gegjackson | 0:ed3bb00f66af | 5 | #include "GPS.h" |
gegjackson | 0:ed3bb00f66af | 6 | |
gegjackson | 0:ed3bb00f66af | 7 | |
gegjackson | 0:ed3bb00f66af | 8 | /*THIS FILE IS MADE TO RUN ON THE MBED. IT WILL TAKE ACCELEROMETER VALUES AND WRITE THEM |
gegjackson | 0:ed3bb00f66af | 9 | TO A TEXT FILE AND THEN A CONNECTED COMPUTER*/ |
gegjackson | 0:ed3bb00f66af | 10 | GPS gps(p13, p14);// which pins??? |
gegjackson | 0:ed3bb00f66af | 11 | CMPS03 compass(p9, p10, CMPS03_DEFAULT_I2C_ADDRESS);//added |
gegjackson | 0:ed3bb00f66af | 12 | DigitalOut myled(LED1); |
gegjackson | 0:ed3bb00f66af | 13 | MMA7660 MMA(p28, p27); // Accelerometer connections |
gegjackson | 0:ed3bb00f66af | 14 | float ax, ay, az; //allocations for the x, y, z values |
gegjackson | 0:ed3bb00f66af | 15 | Serial pc(USBTX,USBRX); // serial port |
gegjackson | 0:ed3bb00f66af | 16 | LocalFileSystem local("local"); // Create the local filesystem called "local" |
gegjackson | 0:ed3bb00f66af | 17 | int main() |
gegjackson | 0:ed3bb00f66af | 18 | { |
gegjackson | 0:ed3bb00f66af | 19 | float data[100]; // three data arrays, with 100 entries |
gegjackson | 0:ed3bb00f66af | 20 | float data1[100]; |
gegjackson | 0:ed3bb00f66af | 21 | float data2[100]; |
gegjackson | 0:ed3bb00f66af | 22 | float data3[100]; |
gegjackson | 0:ed3bb00f66af | 23 | |
gegjackson | 0:ed3bb00f66af | 24 | |
gegjackson | 0:ed3bb00f66af | 25 | for (int i=0; i<100; i++) |
gegjackson | 0:ed3bb00f66af | 26 | { |
gegjackson | 0:ed3bb00f66af | 27 | ax=MMA.x(); //ax is the x value from the accelerometer. the *90 part is to get an angle |
gegjackson | 0:ed3bb00f66af | 28 | data[i] = ax ; //place the value of the accelerometer into the 1st array |
gegjackson | 0:ed3bb00f66af | 29 | ay=MMA.y(); |
gegjackson | 0:ed3bb00f66af | 30 | data1[i] = ay ; |
gegjackson | 0:ed3bb00f66af | 31 | az=MMA.z(); |
gegjackson | 0:ed3bb00f66af | 32 | data2[i] = az; |
gegjackson | 0:ed3bb00f66af | 33 | data3[i] = (compass.readBearing() / 10.0); |
gegjackson | 0:ed3bb00f66af | 34 | |
gegjackson | 0:ed3bb00f66af | 35 | |
gegjackson | 0:ed3bb00f66af | 36 | wait (0.1);// so all the results aren't taken as quickly as the mbed can process. total time = wait time * number of items in array |
gegjackson | 0:ed3bb00f66af | 37 | } |
gegjackson | 0:ed3bb00f66af | 38 | |
gegjackson | 0:ed3bb00f66af | 39 | FILE *fp = fopen("/local/values.txt", "w"); // Open "values.txt" |
gegjackson | 0:ed3bb00f66af | 40 | fprintf(fp,"Location is: %f , %f", gps.longitude, gps.latitude); |
gegjackson | 0:ed3bb00f66af | 41 | for (int i=0; i<100; i++) |
gegjackson | 0:ed3bb00f66af | 42 | { |
gegjackson | 0:ed3bb00f66af | 43 | fprintf(fp,"%i %f %f %f Bearing:%f \r\n ", i, data[i], data1[i], data2[i], data3[i]); //print all the data values to the file |
gegjackson | 0:ed3bb00f66af | 44 | } |
gegjackson | 0:ed3bb00f66af | 45 | fclose(fp); //save and close the file |
gegjackson | 0:ed3bb00f66af | 46 | |
gegjackson | 0:ed3bb00f66af | 47 | |
gegjackson | 0:ed3bb00f66af | 48 | |
gegjackson | 0:ed3bb00f66af | 49 | |
gegjackson | 0:ed3bb00f66af | 50 | |
gegjackson | 0:ed3bb00f66af | 51 | } |
gegjackson | 0:ed3bb00f66af | 52 | |
gegjackson | 0:ed3bb00f66af | 53 | |
gegjackson | 0:ed3bb00f66af | 54 |