AnsweredAssumed Answered

MMA8451 FIFO Auto Increment

Question asked by John Campbell on Feb 15, 2017
Latest reply on Feb 17, 2017 by Tomas Vaverka

In MMA8451 datasheet  Register Descriptions Table12 Register map for the FIFO auto-increment address it shows that when you read the OUT_Z_LSB register 0x06  it auto increments back to the status register 0x00.


We are doing a burst read of the FIFO autoincrementing through the full 32 sample FIFO data only


Based on previous work with a similar product from another manufacturer I had assumed that  with autoincrement of the FIFO it operated as follows:

(a) Read oldest sample X_MSB,X_LSB,Y_MSB, Y_LSB, Z_MSB, Z_LSB then next sample  X_MSB,X_LSB, Y_MSB etc...


Reading the datasheet if you started with X_MSB

(b) it would do X_MSB,X_LSB,Y_MSB, Y_LSB, Z_MSB, Z_LSB, STATUS then next sample  X_MSB,X_LSB, Y_MSB, Y_LSB, Z_MSB, Z_LSB, STATUS...etc


My buffer data shows that it operates as per (a) and doesn't autoincrement back to Register 0x00 as the datasheet shows

Otherwise my data would be scrambled with every 7th location in the buffer having status data rather than axes data

The product has been extensively tested and going on the datasheet it could never have worked.


Question: Can you confirm the operation of autoincrement from Register 0x06 back to 0x01 or 0x00


regards John Campbell