AnsweredAssumed Answered

ADXL362 Unexpected Interrupt

Question asked by jtm214 on Sep 17, 2014
Latest reply on Sep 18, 2014 by jtm214

Hi,

I'm trying to use the adxl362 to wakeup on an event, take data for a specified amount of time and the return to sleep.  For the most part this works but I get an unexpected activity interrupt immediately upon writing the power control register.

 

The value being written to the register:

 

//Set the power control register
adxl362ControlRegisters.powerCtl.bit.reserved=0;

 

 

//Set the reserved bit to the default state

adxl362ControlRegisters.powerCtl.bit.extClk=0;//Disables external clock
adxl362ControlRegisters.powerCtl.bit.lowNoise=0;//Sets the appropriate noise level
adxl362ControlRegisters.powerCtl.bit.wakeUp=1;//1 = Wakeup on event, 0 for measurement mode
adxl362ControlRegisters.powerCtl.bit.autoSleep=0;
adxl362ControlRegisters.powerCtl.bit.measure=2;//Set the system to measurement mode

If I read the status register immediately after writing this register without a delay, the register doesn't clear and the interrupt is generated anyway.  I can work around this but I don't think I should have to. 

What would cause the activity interrupt to be generated immediately upon writing the power control register?

Do I need a delay after writing the registers to allow things to settle before clearing the status registers?

Thanks,

Justin

Outcomes