|
upm
1.5.0
Sensor/Actuator repository for libmraa (v1.8.0)
|
API for the MMA7660 I2C 3-Axis Digital Accelerometer. More...
UPM module for the MMA7660 I2C 3-axis digital accelerometer. This device supports a variety of capabilities, including the generation of interrupts for various conditions, tilt and basic gesture detection, and X/Y/Z-axis measurements of g-forces being applied (up to 1.5g)
This module was tested with the Grove 3-Axis Digital Accelerometer (1.5g)
Public Member Functions | |
| MMA7660 (int bus, uint8_t address=MMA7660_DEFAULT_I2C_ADDR) | |
| virtual | ~MMA7660 () |
| bool | writeByte (uint8_t reg, uint8_t byte) |
| uint8_t | readByte (uint8_t reg) |
| void | getRawValues (int *x, int *y, int *z) |
| void | getAcceleration (float *ax, float *ay, float *az) |
| int | getVerifiedAxis (MMA7660_REG_T axis) |
| uint8_t | getVerifiedTilt () |
| void | setModeActive () |
| void | setModeStandby () |
| uint8_t | tiltBackFront () |
| uint8_t | tiltLandscapePortrait () |
| bool | tiltTap () |
| bool | tiltShake () |
| void | uninstallISR () |
| bool | setInterruptBits (uint8_t ibits) |
| bool | setSampleRate (MMA7660_AUTOSLEEP_T sr) |
| void | installISR (int pin, void(*isr)(void *), void *arg) |
Protected Attributes | |
| mma7660_context | m_mma7660 |
| MMA7660 | ( | int | bus, |
| uint8_t | address = MMA7660_DEFAULT_I2C_ADDR |
||
| ) |
MMA7660 constructor
| bus | I2C bus to use |
| address | Address for this sensor; default is 0x55 |
| bool writeByte | ( | uint8_t | reg, |
| uint8_t | byte | ||
| ) |
Writes a byte value into a register
| reg | Register location to write into |
| byte | Byte to write |

| uint8_t readByte | ( | uint8_t | reg | ) |
Reads a byte value from a register
| reg | Register location to read from |

| void getRawValues | ( | int * | x, |
| int * | y, | ||
| int * | z | ||
| ) |
Reads the current value of conversion
| x | Returned x value |
| y | Returned y value |
| z | Returned z value |

| void getAcceleration | ( | float * | ax, |
| float * | ay, | ||
| float * | az | ||
| ) |
Gets the computed acceleration
| ax | Returned computed acceleration of the X-axis |
| ay | Returned computed acceleration of the Y-axis |
| az | Returned computed acceleration of the Z-axis |

| int getVerifiedAxis | ( | MMA7660_REG_T | axis | ) |
Reads an axis, verifying its validity. The value passed must be one of REG_XOUT, REG_YOUT, or REG_ZOUT.
| axis | Axis to read |

| uint8_t getVerifiedTilt | ( | ) |
Reads the tilt register, verifying its validity

| void setModeActive | ( | ) |
Puts the device in the active mode. In this mode, register writes are not allowed. Place the device in the standby mode before attempting to write registers.

| void setModeStandby | ( | ) |
Puts the device in the standby (power saving) mode. Note: when in the standby mode, there is no valid data in the registers. In addition, the only way to write a register is to put the device in the standby mode.

| uint8_t tiltBackFront | ( | ) |
Reads tiltBackFront bits
The value returned is one of the MMA7660_TILT_BF_T values

| uint8_t tiltLandscapePortrait | ( | ) |
Reads tiltLandscapePortrait bits
The value returned is one of the MMA7660_TILT_LP_T values

| bool tiltTap | ( | ) |
Reads the tiltTap status

| bool tiltShake | ( | ) |
Reads the tiltShake status

| void uninstallISR | ( | ) |
Uninstalls the previously installed ISR

| bool setInterruptBits | ( | uint8_t | ibits | ) |
Enables interrupt generation based on passed interrupt bits. The bits are a bitmask of the requested MMA7660_INTR_T values. Note: the device must be in the standby mode to set this register.
| ibits | Sets the requested interrupt bits |

| bool setSampleRate | ( | MMA7660_AUTOSLEEP_T | sr | ) |
Sets the sampling rate of the sensor. The value supplied must be one of the MMA7660_AUTOSLEEP_T values.
| sr | One of the MMA7660_AUTOSLEEP_T values |

| void installISR | ( | int | pin, |
| void(*)(void *) | isr, | ||
| void * | arg | ||
| ) |
Installs an interrupt service routine (ISR) to be called when an interrupt occurs
| pin | GPIO pin to use as the interrupt pin |
| isr | Pointer to a function to be called on interrupt |
| arg | Pointer to an object to be supplied as an argument to the ISR. |


1.8.11