AnsweredAssumed Answered

Trouble in reading unprocessed acceleration data from ADIS16227

Question asked by jagadeepram on May 10, 2012
Latest reply on Jun 4, 2012 by NevadaMark

HI All,

         I see unexpected result while reading the raw (unprocessed) acceleration data from ADIS16227 device. I read the data by placing device is static position, so that only acceleration component is gravity on z-axis. Data range is selected from 0 to 70 g

 

Thus I need to get the acceleration value on 3 axis as

x-axis: 0x0000

y-axis: 0x0000

z-axis: 0xfe5c or 0x01a4 (which corresponds to +/- 1 g ).

 

But what I received from the device is below.

x-axis: 0x0002

y-axis: 0x0002

z-axis: 0x0002

 

I expect one of the value to be high compare to other two because of gravity.  Blow is the pseudo code used to get the acceleration data.

I am able to set the rec_ctrl register and able to read the same value as well as prod id, so that SPI communication is out of suspect.

 

main()

{

     spi_write(software_reset);

     delay(); // delay till 500 ms for software reset.

     spi_write(REC_CTRL, 0x0832); // select SR3,0-70g, storage method: N/A, manual time mode.

     delay();

     spi_write(GLOB_CMD,0x0800);// start recording

      while(1)

       {

         print( spi_read(x_buff));

          delay();

          while( spi_read(diag_stat)&0x0080==0); // wait till data is ready

          print(spi_read(y_buff));

          delay();

          while( spi_read(diag_stat)&0x0080==0); // wait till data is ready

          print(spi_read(z_buff));

          delay();

          while( spi_read(diag_stat)&0x0080==0); // wait till data is ready

        }

}

       The sentence "In manual time mode, each axis' record contains 512 samples for each axis" at page no 16, 1st para in the data sheet is confusing a bit. Is that mean the current acceleration data is queued in buffer and read out only after 512 read instructions of the buffer ?

My Requirement is to get the unprocessed acceleration data at a given instant. If I vibrate the device ,I should see corresponding changes in the acceleration value from the device at that instant.

 

Please help me in getting my requirement.

 

Thanks,

Jagadeepram.

Outcomes