tinygo.org/x/drivers@v0.27.1-0.20240509133757-7dbca2a54349/lsm303agr/registers.go (about) 1 package lsm303agr 2 3 const ( 4 5 // Constants/addresses used for I2C. 6 ACCEL_ADDRESS = 0x19 7 MAG_ADDRESS = 0x1E 8 9 // i2C 8-bit subaddress (SUB): the 7 LSb represent the actual register address 10 // while the MSB enables address auto increment. 11 // If the MSb of the SUB field is 1, the SUB (register address) is 12 // automatically increased to allow multiple data read/writes. 13 ADDR_AUTO_INC_MASK = 0x80 14 15 // accelerometer registers. 16 ACCEL_WHO_AM_I = 0x0F 17 ACCEL_CTRL_REG1_A = 0x20 18 ACCEL_CTRL_REG4_A = 0x23 19 ACCEL_OUT_X_L_A = 0x28 20 ACCEL_OUT_X_H_A = 0x29 21 ACCEL_OUT_Y_L_A = 0x2A 22 ACCEL_OUT_Y_H_A = 0x2B 23 ACCEL_OUT_Z_L_A = 0x2C 24 ACCEL_OUT_Z_H_A = 0x2D 25 ACCEL_OUT_AUTO_INC = ACCEL_OUT_X_L_A | ADDR_AUTO_INC_MASK 26 27 // magnetic sensor registers. 28 MAG_WHO_AM_I = 0x4F 29 MAG_MR_REG_M = 0x60 30 MAG_OUT_X_L_M = 0x68 31 MAG_OUT_X_H_M = 0x69 32 MAG_OUT_Y_L_M = 0x6A 33 MAG_OUT_Y_H_M = 0x6B 34 MAG_OUT_Z_L_M = 0x6C 35 MAG_OUT_Z_H_M = 0x6D 36 MAG_OUT_AUTO_INC = MAG_OUT_X_L_M | ADDR_AUTO_INC_MASK 37 38 // temperature sensor registers. 39 TEMP_CFG_REG_A = 0x1F 40 OUT_TEMP_L_A = 0x0C 41 OUT_TEMP_H_A = 0x0D 42 OUT_TEMP_AUTO_INC = OUT_TEMP_L_A | ADDR_AUTO_INC_MASK 43 44 // accelerometer power mode. 45 ACCEL_POWER_NORMAL = 0x00 // default 46 ACCEL_POWER_LOW = 0x08 47 48 // accelerometer range. 49 ACCEL_RANGE_2G = 0x00 // default 50 ACCEL_RANGE_4G = 0x01 51 ACCEL_RANGE_8G = 0x02 52 ACCEL_RANGE_16G = 0x03 53 54 // accelerometer data rate. 55 ACCEL_DATARATE_1HZ = 0x01 56 ACCEL_DATARATE_10HZ = 0x02 57 ACCEL_DATARATE_25HZ = 0x03 58 ACCEL_DATARATE_50HZ = 0x04 59 ACCEL_DATARATE_100HZ = 0x05 // default 60 ACCEL_DATARATE_200HZ = 0x06 61 ACCEL_DATARATE_400HZ = 0x07 62 ACCEL_DATARATE_1344HZ = 0x09 // 5376Hz in low-power mode 63 64 // magnetic sensor power mode. 65 MAG_POWER_NORMAL = 0x00 // default 66 MAG_POWER_LOW = 0x01 67 68 // magnetic sensor operate mode. 69 MAG_SYSTEM_CONTINUOUS = 0x00 // default 70 MAG_SYSTEM_SINGLE = 0x01 71 72 // magnetic sensor data rate 73 MAG_DATARATE_10HZ = 0x00 // default 74 MAG_DATARATE_20HZ = 0x01 75 MAG_DATARATE_50HZ = 0x02 76 MAG_DATARATE_100HZ = 0x03 77 )