ADIS16400/ADIS16405
Rev. B | Page 10 of 20
THEORY OF OPERATION
BASIC OPERATION
The ADIS16400/ADIS16405 are autonomous sensor systems
that start up after a valid power supply voltage is applied and
then begin producing inertial measurement data at the factory-
default sample rate of 819.2 SPS. After each sample cycle, the
sensor data loads into the output registers and DIO1 pulses,
providing a new data ready control signal for driving system-
level interrupt service routines. In a typical system, a master
processor accesses the output data registers through the SPI
interface, using the hook-up shown in Figure 9. Table 6
provides a generic functional description for each pin on the
master processor. Tabl e 7 describes the typical master processor
settings normally found in a configuration register and used for
communicating with the ADIS16400/ADIS16405.
SYSTEM
PROCESSOR
SPI MASTER
ADIS16405
SPI SLAVE
SCLK
CS
DIN
DOUT
SCLK
SS
MOSI
MISO
5V
IRQ DIO1
VDD
I/O LINES ARE COMPATIBLE WITH
3.3V OR 5V LOGIC LEVELS
10
6
3
5
4
7
11 12
13 14 15
07907-009
Figure 9. Electrical Hook-Up Diagram
Table 6. Generic Master Processor Pin Names and Functions
Pin Name Function
SS
Slave select
IRQ Interrupt request
MOSI Master output, slave input
MISO Master input, slave output
SCLK Serial clock
Table 7. Generic Master Processor SPI Settings
Processor Setting Description
Master
The ADIS16400/ADIS16405 operate as a
slave.
SCLK Rate ≤ 2 MHz
1
Normal mode, SMPL_PRD[7:0] ≤ 0x08.
CPOL = 1 Clock polarity.
CPHA = 1 Clock phase.
MSB-First Bit sequence.
16-Bit Shift register/data length.
1
For burst mode, SCLK rate ≤ 1 MHz. For low power mode, SCLK rate ≤ 300 kHz.
The user registers provide addressing for all input/output
operations on the SPI interface. Each 16-bit register has two
7-bit addresses: one for its upper byte and one for its lower byte.
Table 8 lists the lower byte address for each register, and Figure 10
shows the generic bit assignments.
UPPER BYTE
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LOWER BYTE
07907-010
Figure 10. Output Register Bit Assignments
READING SENSOR DATA
Although the ADIS16400/ADIS16405 produce data indepen-
dently, these operate as SPI slave devices that communicate with
system (master) processors using the 16-bit segments displayed
in Figure 11. Individual register reads require two such 16-bit
sequences. The first 16-bit sequence provides the read command
bit (
R
/W = 0) and the target register address (A6 to A0). The
second sequence transmits the register contents (D15 to D0) on
the DOUT line. For example, if DIN = 0x0A00, the content of
XACCL_OUT shifts out on the DOUT line during the next 16-bit
sequence.
The SPI operates in full duplex mode, which means that the master
processor can read the output data from DOUT while using the
same SCLK pulses to transmit the next target address on DIN.
DEVICE CONFIGURATION
The user register memory map (Tabl e 8 ) identifies configuration
registers with either a W (write only) or R/W (read/write).
Configuration commands also use the bit sequence displayed in
Figure 11. If the MSB is equal to 1, the last eight bits (DC7 to
DC0) in the DIN sequence load into the memory address
associated with the address bits (A5 to A0). For example, if DIN
= 0xA11F, then 0x1F loads into Address Location 0x21
(XACCL_OFF, upper byte) at the conclusion of the data frame.
Most of the registers have a backup location in nonvolatile flash
memory. The master processor must manage the backup function.
Set GLOB_CMD[3] = 1 (DIN = 0xBE04) to execute a manual
flash update (backup) operation, which copies the user registers
into their respective flash memory locations. This operation
takes 50 ms and requires the power supply voltage to be within
the specified limit to complete properly. The FLASH_CNT register
provides a running count of these events for managing the long-
term reliability of the flash memory.
BURST MODE DATA COLLECTION
Burst mode data collection offers a more efficient method for
collecting data from the ADIS16400/ADIS16405. In sequential data
cycles (each separated by one SCLK period), all output registers
clock out on DOUT. This sequence starts when the DIN sequence
is 0011 1110 0000 0000 (0x3E00). Next, the contents of each output
register are output from DOUT, starting with SUPPLY_OUT
and ending with AUX_ADC (see Figure 12). The addressing
sequence shown in Table 8 determines the order of the outputs
in burst mode.
ADIS16400/ADIS16405
Rev. B | Page 11 of 20
MEMORY MAP
Table 8. User Register Memory Map
Name R/W Flash Backup Address
1
Default Function Bit Assignments
FLASH_CNT R Yes 0x00 N/A Flash memory write count N/A
SUPPLY_OUT R No 0x02 N/A Power supply measurement See Table 9
XGYRO_OUT R No 0x04 N/A X-axis gyroscope output
See Table 9
YGYRO_OUT R No 0x06 N/A Y-axis gyroscope output
See Table 9
ZGYRO_OUT R No 0x08 N/A Z-axis gyroscope output
See Table 9
XACCL_OUT R No 0x0A N/A X-axis accelerometer output
See Table 9
YACCL_OUT R No 0x0C N/A Y-axis accelerometer output
See Table 9
ZACCL_OUT R No 0x0E N/A Z-axis accelerometer output
See Table 9
XMAGN_OUT R No 0x10 N/A X-axis magnetometer measurement
See Table 9
YMAGN_OUT R No 0x12 N/A Y-axis magnetometer measurement
See Table 9
ZMAGN_OUT R No 0x14 N/A Z-axis magnetometer measurement
See Table 9
TEMP_OUT R No 0x16 N/A Temperature output
See Table 9
AUX_ADC R No 0x18 N/A Auxiliary ADC measurement
See Table 9
XGYRO_OFF R/W Yes 0x1A 0x0000 X-axis gyroscope bias offset factor
See Table 10
YGYRO_OFF R/W Yes 0x1C 0x0000 Y-axis gyroscope bias offset factor
See Table 10
ZGYRO_OFF R/W Yes 0x1E 0x0000 Z-axis gyroscope bias offset factor
See Table 10
XACCL_OFF R/W Yes 0x20 0x0000 X-axis acceleration bias offset factor
See Table 11
YACCL_OFF R/W Yes 0x22 0x0000 Y-axis acceleration bias offset factor
See Table 11
ZACCL_OFF R/W Yes 0x24 0x0000 Z-axis acceleration bias offset factor
See Table 11
XMAGN_HIF R/W Yes 0x26 0x0000 X-axis magnetometer, hard-iron factor
See Table 12
YMAGN_HIF R/W Yes 0x28 0x0000 Y-axis magnetometer, hard-iron factor
See Table 12
ZMAGN_HIF R/W Yes 0x2A 0x0000 Z-axis magnetometer, hard-iron factor
See Table 12
XMAGN_SIF R/W Yes 0x2C 0x0800 X-axis magnetometer, soft-iron factor
See Table 13
YMAGN_SIF R/W Yes 0x2E 0x0800 Y-axis magnetometer, soft-iron factor
See Table 13
ZMAGN_SIF R/W Yes 0x30 0x0800 Z-axis magnetometer, soft-iron factor
See Table 13
GPIO_CTRL R/W No 0x32 0x0000 Auxiliary digital input/output control
See Table 18
MSC_CTRL R/W Yes 0x34 0x0006 Miscellaneous control
See Table 19
SMPL_PRD R/W Yes 0x36 0x0001 Internal sample period (rate) control
See Table 15
SENS_AVG R/W Yes 0x38 0x0402 Dynamic range and digital filter control
See Table 17
SLP_CNT W No 0x3A 0x0000 Sleep mode control
See Table 16
DIAG_STAT R No 0x3C 0x0000 System status
See Table 23
GLOB_CMD W N/A 0x3E 0x0000 System command
See Table 14
ALM_MAG1 R/W Yes 0x40 0x0000 Alarm 1 amplitude threshold
See Table 25
ALM_MAG2 R/W Yes 0x42 0x0000 Alarm 2 amplitude threshold
See Table 25
ALM_SMPL1 R/W Yes 0x44 0x0000 Alarm 1 sample size
See Table 26
ALM_SMPL2 R/W Yes 0x46 0x0000 Alarm 2 sample size
See Table 26
ALM_CTRL R/W Yes 0x48 0x0000 Alarm control
See Table 24
AUX_DAC R/W No 0x4A 0x0000 Auxiliary DAC data
See Table 20
0x4C to 0x55 Reserved
PRODUCT_ID 0x56 0x4105 Product identifier
1
Each register contains two bytes. The address of the lower byte is displayed. The address of the upper byte is equal to the address of the lower byte plus 1.
R/W R/WA6 A5 A4 A3 A2 A1 A0 DC7 DC6 DC5 DC4 DC3 DC2 DC1 DC0
D0D1D2D3D4D5D6D7D8D9D10D11D12D13D14D15
NOTES
1. DOUT BITS ARE BASED ON THE PREVIOUS 16-BIT SEQUENCE (R = 0).
CS
SCLK
DIN
DOUT
A6 A5
D13D14D15
07907-011
Figure 11. Output Register Bit Assignments
ADIS16400/ADIS16405
Rev. B | Page 12 of 20
0x3E00
PREVIOUS
DON’T CARE
SUPPLY_OUT XGYRO_OUT AUX_ADC
123 13
YGYRO_OUT ZGYRO_OUT
45CS
SCLK
DIN
DOUT
0
7907-012
Figure 12. Burst Mode Read Sequence
OUTPUT DATA REGISTERS
Figure 6 provides the positive measurement direction for each
gyroscope, accelerometer, and magnetometer. Table 9 provides
the configuration and scale factor for each output data register
in the ADIS16400/ADIS16405. All inertial sensor outputs are in
14-bit, twos complement format, which means that 0x0000 is
equal to 0 LSB, 0x0001 is equal to +1 LSB, and 0x3FFF is equal to
−1 LSB. The following is an example of how to calculate the
sensor measurement from the XGYRO_OUT:
XGYRO_OUT = 0x3B4A
0x000 − 0x3B4A = −0x04B6 = (4 × 256 + 11 × 16 + 6) −
0x04B6 = −1206 LSB
Rate = 0.05°/sec × (−1206) = −60.3°/sec
Therefore, an XGYRO_OUT output of 0x3B4A corresponds to
a clockwise rotation about the z-axis (see Figure 6) of 60.3°/sec
when looking at the top of the package.
Table 9. Output Data Register Formats
Register Bits Format Scale
SUPPLY_OUT 14 Binary, 5 V = 0x0814 2.418 mV
XGYRO_OUT
1
14 Twos complement 0.05°/sec
YGYRO_OUT
1
14 Twos complement 0.05°/sec
ZGYRO_OUT
1
14 Twos complement 0.05°/sec
XACCL_OUT 14 Twos complement 3.33 mg
YACCL_OUT 14 Twos complement 3.33 mg
ZACCL_OUT 14 Twos complement 3.33 mg
XMAGN_OUT 14 Twos complement 0.5 mgauss
YMAGN_OUT 14 Twos complement 0.5 mgauss
ZMAGN_OUT 14 Twos complement 0.5 mgauss
TEMP_OUT
2
12 Twos complement 0.14°C
AUX_ADC 12 Binary, 1 V = 0x04D9 806 µV
1
Assumes that the scaling is set to ±300°/sec. This factor scales with the range.
2
The typical output for this register at 25°C is 0x0000.
Each output data register uses the bit assignments shown in
Figure 13. The ND flag indicates that unread data resides in the
output data registers. This flag clears and returns to 0 during an
output register read sequence. It returns to 1 after the next internal
sample updates the registers with new data. The EA flag indicates
that one of the error flags in the DIAG_STAT register (see Table 23)
is active (true). The remaining 14 bits are for data.
MSB FOR 14-BIT OUTPUT
MSB FOR 12-BIT OUTPUT
ND EA
0
7907-013
Figure 13. Output Register Bit Assignments
Auxiliary ADC
The AUX_ADC register provides access to the auxiliary ADC
input channel. The ADC is a 12-bit successive approximation
converter that has an equivalent input circuit to the one shown
in Figure 14. The maximum input is 3.3 V. The ESD protection
diodes can handle 10 mA without causing irreversible damage.
The on resistance (R1) of the switch has a typical value of 100 Ω.
The sampling capacitor, C2, has a typical value of 16 pF.
C2
C1
R1
V
CC
D
D
07907-014
Figure 14. Equivalent Analog Input Circuit
(Conversion Phase: Switch Open, Track Phase: Switch Closed)
CALIBRATION
Manual Bias Calibration
The bias offset registers in Table 10, Table 11, and Tabl e 12
(hard-iron correction for magnetometer) provide a manual
adjustment function for the output of each sensor. For example,
if XGYRO_OFF equals 0x1FF6, the XGYRO_OUT offset shifts
by −10 LSB, or −0.125°/sec. The DIN command for the upper
byte is DIN = 0x9B1F; for the lower byte, DIN = 0x9AF6.
Table 10. XGYRO_OFF, YGYRO_OFF, ZGYRO_OFF
Bits Description Default = 0x0000
[15:13] Not used.
[12:0]
Data bits. Twos complement, 0.0125°/sec per LSB.
Typical adjustment range = ±50°/sec.
Table 11. XACCL_OFF, YACCL_OFF, ZACCL_OFF
Bits Description Default = 0x0000
[15:12] Not used.
[11:0]
Data bits. Twos complement, 3.3 mg/LSB.
Typical adjustment range = ±6.75 g.
Table 12. XMAGN_HIF, YMAGN_HIF, ZMAGN_HIF
Bits Description Default = 0x0000
[15:14] Not used.
[13:0]
Data bits. Twos complement, 0.5 mgauss/LSB.
Typical adjustment range = ±4 gauss.

ADIS16400BMLZ

Mfr. #:
Manufacturer:
Analog Devices Inc.
Description:
IMUs - Inertial Measurement Units High Prec Tri-Axis Inertial Sensor
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union

Products related to this Datasheet