TR-mbed 1.0
Loading...
Searching...
No Matches
Classes | Macros | Enumerations
MPU6050.h File Reference
#include "mbed.h"
#include "math.h"

Go to the source code of this file.

Classes

class  MPU6050
 

Macros

#define M_PI   3.14159265358979323846
 
#define XGOFFS_TC   0x00
 
#define YGOFFS_TC   0x01
 
#define ZGOFFS_TC   0x02
 
#define X_FINE_GAIN   0x03
 
#define Y_FINE_GAIN   0x04
 
#define Z_FINE_GAIN   0x05
 
#define XA_OFFSET_H   0x06
 
#define XA_OFFSET_L_TC   0x07
 
#define YA_OFFSET_H   0x08
 
#define YA_OFFSET_L_TC   0x09
 
#define ZA_OFFSET_H   0x0A
 
#define ZA_OFFSET_L_TC   0x0B
 
#define SELF_TEST_X   0x0D
 
#define SELF_TEST_Y   0x0E
 
#define SELF_TEST_Z   0x0F
 
#define SELF_TEST_A   0x10
 
#define XG_OFFS_USRH   0x13
 
#define XG_OFFS_USRL   0x14
 
#define YG_OFFS_USRH   0x15
 
#define YG_OFFS_USRL   0x16
 
#define ZG_OFFS_USRH   0x17
 
#define ZG_OFFS_USRL   0x18
 
#define SMPLRT_DIV   0x19
 
#define CONFIG   0x1A
 
#define GYRO_CONFIG   0x1B
 
#define ACCEL_CONFIG   0x1C
 
#define FF_THR   0x1D
 
#define FF_DUR   0x1E
 
#define MOT_THR   0x1F
 
#define MOT_DUR   0x20
 
#define ZMOT_THR   0x21
 
#define ZRMOT_DUR   0x22
 
#define FIFO_EN   0x23
 
#define I2C_MST_CTRL   0x24
 
#define I2C_SLV0_ADDR   0x25
 
#define I2C_SLV0_REG   0x26
 
#define I2C_SLV0_CTRL   0x27
 
#define I2C_SLV1_ADDR   0x28
 
#define I2C_SLV1_REG   0x29
 
#define I2C_SLV1_CTRL   0x2A
 
#define I2C_SLV2_ADDR   0x2B
 
#define I2C_SLV2_REG   0x2C
 
#define I2C_SLV2_CTRL   0x2D
 
#define I2C_SLV3_ADDR   0x2E
 
#define I2C_SLV3_REG   0x2F
 
#define I2C_SLV3_CTRL   0x30
 
#define I2C_SLV4_ADDR   0x31
 
#define I2C_SLV4_REG   0x32
 
#define I2C_SLV4_DO   0x33
 
#define I2C_SLV4_CTRL   0x34
 
#define I2C_SLV4_DI   0x35
 
#define I2C_MST_STATUS   0x36
 
#define INT_PIN_CFG   0x37
 
#define INT_ENABLE   0x38
 
#define DMP_INT_STATUS   0x39
 
#define INT_STATUS   0x3A
 
#define ACCEL_XOUT_H   0x3B
 
#define ACCEL_XOUT_L   0x3C
 
#define ACCEL_YOUT_H   0x3D
 
#define ACCEL_YOUT_L   0x3E
 
#define ACCEL_ZOUT_H   0x3F
 
#define ACCEL_ZOUT_L   0x40
 
#define TEMP_OUT_H   0x41
 
#define TEMP_OUT_L   0x42
 
#define GYRO_XOUT_H   0x43
 
#define GYRO_XOUT_L   0x44
 
#define GYRO_YOUT_H   0x45
 
#define GYRO_YOUT_L   0x46
 
#define GYRO_ZOUT_H   0x47
 
#define GYRO_ZOUT_L   0x48
 
#define EXT_SENS_DATA_00   0x49
 
#define EXT_SENS_DATA_01   0x4A
 
#define EXT_SENS_DATA_02   0x4B
 
#define EXT_SENS_DATA_03   0x4C
 
#define EXT_SENS_DATA_04   0x4D
 
#define EXT_SENS_DATA_05   0x4E
 
