blablabla

Dependencies:   MAG3110 MMA8451Q SLCD- TSI USBDevice mbed

Committer:
Osator
Date:
Wed Apr 16 12:20:00 2014 +0000
Revision:
0:339b7abfa147
blablabla

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Osator 0:339b7abfa147 1 //USB Academy - Lab2 rev 00
Osator 0:339b7abfa147 2 //_____________________________________________________________//
Osator 0:339b7abfa147 3 //======== INCLUDES ===========================================//
Osator 0:339b7abfa147 4 //¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯//
Osator 0:339b7abfa147 5 #include "mbed.h"
Osator 0:339b7abfa147 6 #include "MMA8451Q.h"
Osator 0:339b7abfa147 7 //#include "MAG3110.h"
Osator 0:339b7abfa147 8 //#include "SLCD.h"
Osator 0:339b7abfa147 9 //#include "TSISensor.h"
Osator 0:339b7abfa147 10
Osator 0:339b7abfa147 11 //#include "USBMouse.h" //Lab1-Hid
Osator 0:339b7abfa147 12 //#include "USBSerial.h" //Lab2-cdc
Osator 0:339b7abfa147 13 //#include "USBHostMSD.h" //Lab3-Msd
Osator 0:339b7abfa147 14
Osator 0:339b7abfa147 15
Osator 0:339b7abfa147 16
Osator 0:339b7abfa147 17
Osator 0:339b7abfa147 18
Osator 0:339b7abfa147 19 //_____________________________________________________________//
Osator 0:339b7abfa147 20 //======== DEFINES & VARIABLES ================================//
Osator 0:339b7abfa147 21 //¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯//
Osator 0:339b7abfa147 22 #define LED_ON 0 //outON, pwmON
Osator 0:339b7abfa147 23 #define LED_OFF 1 //outOFF,pwmOFF
Osator 0:339b7abfa147 24 DigitalOut gLED(LED_GREEN); //PTD5
Osator 0:339b7abfa147 25
Osator 0:339b7abfa147 26 #define rLEDperiod 150 //[ms]
Osator 0:339b7abfa147 27 PwmOut rLED(LED_RED); //PTE29
Osator 0:339b7abfa147 28
Osator 0:339b7abfa147 29 #define PRESS_ON 0
Osator 0:339b7abfa147 30 #define PRESS_OFF 1
Osator 0:339b7abfa147 31 DigitalIn sw1(PTC3); //if(sw1) Release else Press
Osator 0:339b7abfa147 32 DigitalIn sw3(PTC12); //while(sw3); wait for Press
Osator 0:339b7abfa147 33
Osator 0:339b7abfa147 34 #define MMA8451_I2C_ADDRESS (0x1d<<1)
Osator 0:339b7abfa147 35 MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS);
Osator 0:339b7abfa147 36
Osator 0:339b7abfa147 37 struct KL46_SENSOR_DATA {
Osator 0:339b7abfa147 38 int sw1State;
Osator 0:339b7abfa147 39 int sw3State;
Osator 0:339b7abfa147 40 float accValX;
Osator 0:339b7abfa147 41 float accValY;
Osator 0:339b7abfa147 42 float accValZ;
Osator 0:339b7abfa147 43 } sensorData;
Osator 0:339b7abfa147 44 #define sD sensorData
Osator 0:339b7abfa147 45
Osator 0:339b7abfa147 46
Osator 0:339b7abfa147 47
Osator 0:339b7abfa147 48
Osator 0:339b7abfa147 49 //_____________________________________________________________//
Osator 0:339b7abfa147 50 //======== MAIN() =============================================//
Osator 0:339b7abfa147 51 //¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯//
Osator 0:339b7abfa147 52 int main(void)
Osator 0:339b7abfa147 53 {
Osator 0:339b7abfa147 54 //---- MAIN/Inits -----------------------------------------//
Osator 0:339b7abfa147 55
Osator 0:339b7abfa147 56 sw1.mode(PullUp);
Osator 0:339b7abfa147 57 sw3.mode(PullUp);
Osator 0:339b7abfa147 58
Osator 0:339b7abfa147 59 gLED = LED_ON; //Green LED ON to indicate running/writing
Osator 0:339b7abfa147 60 rLED = LED_OFF; //Red LED OFF
Osator 0:339b7abfa147 61 rLED.period(rLEDperiod); //Red LED (rLED) tsi/accZ/mag
Osator 0:339b7abfa147 62
Osator 0:339b7abfa147 63 //---- MAIN/Inits (Wait4SW1) -> Start! --------------------//
Osator 0:339b7abfa147 64
Osator 0:339b7abfa147 65 //---- MAIN/Inits Interface -------------------------------//
Osator 0:339b7abfa147 66
Osator 0:339b7abfa147 67 //---- MAIN/Inits Labs ------------------------------------//
Osator 0:339b7abfa147 68
Osator 0:339b7abfa147 69 //---- MAIN/Inits (Wait4SW1) -> Calib. eCompass -----------//
Osator 0:339b7abfa147 70
Osator 0:339b7abfa147 71 //---- MAIN/Inits Done! (Wait4SW1) -> MANI/Loop -----------//
Osator 0:339b7abfa147 72
Osator 0:339b7abfa147 73 gLED = LED_OFF; //Inits are done
Osator 0:339b7abfa147 74
Osator 0:339b7abfa147 75 //---- MAIN/Loop -----------------------------------------//
Osator 0:339b7abfa147 76 while (1) {
Osator 0:339b7abfa147 77
Osator 0:339b7abfa147 78 // MAIN/Loop/Sensing and Storing data -----------------//
Osator 0:339b7abfa147 79 sD.sw1State = sw1; sD.sw3State = sw3;
Osator 0:339b7abfa147 80 sD.accValX = acc.getAccX(); //accX[-1..1]->mouse (Lab1)
Osator 0:339b7abfa147 81 sD.accValY = acc.getAccY(); //accY[-1..1]->mouse (Lab1)
Osator 0:339b7abfa147 82 sD.accValZ = acc.getAccZ(); //accZ[-1..1]->rLED
Osator 0:339b7abfa147 83
Osator 0:339b7abfa147 84 // MAIN/Loop/Processing and Actions -------------------//
Osator 0:339b7abfa147 85
Osator 0:339b7abfa147 86 //acc: z-axis 1g min-blinking//acc: z-axis 1g min-blinking
Osator 0:339b7abfa147 87 rLED = abs(sD.accValZ);
Osator 0:339b7abfa147 88
Osator 0:339b7abfa147 89 wait(0.05); //wait 50ms
Osator 0:339b7abfa147 90 }
Osator 0:339b7abfa147 91 }
Osator 0:339b7abfa147 92
Osator 0:339b7abfa147 93
Osator 0:339b7abfa147 94
Osator 0:339b7abfa147 95
Osator 0:339b7abfa147 96
Osator 0:339b7abfa147 97 //_____________________________________________________________//
Osator 0:339b7abfa147 98 //======== FUNC() =============================================//
Osator 0:339b7abfa147 99 //¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯//
Osator 0:339b7abfa147 100