Rleg  2
 All Data Structures Files Functions Variables Typedefs Macros Groups Pages
imu_regs.h
Go to the documentation of this file.
1 
5 #ifndef IMU_REGS_H
6 #define IMU_REGS_H
7 
8 /* Registers in ADXL345 (acc) - Register map */
9 /* REGISTER_NAME ADDRESS TYPE DESCRIPTION */
10 #define ACC_DEVID 0x00 // R Device ID
11 #define ACC_THRESH_TAP 0x1D // R/W Tap Threshold
12 #define ACC_OFSX 0x1E // R/W X-axis offset
13 #define ACC_OFSY 0x1F // R/W Y-axis offset
14 #define ACC_OFSZ 0x20 // R/W Z-axis offset
15 #define ACC_DUR 0x21 // R/W Tap duration
16 #define ACC_LATENT 0x22 // R/W Tap latency
17 #define ACC_WINDOW 0x23 // R/W Tap window
18 #define ACC_THRESH_ACT 0x24 // R/W Activity threshold
19 #define ACC_THRESH_INACT 0x25 // R/W Inactivity threshold
20 #define ACC_TIME_INACT 0x26 // R/W Inactivity time
21 #define ACC_ACT_INACT_CTL 0x27 // R/W Axis enable control for activity and inactivity detection
22 #define ACC_THRESH_FF 0x28 // R/W Free-fall threshold
23 #define ACC_TIME_FF 0x29 // R/W Free-fall time
24 #define ACC_TAP_AXES 0x2A // R/W Axis control for tap/double tap
25 #define ACC_ACT_TAP_STATUS 0x2B // R Source of tap/double tap
26 #define ACC_BW_RATE 0x2C // R/W Data rate and power mode control
27 #define ACC_POWER_CTL 0x2D // R/W Power-saving features control
28 #define ACC_INT_ENABLE 0x2E // R/W Interrupt enable control
29 #define ACC_INT_MAP 0x2F // R/W Interrupt mapping control
30 #define ACC_INT_SOURCE 0x30 // R Source of interrupts
31 #define ACC_DATA_FORMAT 0x31 // R/W Data format control
32 #define ACC_DATAX0 0x32 // R X-Axis Data 0
33 #define ACC_DATAX1 0x33 // R X-Axis Data 1
34 #define ACC_DATAY0 0x34 // R Y-Axis Data 0
35 #define ACC_DATAY1 0x35 // R Y-Axis Data 1
36 #define ACC_DATAZ0 0x36 // R Z-Axis Data 0
37 #define ACC_DATAZ1 0x37 // R Z-Axis Data 1
38 #define ACC_FIFO_CTL 0x38 // R/W FIFO control
39 #define ACC_FIFO_STATUS 0x39 // R FIFO status
40 
41 #define ACC_DATA_FORMAT_FULLRES_FULLRANGE 0x0B // value in DATA_FORMAT to full resolution and full range (16g)
42 #define ACC_POWER_CTL_MEAS_MODE 0x08 // value in POWER_CTL to activate measurement mode
43 
44 /* Registers in ITG3200 (gyr) */
45 /* REGISTER_NAME ADDRESS TYPE DESCRIPTION */
46 #define GYR_WHO_AM_I 0x00 // R/W Who Am I: I2C address
47 #define GYR_SMPLRT_DIV 0x15 // R/W Sample rate divider
48 #define GYR_DLPF_FS 0x16 // R/W Parameters related to the sensor acquisition
49 #define GYR_INT_CFG 0x17 // R/W Interrupt configuration
50 #define GYR_INT_STATUS 0x1A // R Status of the device interrupts
51 #define GYR_TEMP_OUT_H 0x1B // R Data output Temperature MSB
52 #define GYR_TEMP_OUT_L 0x1C // R Data output Temperature LSB
53 #define GYR_GYRO_XOUT_H 0x1D // R Data output X MSB
54 #define GYR_GYRO_XOUT_L 0x1E // R Data output X LSB
55 #define GYR_GYRO_YOUT_H 0x1F // R Data output Y MSB
56 #define GYR_GYRO_YOUT_L 0x20 // R Data output Y LSB
57 #define GYR_GYRO_ZOUT_H 0x21 // R Data output Z MSB
58 #define GYR_GYRO_ZOUT_L 0x22 // R Data output Z LSB
59 #define GYR_PWR_MGM 0x3E // R/W Power management
60 
61 
62 /* Registers in HMC5883 (mag) */
63 /* REGISTER_NAME ADDRESS TYPE DESCRIPTION */
64 #define MAG_CONFIG_A 0x00 // R/W Configuration register A
65 #define MAG_CONFIG_B 0x01 // R/W Configuration register B
66 #define MAG_MODE 0x02 // R/W Mode
67 #define MAG_DATAX1 0x03 // R Data output X MSB
68 #define MAG_DATAX0 0x04 // R Data output X LSB
69 #define MAG_DATAZ1 0x05 // R Data output Z MSB
70 #define MAG_DATAZ0 0x06 // R Data output Z LSB
71 #define MAG_DATAY1 0x07 // R Data output Y MSB
72 #define MAG_DATAY0 0x08 // R Data output Y LSB
73 #define MAG_STATUS 0x09 // R Status
74 #define MAG_ID_A 0x0A // R Identification register A
75 #define MAG_ID_B 0x0B // R Identification register B
76 #define MAG_ID_C 0x0C // R Identification register C
77 
78 
79 #endif /* ifndef IMU_REGS_H */