Hi, My MCU is stm32l4 and I wanna use the lowest power mode possible for the motion detect interrupt of the mma845x accelerometer . I've read in application note of the MCU that i2c is detected only in the "stop" mode. I was wondering if the accel needs the i2c during motion detect interrupt? because if not then I can put the MCU in shutdown mode.
There is no I2C communication needed between an MCU and an accelerometer when it is set to detect motion.
Your MCU only needs to configure the accelerometer one time when powered up through I2C interface in the initialization routine. Then the accelerometer will monitor the motion in the background continuously at very low power consumption - the MMA845x accellerometers even have built-in wakeup and motionless detection feature to automatically switch between lower output data rate (ODR) at low power mode and higher ODR at normal mode according to the motions. Whenever there is a motion, the accelerometer will send an interrupt signal to the GPIO pin of your MCU. Then your MCU can wake up and read the FF_MT_SRC register through the I2C interface if needed.
For more information and code examples, you can look at our AN4070 and AN4074.