From 7ef723e1c217652d6b329faa6aa3120fbd91d24c Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Tue, 9 Jun 2015 14:02:04 +0200 Subject: Replace array size calculation with macro --- accel.c | 12 ++++++------ common.h | 2 ++ gyro.c | 7 +++---- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/accel.c b/accel.c index e90f961..c6f9bdb 100644 --- a/accel.c +++ b/accel.c @@ -121,7 +121,7 @@ void accelProcess () { static uint8_t data[] = {0b01000100}; if (twRequest (TWM_WRITE, LIS302DL, LIS302DL_CTRLREG1, data, - sizeof (data)/sizeof (*data))) { + length (data))) { state = STARTING_A; } break; @@ -133,7 +133,7 @@ void accelProcess () { disableWakeup (WAKE_I2C); static uint8_t data[] = {HORIZON_THRESHOLD, HORIZON_DURATION}; if (twRequest (TWM_WRITE, LIS302DL, LIS302DL_FFWUTHS1, data, - sizeof (data)/sizeof (*data))) { + length (data))) { state = STARTING_B; } } @@ -145,7 +145,7 @@ void accelProcess () { /* enable interrupt on z high event */ static uint8_t data[] = {1 << ZHIE}; if (twRequest (TWM_WRITE, LIS302DL, LIS302DL_FFWUCFG1, data, - sizeof (data)/sizeof (*data))) { + length (data))) { state = STARTING_C; } } @@ -157,7 +157,7 @@ void accelProcess () { disableWakeup (WAKE_I2C); static uint8_t data[] = {SHAKE_THRESHOLD}; if (twRequest (TWM_WRITE, LIS302DL, LIS302DL_FFWUTHS2, data, - sizeof (data)/sizeof (*data))) { + length (data))) { state = STARTING_D; } } @@ -169,7 +169,7 @@ void accelProcess () { /* or events, enable interrupt on z high event */ static uint8_t data[] = {1 << ZHIE}; if (twRequest (TWM_WRITE, LIS302DL, LIS302DL_FFWUCFG2, data, - sizeof (data)/sizeof (*data))) { + length (data))) { state = STARTING_E; } } @@ -181,7 +181,7 @@ void accelProcess () { /* push-pull, low-active, FF_WU_1 on int1, FF_WU_2 on int2 */ static uint8_t data[] = {0b10010001}; if (twRequest (TWM_WRITE, LIS302DL, LIS302DL_CTRLREG3, data, - sizeof (data)/sizeof (*data))) { + length (data))) { state = STARTING_F; } } diff --git a/common.h b/common.h index 7b699ca..58a253e 100644 --- a/common.h +++ b/common.h @@ -67,6 +67,8 @@ extern volatile uint8_t wakeup; void shutdownError (); #define sign(x) ((x < 0) ? -1 : 1) +/* get an array’s size/length */ +#define length(x) (sizeof(x)/sizeof(*x)) #endif /* COMMON_H */ diff --git a/gyro.c b/gyro.c index f7add5e..93f6edb 100644 --- a/gyro.c +++ b/gyro.c @@ -121,9 +121,8 @@ bool gyroProcess () { * select 2000dps */ static uint8_t data[] = {0b00001100, 0b0, 0b00001000, 0b00110000}; - const bool ret = twRequest (TWM_WRITE, L3GD20, L3GD20_CTRLREG1, data, - sizeof (data)/sizeof (*data)); - if (ret) { + if (twRequest (TWM_WRITE, L3GD20, L3GD20_CTRLREG1, data, + length (data))) { state = STARTING; } break; @@ -165,7 +164,7 @@ bool gyroProcess () { static uint8_t data[] = {0b00000000}; if (twRequest (TWM_WRITE, L3GD20, L3GD20_CTRLREG1, data, - sizeof (data)/sizeof (*data))) { + length (data))) { state = STOPPING; } } else if (shouldWakeup (WAKE_GYRO) && twRequest (TWM_READ, L3GD20, -- cgit v1.2.3