#define EXT_SENS_DATA_06   0x4F
 
#define EXT_SENS_DATA_07   0x50
 
#define EXT_SENS_DATA_08   0x51
 
#define EXT_SENS_DATA_09   0x52
 
#define EXT_SENS_DATA_10   0x53
 
#define EXT_SENS_DATA_11   0x54
 
#define EXT_SENS_DATA_12   0x55
 
#define EXT_SENS_DATA_13   0x56
 
#define EXT_SENS_DATA_14   0x57
 
#define EXT_SENS_DATA_15   0x58
 
#define EXT_SENS_DATA_16   0x59
 
#define EXT_SENS_DATA_17   0x5A
 
#define EXT_SENS_DATA_18   0x5B
 
#define EXT_SENS_DATA_19   0x5C
 
#define EXT_SENS_DATA_20   0x5D
 
#define EXT_SENS_DATA_21   0x5E
 
#define EXT_SENS_DATA_22   0x5F
 
#define EXT_SENS_DATA_23   0x60
 
#define MOT_DETECT_STATUS   0x61
 
#define I2C_SLV0_DO   0x63
 
#define I2C_SLV1_DO   0x64
 
#define I2C_SLV2_DO   0x65
 
#define I2C_SLV3_DO   0x66
 
#define I2C_MST_DELAY_CTRL   0x67
 
#define SIGNAL_PATH_RESET   0x68
 
#define MOT_DETECT_CTRL   0x69
 
#define USER_CTRL   0x6A
 
#define PWR_MGMT_1   0x6B
 
#define PWR_MGMT_2   0x6C
 
#define DMP_BANK   0x6D
 
#define DMP_RW_PNT   0x6E
 
#define DMP_REG   0x6F
 
#define DMP_REG_1   0x70
 
#define DMP_REG_2   0x71
 
#define FIFO_COUNTH   0x72
 
#define FIFO_COUNTL   0x73
 
#define FIFO_R_W   0x74
 
#define WHO_AM_I_MPU6050   0x75
 
#define DATA_RDY_INT   0
 
#define I2C_MST_EN   5
 

Enumerations

enum  AccelScale { AFS_2G , AFS_4G , AFS_8G , AFS_16G }
 
enum  GyroScale { GFS_250DPS , GFS_500DPS , GFS_1000DPS , GFS_2000DPS }
 

Macro Definition Documentation

◆ ACCEL_CONFIG

#define ACCEL_CONFIG   0x1C

◆ ACCEL_XOUT_H

#define ACCEL_XOUT_H   0x3B

◆ ACCEL_XOUT_L

#define ACCEL_XOUT_L   0x3C

◆ ACCEL_YOUT_H

#define ACCEL_YOUT_H   0x3D

◆ ACCEL_YOUT_L

#define ACCEL_YOUT_L   0x3E

◆ ACCEL_ZOUT_H

#define ACCEL_ZOUT_H   0x3F

◆ ACCEL_ZOUT_L

#define ACCEL_ZOUT_L   0x40

◆ CONFIG

#define CONFIG   0x1A

◆ DATA_RDY_INT

#define DATA_RDY_INT   0

◆ DMP_BANK

#define DMP_BANK   0x6D

◆ DMP_INT_STATUS

#define DMP_INT_STATUS   0x39

◆ DMP_REG

#define DMP_REG   0x6F

◆ DMP_REG_1

#define DMP_REG_1   0x70

◆ DMP_REG_2

#define DMP_REG_2   0x71

◆ DMP_RW_PNT

#define DMP_RW_PNT   0x6E

◆ EXT_SENS_DATA_00

#define EXT_SENS_DATA_00   0x49

◆ EXT_SENS_DATA_01

#define EXT_SENS_DATA_01   0x4A

◆ EXT_SENS_DATA_02

#define EXT_SENS_DATA_02   0x4B

◆ EXT_SENS_DATA_03

#define EXT_SENS_DATA_03   0x4C

◆ EXT_SENS_DATA_04

#define EXT_SENS_DATA_04   0x4D

◆ EXT_SENS_DATA_05

#define EXT_SENS_DATA_05   0x4E

◆ EXT_SENS_DATA_06

