Sumit Pandey
/
adxl335_mbed_serial
transmission of calibrated accelerometer data to the computer for Air Hockey.
main.cpp@0:6754c50b1d75, 2013-10-27 (annotated)
- Committer:
- sumitpuneet
- Date:
- Sun Oct 27 18:30:26 2013 +0000
- Revision:
- 0:6754c50b1d75
accelerometer data transmission adxl335
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sumitpuneet | 0:6754c50b1d75 | 1 | #include "mbed.h" |
sumitpuneet | 0:6754c50b1d75 | 2 | |
sumitpuneet | 0:6754c50b1d75 | 3 | AnalogIn inputx(p20); // input pins 20,19,18 for x,y,z axis respectively. |
sumitpuneet | 0:6754c50b1d75 | 4 | AnalogIn inputy(p19); |
sumitpuneet | 0:6754c50b1d75 | 5 | AnalogIn inputz(p18); |
sumitpuneet | 0:6754c50b1d75 | 6 | Serial pc(USBTX,USBRX); //Serial class for transmission of serial data |
sumitpuneet | 0:6754c50b1d75 | 7 | |
sumitpuneet | 0:6754c50b1d75 | 8 | int main() { |
sumitpuneet | 0:6754c50b1d75 | 9 | pc.baud(9600); // fixing a constant baud rate of 9600 bps at which mbed will interact with computer |
sumitpuneet | 0:6754c50b1d75 | 10 | float cal_x=0,cal_y=0,cal_z=0; //caliberation variables |
sumitpuneet | 0:6754c50b1d75 | 11 | int x=0,y=0,z=0; // variables for x,y,z axes |
sumitpuneet | 0:6754c50b1d75 | 12 | int i=100; |
sumitpuneet | 0:6754c50b1d75 | 13 | while(i--) //small timed loop to caliberate the accelerometer with currentl position of the accelerometer |
sumitpuneet | 0:6754c50b1d75 | 14 | { |
sumitpuneet | 0:6754c50b1d75 | 15 | cal_x=inputx*100; |
sumitpuneet | 0:6754c50b1d75 | 16 | cal_y=inputy*100; |
sumitpuneet | 0:6754c50b1d75 | 17 | cal_z=inputz*100 - 10; |
sumitpuneet | 0:6754c50b1d75 | 18 | } |
sumitpuneet | 0:6754c50b1d75 | 19 | while(1) |
sumitpuneet | 0:6754c50b1d75 | 20 | { |
sumitpuneet | 0:6754c50b1d75 | 21 | x=4*(cal_x - inputx*100); |
sumitpuneet | 0:6754c50b1d75 | 22 | y=4*(cal_y - inputy*100); |
sumitpuneet | 0:6754c50b1d75 | 23 | z=4*(inputz*100 - cal_z); |
sumitpuneet | 0:6754c50b1d75 | 24 | pc.printf("%d,%d,%d *",x+50,y+50,z+50); //passing the caliberated x,y,z values to the computer. |
sumitpuneet | 0:6754c50b1d75 | 25 | } |
sumitpuneet | 0:6754c50b1d75 | 26 | } |