AnsweredAssumed Answered

I can not get the the watermark interrupt signal of ADXL345

Question asked by allenlincg on Oct 3, 2017
Latest reply on Mar 19, 2018 by jwang

I tend to get the watermark interrupt when the FIFO buffer is full, but I can not get the watermark interrupt signal on pin INT1. The INT signal is always low.

My code is:

#define ADXL345_POWER_CTL 0x2D // R/W Power saving features control.

#define ADXL345_INT_ENABLE 0x2E // R/W Interrupt enable control.

#define ADXL345_INT_MAP 0x2F // R/W Interrupt mapping control.

#define ADXL345_FIFO_CTL 0x38 // R/W FIFO control.

 

 

/* ADXL345_FIFO_CTL definition */
#define ADXL345_FIFO_MODE(x) (((x) & 0x3) << 6)
#define ADXL345_TRIGGER (1 << 5)
#define ADXL345_SAMPLES(x) ((x) & 0x1F)

 

ADXL345_SetRegisterValue(ADXL345_INT_MAP, 0x00)

ADXL345_SetRegisterValue(ADXL345_FIFO_CTL,   ADXL345_FIFO_MODE(ADXL345_FIFO_TRIGGER) | ADXL345_SAMPLES(31));

 

ADXL345_SetRegisterValue(ADXL345_POWER_CTL, ADXL345_PCTL_MEASURE);

ADXL345_SetRegisterValue(ADXL345_INT_ENABLE, 0x00);

ADXL345_SetRegisterValue(ADXL345_INT_ENABLE, ADXL345_WATERMARK);

 

Could you help me to check if I do something wrong on setting or process?

 

Thank you for your kindly support.

Outcomes