MPU6500 Bare-Metal Driver
Public API reference for the MPU6500 driver
Loading...
Searching...
No Matches
Data Types

Public data structures and enums. More...

Collaboration diagram for Data Types:

Data Structures

struct  MPU6500_Gyro_Data
 Processed gyroscope output in degrees per second (dps). More...
 
struct  MPU6500_Accel_Data
 Processed accelerometer output in g-force (g). More...
 
struct  MPU6500_Config
 Driver configuration and platform abstraction. More...
 

Macros

#define MPU6500_I2C_ADDR   (0x68U << 1)
 MPU6500 I2C address (0x68), left-shifted for HAL compatibility.
 
#define MPU6500_SLEEP_WAKE_MASK   0xBFU
 Bitmask to clear the SLEEP bit in PWR_MGMT_1 (bit 6).
 
#define MPU6500_REG_WHO_AM_I   0x75U
 
#define MPU6500_REG_PWR_MGMT_1   0x6BU
 
#define MPU6500_REG_ACCEL_CONFIG   0x1CU
 
#define MPU6500_REG_GYRO_CONFIG   0x1BU
 
#define MPU6500_REG_ACCEL_MEASURE   0x3BU
 Registers 59 to 64 – Accelerometer Measurements.
 
#define MPU6500_REG_GYRO_MEASURE   0x43U
 Registers 67 to 72 – Gyroscope Measurements.
 

Enumerations

enum  Accel_Range { MPU6500_ACC_SET_2G = 0x00 , MPU6500_ACC_SET_4G = 0x08 , MPU6500_ACC_SET_8G = 0x10 , MPU6500_ACC_SET_16G = 0x18 }
 Full-scale accelerometer range register values.
 
enum  Gyro_Range { MPU6500_Gyro_SET_250 = 0x00 , MPU6500_Gyro_SET_500 = 0x08 , MPU6500_Gyro_SET_1000 = 0x10 , MPU6500_Gyro_SET_2000 = 0x18 }
 Full-scale gyroscope range register values.
 
enum  Accel_Calculation { MPU6500_Accel_2G = 0 , MPU6500_Accel_4G , MPU6500_Accel_8G , MPU6500_Accel_16G }
 Internal index for accelerometer sensitivity lookup.
 
enum  Gyro_Calculation { MPU6500_Gyro_250 = 0 , MPU6500_Gyro_500 , MPU6500_Gyro_1000 , MPU6500_Gyro_2000 }
 Internal index for gyroscope sensitivity lookup.
 

Detailed Description

Public data structures and enums.