Siphon Regulator 1.0
Nanosattelite attitude determination and control system.
Loading...
Searching...
No Matches
mpu9250 example driver function

mpu9250 example driver modules More...

Macros

#define MPU9250_BASIC_DEFAULT_CLOCK_SOURCE   MPU9250_CLOCK_SOURCE_PLL
 mpu9250 basic example default definition
 
#define MPU9250_BASIC_DEFAULT_RATE   50
 
#define MPU9250_BASIC_DEFAULT_LOW_PASS_FILTER   MPU9250_LOW_PASS_FILTER_3
 
#define MPU9250_BASIC_DEFAULT_CYCLE_WAKE_UP   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_PIN_LEVEL   MPU9250_PIN_LEVEL_LOW
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_PIN_TYPE   MPU9250_PIN_TYPE_PUSH_PULL
 
#define MPU9250_BASIC_DEFAULT_ACCELEROMETER_RANGE   MPU9250_ACCELEROMETER_RANGE_2G
 
#define MPU9250_BASIC_DEFAULT_GYROSCOPE_RANGE   MPU9250_GYROSCOPE_RANGE_2000DPS
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_MOTION   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_FIFO_OVERFLOW   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_DMP   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_FSYNC_INT   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_DATA_READY   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_LATCH   MPU9250_BOOL_TRUE
 
#define MPU9250_BASIC_DEFAULT_INTERRUPT_READ_CLEAR   MPU9250_BOOL_TRUE
 
#define MPU9250_BASIC_DEFAULT_EXTERN_SYNC   MPU9250_EXTERN_SYNC_INPUT_DISABLED
 
#define MPU9250_BASIC_DEFAULT_FSYNC_INTERRUPT   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_FSYNC_INTERRUPT_LEVEL   MPU9250_PIN_LEVEL_LOW
 
#define MPU9250_BASIC_DEFAULT_IIC_MASTER   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_IIC_BYPASS   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_GYROSCOPE_STANDBY   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_FIFO_MODE   MPU9250_FIFO_MODE_NORMAL
 
#define MPU9250_BASIC_DEFAULT_GYROSCOPE_CHOICE   0
 
#define MPU9250_BASIC_DEFAULT_ACCELEROMETER_CHOICE   0
 
#define MPU9250_BASIC_DEFAULT_ACCELEROMETER_LOW_PASS_FILTER   MPU9250_ACCELEROMETER_LOW_PASS_FILTER_3
 
#define MPU9250_BASIC_DEFAULT_LOW_POWER_ACCEL_OUTPUT_RATE   MPU9250_LOW_POWER_ACCEL_OUTPUT_RATE_62P50
 
#define MPU9250_BASIC_DEFAULT_WAKE_ON_MOTION   MPU9250_BOOL_FALSE
 
#define MPU9250_BASIC_DEFAULT_ACCELEROMETER_COMPARE   MPU9250_BOOL_TRUE
 
#define MPU9250_BASIC_DEFAULT_MAGNETOMETER_MODE   MPU9250_MAGNETOMETER_MODE_CONTINUOUS2
 
#define MPU9250_BASIC_DEFAULT_MAGNETOMETER_BITS   MPU9250_MAGNETOMETER_BITS_16
 

Functions

uint8_t mpu9250_basic_init (mpu9250_interface_t interface, mpu9250_address_t addr_pin)
 basic example init
 
uint8_t mpu9250_basic_deinit (void)
 basic example deinit
 
uint8_t mpu9250_basic_read (float g[3], float dps[3], float ut[3])
 basic example read
 
uint8_t mpu9250_basic_read_temperature (float *degrees)
 basic example read temperature
 

Detailed Description

mpu9250 example driver modules

Macro Definition Documentation

◆ MPU9250_BASIC_DEFAULT_ACCELEROMETER_CHOICE

#define MPU9250_BASIC_DEFAULT_ACCELEROMETER_CHOICE   0

0

Definition at line 79 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_ACCELEROMETER_COMPARE

#define MPU9250_BASIC_DEFAULT_ACCELEROMETER_COMPARE   MPU9250_BOOL_TRUE

enable compare

Definition at line 83 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_ACCELEROMETER_LOW_PASS_FILTER

#define MPU9250_BASIC_DEFAULT_ACCELEROMETER_LOW_PASS_FILTER   MPU9250_ACCELEROMETER_LOW_PASS_FILTER_3

low pass filter 3

Definition at line 80 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_ACCELEROMETER_RANGE

#define MPU9250_BASIC_DEFAULT_ACCELEROMETER_RANGE   MPU9250_ACCELEROMETER_RANGE_2G

2g

Definition at line 62 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_CLOCK_SOURCE

#define MPU9250_BASIC_DEFAULT_CLOCK_SOURCE   MPU9250_CLOCK_SOURCE_PLL

mpu9250 basic example default definition

pll

Definition at line 56 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_CYCLE_WAKE_UP

#define MPU9250_BASIC_DEFAULT_CYCLE_WAKE_UP   MPU9250_BOOL_FALSE

disable cycle wake up

Definition at line 59 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_EXTERN_SYNC

#define MPU9250_BASIC_DEFAULT_EXTERN_SYNC   MPU9250_EXTERN_SYNC_INPUT_DISABLED

extern sync input disable

Definition at line 71 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_FIFO_MODE

#define MPU9250_BASIC_DEFAULT_FIFO_MODE   MPU9250_FIFO_MODE_NORMAL

normal mode

Definition at line 77 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_FSYNC_INTERRUPT

#define MPU9250_BASIC_DEFAULT_FSYNC_INTERRUPT   MPU9250_BOOL_FALSE

disable fsync interrupt

Definition at line 72 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_FSYNC_INTERRUPT_LEVEL

