
prima bozza del lab2
main.cpp
- Committer:
- driu91
- Date:
- 2014-12-12
- Revision:
- 0:126b724a2fbc
- Child:
- 1:f954996ba25d
File content as of revision 0:126b724a2fbc:
#include "mbed.h" #include "MMA8451Q.h" #include <I2C.h> /* #if defined (TARGET_KL25Z) || defined (TARGET_KL46Z) PinName const SDA = PTE25; PinName const SCL = PTE24; #elif defined (TARGET_KL05Z) PinName const SDA = PTB4; PinName const SCL = PTB3; #elif defined (TARGET_K20D50M) PinName const SDA = PTB1; PinName const SCL = PTB0; #else #error TARGET NOT DEFINED #endif */ #define MMA8451_I2C_ADDRESS 0x1d #define SDA PTE25 #define SCL PTE24 int main(void) { Serial pc(USBTX, USBRX); char ctrl1_readadd = 0x3A; char ctrl1value; bool ack; //int reg=0x2A; I2C mm_i2c(SDA,SCL); mm_i2c.frequency(100000); //MMA8451Q acc(SDA, SCL, MMA8451_I2C_ADDRESS); ack = mm_i2c.write(MMA8451_I2C_ADDRESS,&ctrl1_readadd,1,true); if (ack == 1){ mm_i2c.write(MMA8451_I2C_ADDRESS,&ctrl1_readadd,1,true); } mm_i2c.read(MMA8451_I2C_ADDRESS,&ctrl1value,1,false); pc.printf("%d ",ctrl1value); //i2c.write(MMA8451_I2C_ADDRESS,CTRL_REG & "11111110",8,false); /* MMA8451Q acc(SDA, SCL, MMA8451_I2C_ADDRESS); PwmOut rled(LED1); PwmOut gled(LED2); PwmOut bled(LED3); printf("MMA8451 ID: %d\n", acc.getWhoAmI()); while (true) { float x, y, z; x = abs(acc.getAccX()); y = abs(acc.getAccY()); z = abs(acc.getAccZ()); rled = 1.0f - x; gled = 1.0f - y; bled = 1.0f - z; wait(0.1f); printf("X: %1.2f, Y: %1.2f, Z: %1.2f\n", x, y, z); }*/ }