Simon Hladek / Mbed 2 deprecated elevator1

Dependencies:   MMA8451Q mbed

Committer:
skirmish
Date:
Sun Dec 18 13:52:01 2016 +0000
Revision:
11:95e4e04a7dd2
Parent:
9:97b26dcd1035
Child:
12:1c7b59097090
komentare , double tap

Who changed what in which revision?

UserRevisionLine numberNew contents of line
skirmish 0:41e22e385908 1 #include "mbed.h"
skirmish 0:41e22e385908 2 #include "model.h"
skirmish 0:41e22e385908 3 #include "structures.h"
skirmish 7:9521d6ae3747 4 #include "Serial.h"
skirmish 9:97b26dcd1035 5
skirmish 11:95e4e04a7dd2 6
skirmish 11:95e4e04a7dd2 7 #include "MMA8451Q.h"
skirmish 11:95e4e04a7dd2 8
skirmish 11:95e4e04a7dd2 9 #define MMA8451_I2C_ADDRESS (0x1d<<1)
skirmish 11:95e4e04a7dd2 10 #define ON 0
skirmish 11:95e4e04a7dd2 11 #define OFF !ON
skirmish 11:95e4e04a7dd2 12 //Setup the interrupts for the MMA8451Q
skirmish 11:95e4e04a7dd2 13 InterruptIn accInt1(PTA14);
skirmish 11:95e4e04a7dd2 14 InterruptIn accInt2(PTA15);//not used in this prog but this is the other int from the accelorometer
skirmish 11:95e4e04a7dd2 15
skirmish 11:95e4e04a7dd2 16 uint8_t togstat=0;//Led status
skirmish 11:95e4e04a7dd2 17 DigitalOut bled(LED_BLUE);
skirmish 11:95e4e04a7dd2 18
skirmish 8:96c852630824 19 Timer tms;
skirmish 0:41e22e385908 20 Serial pc(USBTX,USBRX);
skirmish 9:97b26dcd1035 21 Model *mModel=new Model(&pc);
skirmish 11:95e4e04a7dd2 22 char breakEm[1];
skirmish 11:95e4e04a7dd2 23 void tapTrue(void){
skirmish 11:95e4e04a7dd2 24 if(togstat == 0){
skirmish 11:95e4e04a7dd2 25 breakEm[0]=0x01;
skirmish 11:95e4e04a7dd2 26 mModel->sendPacket(0xa0,0xf,0x00,breakEm,1);
skirmish 11:95e4e04a7dd2 27 togstat = 1;
skirmish 11:95e4e04a7dd2 28 bled=ON;
skirmish 11:95e4e04a7dd2 29 } else {
skirmish 11:95e4e04a7dd2 30 breakEm[0]=0x00;
skirmish 11:95e4e04a7dd2 31 togstat = 0;
skirmish 11:95e4e04a7dd2 32 bled=OFF;
skirmish 11:95e4e04a7dd2 33 }
skirmish 11:95e4e04a7dd2 34
skirmish 11:95e4e04a7dd2 35 }
skirmish 7:9521d6ae3747 36 int main()
skirmish 7:9521d6ae3747 37 {
skirmish 7:9521d6ae3747 38
skirmish 11:95e4e04a7dd2 39 MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS);//accelorometer instance
skirmish 11:95e4e04a7dd2 40
skirmish 11:95e4e04a7dd2 41 acc.setDoubleTap();//Setup the MMA8451Q to look for a double Tap
skirmish 11:95e4e04a7dd2 42 accInt1.rise(&tapTrue);//call tapTrue when an interrupt is generated on PTA14
skirmish 11:95e4e04a7dd2 43
skirmish 7:9521d6ae3747 44 while(1) {
skirmish 7:9521d6ae3747 45
skirmish 9:97b26dcd1035 46 mModel->doSomething(mModel->getSourceAdd());
skirmish 9:97b26dcd1035 47 };
skirmish 11:95e4e04a7dd2 48
skirmish 0:41e22e385908 49 }