1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-25 06:23:53 +01:00

Merge pull request #10306 from aabadie/pr/drivers/mma8x5x_update

drivers/mma8x5x: remove useless type from initialization parameters
This commit is contained in:
Kaspar Schleiser 2018-11-22 10:18:43 +01:00 committed by GitHub
commit 059af13933
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 16 additions and 15 deletions

View File

@ -5,6 +5,7 @@ endif
ifneq (,$(filter saul_default,$(USEMODULE)))
USEMODULE += saul_gpio
USEMODULE += mma8x5x
endif
ifneq (,$(filter gnrc_netdev_default netdev_default,$(USEMODULE)))

View File

@ -69,7 +69,6 @@ extern "C" {
*/
#define MMA8X5X_PARAM_I2C I2C_DEV(0)
#define MMA8X5X_PARAM_ADDR 0x1d
#define MMA8X5X_PARAM_TYPE 0x5a
/** @} */
/**

View File

@ -95,7 +95,6 @@ enum {
typedef struct {
i2c_t i2c; /**< I2C bus the device is connected to */
uint8_t addr; /**< I2C bus address of the device */
uint8_t type; /**< device type */
uint8_t rate; /**< sampling rate to use */
uint8_t range; /**< scale range to use */
uint8_t offset[3]; /**< data offset in X, Y, and Z direction */

View File

@ -37,9 +37,6 @@ extern "C" {
#ifndef MMA8X5X_PARAM_ADDR
#define MMA8X5X_PARAM_ADDR (MMA8X5X_I2C_ADDRESS)
#endif
#ifndef MMA8X5X_PARAM_TYPE
#define MMA8X5X_PARAM_TYPE (MMA8X5X_TYPE_MMA8652)
#endif
#ifndef MMA8X5X_PARAM_RATE
#define MMA8X5X_PARAM_RATE (MMA8X5X_RATE_200HZ)
#endif
@ -53,13 +50,12 @@ extern "C" {
#ifndef MMA8X5X_PARAMS
#define MMA8X5X_PARAMS { .i2c = MMA8X5X_PARAM_I2C, \
.addr = MMA8X5X_PARAM_ADDR, \
.type = MMA8X5X_PARAM_TYPE, \
.rate = MMA8X5X_PARAM_RATE, \
.range = MMA8X5X_PARAM_RANGE, \
.offset = MMA8X5X_PARAM_OFFSET }
#endif
#ifndef MMA8X5X_SAUL_INFO
#define MMA8X5X_SAUL_INFO { .name = "mma8652" }
#define MMA8X5X_SAUL_INFO { .name = "mma8x5x" }
#endif
/**@}*/

View File

@ -51,11 +51,18 @@ int mma8x5x_init(mma8x5x_t *dev, const mma8x5x_params_t *params)
/* test if the target device responds */
i2c_read_reg(BUS, ADDR, MMA8X5X_WHO_AM_I, &reg, 0);
if (reg != dev->params.type) {
i2c_release(BUS);
DEBUG("[mma8x5x] init - error: invalid WHO_AM_I value [0x%02x]\n",
(int)reg);
return MMA8X5X_NODEV;
switch (reg) {
case MMA8X5X_TYPE_MMA8451:
case MMA8X5X_TYPE_MMA8452:
case MMA8X5X_TYPE_MMA8453:
case MMA8X5X_TYPE_MMA8652:
case MMA8X5X_TYPE_MMA8653:
break;
default: /* invalid device type */
i2c_release(BUS);
DEBUG("[mma8x5x] init - error: invalid WHO_AM_I value [0x%02x]\n",
(int)reg);
return MMA8X5X_NODEV;
}
/* reset the device */

View File

@ -1,6 +1,6 @@
include ../Makefile.tests_common
USEMODULE += mma8x5x
USEMODULE += mma8x5x # will work with all variants
USEMODULE += xtimer
include $(RIOTBASE)/Makefile.include

View File

@ -3,14 +3,13 @@ This is a manual test application for the MMA8x5x accelerometer driver.
# Usage
This test application will initialize the MMA8x5x sensor with the following parameters:
- default device type: MMA8652
- full scale parameter set to +/-2 g
- 200 Hz output data-rate
To change these parameters, you can override them by setting their corresponding
defines in your build environment, e.g.
```bash
CFLAGS=-DMMA8X5X_PARAM_TYPE=MMA8X5X_TYPE_MMA8451 make ...
CFLAGS=-DMMA8X5X_PARAM_ADDR=0x1d make ...
```
See RIOT/drivers/mma8x5x_params.h for the default configuration.