KL25Z aplicação com o aceletrometro

Dependencies:   MMA8451Q mbed

Committer:
mgsilveira
Date:
Sat Oct 17 17:13:52 2015 +0000
Revision:
0:9393b9bec6e0
Lib para aquisi??o dos dados do aceleremetro

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mgsilveira 0:9393b9bec6e0 1 #include "mbed.h"
mgsilveira 0:9393b9bec6e0 2 #include "MMA8451Q.h"
mgsilveira 0:9393b9bec6e0 3
mgsilveira 0:9393b9bec6e0 4 #if defined (TARGET_KL25Z) || defined (TARGET_KL46Z)
mgsilveira 0:9393b9bec6e0 5 PinName const SDA = PTE25;
mgsilveira 0:9393b9bec6e0 6 PinName const SCL = PTE24;
mgsilveira 0:9393b9bec6e0 7 #elif defined (TARGET_KL05Z)
mgsilveira 0:9393b9bec6e0 8 PinName const SDA = PTB4;
mgsilveira 0:9393b9bec6e0 9 PinName const SCL = PTB3;
mgsilveira 0:9393b9bec6e0 10 #elif defined (TARGET_K20D50M)
mgsilveira 0:9393b9bec6e0 11 PinName const SDA = PTB1;
mgsilveira 0:9393b9bec6e0 12 PinName const SCL = PTB0;
mgsilveira 0:9393b9bec6e0 13 #else
mgsilveira 0:9393b9bec6e0 14 #error TARGET NOT DEFINED
mgsilveira 0:9393b9bec6e0 15 #endif
mgsilveira 0:9393b9bec6e0 16
mgsilveira 0:9393b9bec6e0 17 #define MMA8451_I2C_ADDRESS (0x1d<<1)
mgsilveira 0:9393b9bec6e0 18
mgsilveira 0:9393b9bec6e0 19 // Open USB Serial Conection
mgsilveira 0:9393b9bec6e0 20 Serial pc(USBTX, USBRX); // tx, rx
mgsilveira 0:9393b9bec6e0 21
mgsilveira 0:9393b9bec6e0 22 int main(void)
mgsilveira 0:9393b9bec6e0 23 {
mgsilveira 0:9393b9bec6e0 24 pc.baud(115200);
mgsilveira 0:9393b9bec6e0 25 MMA8451Q acc(SDA, SCL, MMA8451_I2C_ADDRESS);
mgsilveira 0:9393b9bec6e0 26 PwmOut rled(LED1);
mgsilveira 0:9393b9bec6e0 27 PwmOut gled(LED2);
mgsilveira 0:9393b9bec6e0 28 PwmOut bled(LED3);
mgsilveira 0:9393b9bec6e0 29
mgsilveira 0:9393b9bec6e0 30 pc.printf("MMA8451 ID: %d\n", acc.getWhoAmI());
mgsilveira 0:9393b9bec6e0 31
mgsilveira 0:9393b9bec6e0 32 while (true) {
mgsilveira 0:9393b9bec6e0 33 float data[3];
mgsilveira 0:9393b9bec6e0 34
mgsilveira 0:9393b9bec6e0 35 //x = abs(acc.getAccX());
mgsilveira 0:9393b9bec6e0 36 //y = abs(acc.getAccY());
mgsilveira 0:9393b9bec6e0 37 //z = abs(acc.getAccZ());
mgsilveira 0:9393b9bec6e0 38 acc.getAccAllAxis(data);
mgsilveira 0:9393b9bec6e0 39 rled = 1.0f - abs(data[0]);
mgsilveira 0:9393b9bec6e0 40 gled = 1.0f - abs(data[1]);
mgsilveira 0:9393b9bec6e0 41 bled = 1.0f - abs(data[2]);
mgsilveira 0:9393b9bec6e0 42 wait(0.1f);
mgsilveira 0:9393b9bec6e0 43 //pc.printf("X: %1.2f, Y: %1.2f, Z: %1.2f\t R: %1.2f, G: %1.2f, B: %1.2f\n\r", x, y, z, rled.read(), gled.read(), bled.read());
mgsilveira 0:9393b9bec6e0 44 pc.printf("%1.2f;%1.2f;%1.2f\n", data[0],data[1],data[2]);
mgsilveira 0:9393b9bec6e0 45
mgsilveira 0:9393b9bec6e0 46
mgsilveira 0:9393b9bec6e0 47
mgsilveira 0:9393b9bec6e0 48 }
mgsilveira 0:9393b9bec6e0 49 }