Skip to content
This repository was archived by the owner on Sep 23, 2021. It is now read-only.

Commit d6527d0

Browse files
tpikonenojousima
authored andcommitted
lis2dh12: Better highpass filter config in activity int setup
Only set the LIS2DH12_HPIS2_MASK bit to LIS2DH12_CTRL_REG2 when turning on highpass filtering in lis2dh12_set_activity_interrupt_pin_2(). Remove unused function lis2dh12_set_highpass().
1 parent 77889a9 commit d6527d0

File tree

2 files changed

+4
-23
lines changed

2 files changed

+4
-23
lines changed

drivers/lis2dh12/lis2dh12.c

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -295,13 +295,15 @@ lis2dh12_ret_t lis2dh12_set_activity_interrupt_pin_2(uint16_t mg)
295295
// //CTRLREG2 = 0x02
296296
// ctrl[0] = LIS2DH12_HPIS2_MASK;
297297
// lis2dh12_write_register(LIS2DH12_CTRL_REG2, ctrl, 1);
298-
299-
lis2dh12_set_highpass(LIS2DH12_HPIS2_MASK);
298+
lis2dh12_read_register(LIS2DH12_CTRL_REG2, &cfg, 1);
299+
cfg |= LIS2DH12_HPIS2_MASK;
300+
lis2dh12_write_register(LIS2DH12_CTRL_REG2, &cfg, 1);
300301

301302
// Enable interrupt 2 on X-Y-Z HI/LO.
302303
// INT2_CFG = 0x7F
303304
// ctrl[0] = 0x7F;
304305
// lis2dh12_write_register(LIS2DH12_INT2_CFG, ctrl, 1);
306+
cfg = 0;
305307
cfg |= LIS2DH12_6D_MASK | LIS2DH12_ZHIE_MASK | LIS2DH12_ZLIE_MASK;
306308
cfg |= LIS2DH12_YHIE_MASK | LIS2DH12_YLIE_MASK;
307309
cfg |= LIS2DH12_XHIE_MASK | LIS2DH12_XLIE_MASK;
@@ -360,19 +362,6 @@ lis2dh12_ret_t lis2dh12_set_interrupt_configuration(uint8_t cfg, uint8_t functio
360362
return lis2dh12_write_register(target_reg, ctrl, 1);
361363
}
362364

363-
/**
364-
* Setup high-pass functions of lis2dh12. Select mode, cutoff frequency, filter data, click, interrputs.
365-
*
366-
* @param highpass byte to write to filter, resets previous settings.
367-
* @return error code from SPI write.
368-
*/
369-
lis2dh12_ret_t lis2dh12_set_highpass(uint8_t highpass)
370-
{
371-
uint8_t ctrl[1];
372-
ctrl[0] = highpass;
373-
return lis2dh12_write_register(LIS2DH12_CTRL_REG2, ctrl, 1);
374-
}
375-
376365
/**
377366
* Setup number of LSBs needed to trigger activity interrupt.
378367
*

drivers/lis2dh12/lis2dh12.h

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -180,14 +180,6 @@ lis2dh12_ret_t lis2dh12_set_interrupts(uint8_t interrupts, uint8_t pin);
180180
*/
181181
lis2dh12_ret_t lis2dh12_set_interrupt_configuration(uint8_t cfg, uint8_t function);
182182

183-
/**
184-
* Setup high-pass functions of lis2dh12. Select mode, cutoff frequency, filter data, click, interrputs.
185-
*
186-
* @param highpass byte to write to filter, resets previous settings.
187-
* @return error code from SPI write.
188-
*/
189-
lis2dh12_ret_t lis2dh12_set_highpass(uint8_t highpass);
190-
191183
/**
192184
* Setup number of LSBs needed to trigger AOI interrupt function.
193185
* Note: this targets function 1 or 2, not pin.

0 commit comments

Comments
 (0)