639635_en-US

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

639635_en-US

639635_en-US

Using a MMA8451 FIFO Interrupt

I am using the 8451 in the following configuration.

- ODR 800 Hz 4G scale

- I2C at 400kHz rate

- Sleep modes disabled. always in active mode

-FIFO in Circular Buffer mode.

-The only interrupt configured is "FIFO full" vectored to the Int1 pin. That is No watermarks or pulse/landscape/freefall detection enabled.

- On the interrupt I flush the FIFO 14 bit data...192 bytes.

- For speed of operation and hence current consumption I do not read either:

   (a)The status register at 0x00. as I can guarantee I will service the interrupt and read out some data before the next sample is done 1.25mS later.

   (b) The Interrupt source register at 0x0C as I only have one interrupt source.

This appears to works OK.

The interrupt on INT1 pin goes high approximately half way through the 5.2mS FIFO flush

However it is not clear from the datasheet that for correct operation you must  read the interrupt source register to clear it.

Question: Must I clear the interrupt source register by reading it for correct operation

regards John Campbell

Re: Using a MMA8451 FIFO Interrupt

Tomas,

Thanks very much for your prompt response to this and my other question.

This is a relief as I release my software on Wednesday for a major production run for an automotive client.

Best regards and thanks again

Johnc

Re: Using a MMA8451 FIFO Interrupt

Hi John,

Yes, there is no need to read the INT_SOURCE register (0x0C), the SRC_FIFO bit is cleared and consequently the INT1 pin deasserted by reading all the X, Y, Z output data registers (0x01 – 0x06).

Best regards,

Tomas

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎02-04-2026 06:14 AM
更新者: