Accelerometer library (simple)

Dependents:   Shake_the_maze

Committer:
gbr1mbed
Date:
Wed Feb 18 22:07:41 2015 +0000
Revision:
2:78ba7ed0699c
Parent:
1:418e3a6f6848
Improved x y z

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gbr1mbed 1:418e3a6f6848 1 /*
gbr1mbed 1:418e3a6f6848 2 Copyright (c) 2015 Giovanni di Dio Bruno (www.gbr1technologies.altervista.org)
gbr1mbed 1:418e3a6f6848 3
gbr1mbed 1:418e3a6f6848 4 Permission is hereby granted, free of charge, to any person obtaining a copy
gbr1mbed 1:418e3a6f6848 5 of this software and associated documentation files (the "Software"), to deal
gbr1mbed 1:418e3a6f6848 6 in the Software without restriction, including without limitation the rights
gbr1mbed 1:418e3a6f6848 7 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
gbr1mbed 1:418e3a6f6848 8 copies of the Software, and to permit persons to whom the Software is
gbr1mbed 1:418e3a6f6848 9 furnished to do so, subject to the following conditions:
gbr1mbed 1:418e3a6f6848 10
gbr1mbed 1:418e3a6f6848 11 The above copyright notice and this permission notice shall be included in
gbr1mbed 1:418e3a6f6848 12 all copies or substantial portions of the Software.
gbr1mbed 1:418e3a6f6848 13
gbr1mbed 1:418e3a6f6848 14 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
gbr1mbed 1:418e3a6f6848 15 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
gbr1mbed 1:418e3a6f6848 16 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
gbr1mbed 1:418e3a6f6848 17 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
gbr1mbed 1:418e3a6f6848 18 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
gbr1mbed 1:418e3a6f6848 19 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
gbr1mbed 1:418e3a6f6848 20 THE SOFTWARE.
gbr1mbed 1:418e3a6f6848 21 */
gbr1mbed 1:418e3a6f6848 22
gbr1mbed 1:418e3a6f6848 23
gbr1mbed 0:5764f3649fed 24 #ifndef __MMA8453_H__
gbr1mbed 0:5764f3649fed 25 #define __MMA8453_H__
gbr1mbed 0:5764f3649fed 26
gbr1mbed 0:5764f3649fed 27 #include "mbed.h"
gbr1mbed 0:5764f3649fed 28
gbr1mbed 0:5764f3649fed 29 class MMA8453{
gbr1mbed 0:5764f3649fed 30 private:
gbr1mbed 1:418e3a6f6848 31
gbr1mbed 1:418e3a6f6848 32 //sensor address
gbr1mbed 1:418e3a6f6848 33 static const char I2C_ADDR = 0x1C << 1;
gbr1mbed 0:5764f3649fed 34 I2C i2c;
gbr1mbed 1:418e3a6f6848 35
gbr1mbed 0:5764f3649fed 36 double convert(char * buffer);
gbr1mbed 0:5764f3649fed 37 void readRegisters(char address, char * buffer, int len);
gbr1mbed 0:5764f3649fed 38 int writeRegister(char address, char value);
gbr1mbed 0:5764f3649fed 39
gbr1mbed 0:5764f3649fed 40 public:
gbr1mbed 0:5764f3649fed 41 MMA8453(PinName sda, PinName scl);
gbr1mbed 1:418e3a6f6848 42
gbr1mbed 0:5764f3649fed 43 double getX();
gbr1mbed 0:5764f3649fed 44 double getY();
gbr1mbed 0:5764f3649fed 45 double getZ();
gbr1mbed 1:418e3a6f6848 46
gbr1mbed 0:5764f3649fed 47 void getXYZ(double& x, double& y, double& z);
gbr1mbed 0:5764f3649fed 48 };
gbr1mbed 0:5764f3649fed 49
gbr1mbed 0:5764f3649fed 50 #endif