#define EXT_SENS_DATA_06   0x4F

◆ EXT_SENS_DATA_07

#define EXT_SENS_DATA_07   0x50

◆ EXT_SENS_DATA_08

#define EXT_SENS_DATA_08   0x51

◆ EXT_SENS_DATA_09

#define EXT_SENS_DATA_09   0x52

◆ EXT_SENS_DATA_10

#define EXT_SENS_DATA_10   0x53

◆ EXT_SENS_DATA_11

#define EXT_SENS_DATA_11   0x54

◆ EXT_SENS_DATA_12

#define EXT_SENS_DATA_12   0x55

◆ EXT_SENS_DATA_13

#define EXT_SENS_DATA_13   0x56

◆ EXT_SENS_DATA_14

#define EXT_SENS_DATA_14   0x57

◆ EXT_SENS_DATA_15

#define EXT_SENS_DATA_15   0x58

◆ EXT_SENS_DATA_16

#define EXT_SENS_DATA_16   0x59

◆ EXT_SENS_DATA_17

#define EXT_SENS_DATA_17   0x5A

◆ EXT_SENS_DATA_18

#define EXT_SENS_DATA_18   0x5B

◆ EXT_SENS_DATA_19

#define EXT_SENS_DATA_19   0x5C

◆ EXT_SENS_DATA_20

#define EXT_SENS_DATA_20   0x5D

◆ EXT_SENS_DATA_21

#define EXT_SENS_DATA_21   0x5E

◆ EXT_SENS_DATA_22

#define EXT_SENS_DATA_22   0x5F

◆ EXT_SENS_DATA_23

#define EXT_SENS_DATA_23   0x60

◆ FF_DUR

#define FF_DUR   0x1E

◆ FF_THR

#define FF_THR   0x1D

◆ FIFO_COUNTH

#define FIFO_COUNTH   0x72

◆ FIFO_COUNTL

#define FIFO_COUNTL   0x73

◆ FIFO_EN

#define FIFO_EN   0x23

◆ FIFO_R_W

#define FIFO_R_W   0x74

◆ GYRO_CONFIG

#define GYRO_CONFIG   0x1B

◆ GYRO_XOUT_H

#define GYRO_XOUT_H   0x43

◆ GYRO_XOUT_L

#define GYRO_XOUT_L   0x44

◆ GYRO_YOUT_H

#define GYRO_YOUT_H   0x45

◆ GYRO_YOUT_L

#define GYRO_YOUT_L   0x46

◆ GYRO_ZOUT_H

#define GYRO_ZOUT_H   0x47

◆ GYRO_ZOUT_L

#define GYRO_ZOUT_L   0x48

◆ I2C_MST_CTRL

#define I2C_MST_CTRL   0x24

◆ I2C_MST_DELAY_CTRL

#define I2C_MST_DELAY_CTRL   0x67

◆ I2C_MST_EN

#define I2C_MST_EN   5

◆ I2C_MST_STATUS

#define I2C_MST_STATUS   0x36

◆ I2C_SLV0_ADDR

#define I2C_SLV0_ADDR   0x25

◆ I2C_SLV0_CTRL

#define I2C_SLV0_CTRL   0x27

◆ I2C_SLV0_DO

#define I2C_SLV0_DO   0x63

◆ I2C_SLV0_REG

#define I2C_SLV0_REG   0x26

◆ I2C_SLV1_ADDR

#define I2C_SLV1_ADDR   0x28

◆ I2C_SLV1_CTRL

#define I2C_SLV1_CTRL   0x2A

◆ I2C_SLV1_DO

#define I2C_SLV1_DO   0x64

◆ I2C_SLV1_REG

#define I2C_SLV1_REG   0x29

◆ I2C_SLV2_ADDR

#define I2C_SLV2_ADDR   0x2B

◆ I2C_SLV2_CTRL

#define I2C_SLV2_CTRL   0x2D

◆ I2C_SLV2_DO

#define I2C_SLV2_DO   0x65

◆ I2C_SLV2_REG

#define I2C_SLV2_REG   0x2C

◆ I2C_SLV3_ADDR

#define I2C_SLV3_ADDR   0x2E

◆ I2C_SLV3_CTRL