#define MPU9250_BASIC_DEFAULT_FSYNC_INTERRUPT_LEVEL   MPU9250_PIN_LEVEL_LOW

low level

Definition at line 73 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_GYROSCOPE_CHOICE

#define MPU9250_BASIC_DEFAULT_GYROSCOPE_CHOICE   0

0

Definition at line 78 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_GYROSCOPE_RANGE

#define MPU9250_BASIC_DEFAULT_GYROSCOPE_RANGE   MPU9250_GYROSCOPE_RANGE_2000DPS

2000dps

Definition at line 63 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_GYROSCOPE_STANDBY

#define MPU9250_BASIC_DEFAULT_GYROSCOPE_STANDBY   MPU9250_BOOL_FALSE

disable gyro standby

Definition at line 76 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_IIC_BYPASS

#define MPU9250_BASIC_DEFAULT_IIC_BYPASS   MPU9250_BOOL_FALSE

disable iic bypass

Definition at line 75 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_IIC_MASTER

#define MPU9250_BASIC_DEFAULT_IIC_MASTER   MPU9250_BOOL_FALSE

disable iic master

Definition at line 74 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_DATA_READY

#define MPU9250_BASIC_DEFAULT_INTERRUPT_DATA_READY   MPU9250_BOOL_FALSE

disable data ready

Definition at line 68 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_DMP

#define MPU9250_BASIC_DEFAULT_INTERRUPT_DMP   MPU9250_BOOL_FALSE

disable dmp

Definition at line 66 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_FIFO_OVERFLOW

#define MPU9250_BASIC_DEFAULT_INTERRUPT_FIFO_OVERFLOW   MPU9250_BOOL_FALSE

disable fifo overflow

Definition at line 65 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_FSYNC_INT

#define MPU9250_BASIC_DEFAULT_INTERRUPT_FSYNC_INT   MPU9250_BOOL_FALSE

disable fsync int

Definition at line 67 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_LATCH

#define MPU9250_BASIC_DEFAULT_INTERRUPT_LATCH   MPU9250_BOOL_TRUE

enable latch

Definition at line 69 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_MOTION

#define MPU9250_BASIC_DEFAULT_INTERRUPT_MOTION   MPU9250_BOOL_FALSE

disable motion

Definition at line 64 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_PIN_LEVEL

#define MPU9250_BASIC_DEFAULT_INTERRUPT_PIN_LEVEL   MPU9250_PIN_LEVEL_LOW

low level

Definition at line 60 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_PIN_TYPE

#define MPU9250_BASIC_DEFAULT_INTERRUPT_PIN_TYPE   MPU9250_PIN_TYPE_PUSH_PULL

push pull

Definition at line 61 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_INTERRUPT_READ_CLEAR

#define MPU9250_BASIC_DEFAULT_INTERRUPT_READ_CLEAR   MPU9250_BOOL_TRUE

enable interrupt read clear

Definition at line 70 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_LOW_PASS_FILTER

#define MPU9250_BASIC_DEFAULT_LOW_PASS_FILTER   MPU9250_LOW_PASS_FILTER_3

low pass filter 3

Definition at line 58 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_LOW_POWER_ACCEL_OUTPUT_RATE

#define MPU9250_BASIC_DEFAULT_LOW_POWER_ACCEL_OUTPUT_RATE   MPU9250_LOW_POWER_ACCEL_OUTPUT_RATE_62P50

62.5Hz

Definition at line 81 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_MAGNETOMETER_BITS

#define MPU9250_BASIC_DEFAULT_MAGNETOMETER_BITS   MPU9250_MAGNETOMETER_BITS_16

16bits

Definition at line 85 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_MAGNETOMETER_MODE

#define MPU9250_BASIC_DEFAULT_MAGNETOMETER_MODE   MPU9250_MAGNETOMETER_MODE_CONTINUOUS2

100Hz

Definition at line 84 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_RATE

#define MPU9250_BASIC_DEFAULT_RATE   50

50Hz

Definition at line 57 of file driver_mpu9250_basic.h.

◆ MPU9250_BASIC_DEFAULT_WAKE_ON_MOTION

#define MPU9250_BASIC_DEFAULT_WAKE_ON_MOTION   MPU9250_BOOL_FALSE

disable wake on motion

Definition at line 82 of file driver_mpu9250_basic.h.

Function Documentation

◆ mpu9250_basic_deinit()

uint8_t mpu9250_basic_deinit ( void )

basic example deinit

Returns
status code
  • 0 success
  • 1 deinit failed
Note
none

Definition at line 717 of file driver_mpu9250_basic.c.

◆ mpu9250_basic_init()

uint8_t mpu9250_basic_init ( mpu9250_interface_t interface,
mpu9250_address_t addr_pin )

basic example init

Parameters
[in]interfaceused interface
[in]addr_piniic device address
Returns
status code
  • 0 success
  • 1 init failed
Note
spi can't read magnetometer data

Definition at line 50 of file driver_mpu9250_basic.c.

◆ mpu9250_basic_read()

uint8_t mpu9250_basic_read ( float g[3],
float dps[3],
float ut[3] )

basic example read

Parameters
[out]*gpointer to a converted data buffer
[out]*dpspointer to a converted data buffer
[out]*utpointer to a converted data buffer
Returns
status code
  • 0 success
  • 1 read failed
Note
none

Definition at line 672 of file driver_mpu9250_basic.c.

◆ mpu9250_basic_read_temperature()

uint8_t mpu9250_basic_read_temperature ( float * degrees)

basic example read temperature

Parameters
[out]*degreespointer to a converted data buffer
Returns
status code
  • 0 success
  • 1 read temperature failed
Note
none

Definition at line 649 of file driver_mpu9250_basic.c.