#define I2C_SLV3_CTRL   0x30

◆ I2C_SLV3_DO

#define I2C_SLV3_DO   0x66

◆ I2C_SLV3_REG

#define I2C_SLV3_REG   0x2F

◆ I2C_SLV4_ADDR

#define I2C_SLV4_ADDR   0x31

◆ I2C_SLV4_CTRL

#define I2C_SLV4_CTRL   0x34

◆ I2C_SLV4_DI

#define I2C_SLV4_DI   0x35

◆ I2C_SLV4_DO

#define I2C_SLV4_DO   0x33

◆ I2C_SLV4_REG

#define I2C_SLV4_REG   0x32

◆ INT_ENABLE

#define INT_ENABLE   0x38

◆ INT_PIN_CFG

#define INT_PIN_CFG   0x37

◆ INT_STATUS

#define INT_STATUS   0x3A

◆ M_PI

#define M_PI   3.14159265358979323846

◆ MOT_DETECT_CTRL

#define MOT_DETECT_CTRL   0x69

◆ MOT_DETECT_STATUS

#define MOT_DETECT_STATUS   0x61

◆ MOT_DUR

#define MOT_DUR   0x20

◆ MOT_THR

#define MOT_THR   0x1F

◆ PWR_MGMT_1

#define PWR_MGMT_1   0x6B

◆ PWR_MGMT_2

#define PWR_MGMT_2   0x6C

◆ SELF_TEST_A

#define SELF_TEST_A   0x10

◆ SELF_TEST_X

#define SELF_TEST_X   0x0D

◆ SELF_TEST_Y

#define SELF_TEST_Y   0x0E

◆ SELF_TEST_Z

#define SELF_TEST_Z   0x0F

◆ SIGNAL_PATH_RESET

#define SIGNAL_PATH_RESET   0x68

◆ SMPLRT_DIV

#define SMPLRT_DIV   0x19

◆ TEMP_OUT_H

#define TEMP_OUT_H   0x41

◆ TEMP_OUT_L

#define TEMP_OUT_L   0x42

◆ USER_CTRL

#define USER_CTRL   0x6A

◆ WHO_AM_I_MPU6050

#define WHO_AM_I_MPU6050   0x75

◆ X_FINE_GAIN

#define X_FINE_GAIN   0x03

◆ XA_OFFSET_H

#define XA_OFFSET_H   0x06

◆ XA_OFFSET_L_TC

#define XA_OFFSET_L_TC   0x07

◆ XG_OFFS_USRH

#define XG_OFFS_USRH   0x13

◆ XG_OFFS_USRL

#define XG_OFFS_USRL   0x14

◆ XGOFFS_TC

#define XGOFFS_TC   0x00

◆ Y_FINE_GAIN

#define Y_FINE_GAIN   0x04

◆ YA_OFFSET_H

#define YA_OFFSET_H   0x08

◆ YA_OFFSET_L_TC

#define YA_OFFSET_L_TC   0x09

◆ YG_OFFS_USRH

#define YG_OFFS_USRH   0x15

◆ YG_OFFS_USRL

#define YG_OFFS_USRL   0x16

◆ YGOFFS_TC

#define YGOFFS_TC   0x01

◆ Z_FINE_GAIN

#define Z_FINE_GAIN   0x05

◆ ZA_OFFSET_H

#define ZA_OFFSET_H   0x0A

◆ ZA_OFFSET_L_TC

#define ZA_OFFSET_L_TC   0x0B

◆ ZG_OFFS_USRH

#define ZG_OFFS_USRH   0x17

◆ ZG_OFFS_USRL

#define ZG_OFFS_USRL   0x18

◆ ZGOFFS_TC

#define ZGOFFS_TC   0x02

◆ ZMOT_THR

#define ZMOT_THR   0x21

◆ ZRMOT_DUR

#define ZRMOT_DUR   0x22

Enumeration Type Documentation

◆ AccelScale

enum AccelScale
Enumerator
AFS_2G 
AFS_4G 
AFS_8G 
AFS_16G 

◆ GyroScale

enum GyroScale
Enumerator
GFS_250DPS 
GFS_500DPS 
GFS_1000DPS 
GFS_2000DPS