qmi8658c: Driver for QMI8658C 6-axis IMU sensor
Header file for QMI8658C sensor driver.
Datasheet: https://qstcorp.com/upload/pdf/202202/QMI8658C%20datasheet%20rev%200.9.pdf
- Author
xyzroe ESP-IDF driver for QMI8658C sensor
Copyright (c) 2024 xyzroe i@xyzroe.cc
Defines
- DEFAUL_QMI8658C_ADDR
I2C address for QMI8658C.
- QMI8658C_I2C_FREQ_HZ
- QMI8658_WHO_AM_I
- QMI8658_REVISION
- QMI8658_CTRL1
- QMI8658_CTRL2
- QMI8658_CTRL3
- QMI8658_CTRL4
- QMI8658_CTRL5
- QMI8658_CTRL6
- QMI8658_CTRL7
- QMI8658_CTRL9
- QMI8658_ACC_X_L
- QMI8658_ACC_X_H
- QMI8658_ACC_Y_L
- QMI8658_ACC_Y_H
- QMI8658_ACC_Z_L
- QMI8658_ACC_Z_H
- QMI8658_GYR_X_L
- QMI8658_GYR_X_H
- QMI8658_GYR_Y_L
- QMI8658_GYR_Y_H
- QMI8658_GYR_Z_L
- QMI8658_GYR_Z_H
- QMI8658_TEMP_L
- QMI8658_TEMP_H
- QMI8658_RESET
- ACC_SCALE_SENSITIVITY_2G
- ACC_SCALE_SENSITIVITY_4G
- ACC_SCALE_SENSITIVITY_8G
- ACC_SCALE_SENSITIVITY_16G
- GYRO_SCALE_SENSITIVITY_16DPS
- GYRO_SCALE_SENSITIVITY_32DPS
- GYRO_SCALE_SENSITIVITY_64DPS
- GYRO_SCALE_SENSITIVITY_128DPS
- GYRO_SCALE_SENSITIVITY_256DPS
- GYRO_SCALE_SENSITIVITY_512DPS
- GYRO_SCALE_SENSITIVITY_1024DPS
- GYRO_SCALE_SENSITIVITY_2048DPS
- TEMPERATURE_SENSOR_RESOLUTION
Enums
- enum qmi8658c_mode_t
Values:
- enumerator QMI8658C_MODE_ACC_ONLY
- enumerator QMI8658C_MODE_GYRO_ONLY
- enumerator QMI8658C_MODE_DUAL
- enum qmi8658c_acc_odr_t
Values:
- enumerator QMI8658C_ACC_ODR_8000
- enumerator QMI8658C_ACC_ODR_4000
- enumerator QMI8658C_ACC_ODR_2000
- enumerator QMI8658C_ACC_ODR_1000
- enumerator QMI8658C_ACC_ODR_500
- enumerator QMI8658C_ACC_ODR_250
- enumerator QMI8658C_ACC_ODR_125
- enumerator QMI8658C_ACC_ODR_62_5
- enumerator QMI8658C_ACC_ODR_31_25
- enumerator QMI8658C_ACC_ODR_128
- enumerator QMI8658C_ACC_ODR_21
- enumerator QMI8658C_ACC_ODR_11
- enumerator QMI8658C_ACC_ODR_3
- enum qmi8658c_gyro_odr_t
Values:
- enumerator QMI8658C_GYRO_ODR_8000
- enumerator QMI8658C_GYRO_ODR_4000
- enumerator QMI8658C_GYRO_ODR_2000
- enumerator QMI8658C_GYRO_ODR_1000
- enumerator QMI8658C_GYRO_ODR_500
- enumerator QMI8658C_GYRO_ODR_250
- enumerator QMI8658C_GYRO_ODR_125
- enumerator QMI8658C_GYRO_ODR_62_5
- enumerator QMI8658C_GYRO_ODR_31_25
- enum qmi8658c_acc_scale_t
Values:
- enumerator QMI8658C_ACC_SCALE_2G
- enumerator QMI8658C_ACC_SCALE_4G
- enumerator QMI8658C_ACC_SCALE_8G
- enumerator QMI8658C_ACC_SCALE_16G
- enum qmi8658c_gyro_scale_t
Values:
- enumerator QMI8658C_GYRO_SCALE_16DPS
- enumerator QMI8658C_GYRO_SCALE_32DPS
- enumerator QMI8658C_GYRO_SCALE_64DPS
- enumerator QMI8658C_GYRO_SCALE_128DPS
- enumerator QMI8658C_GYRO_SCALE_256DPS
- enumerator QMI8658C_GYRO_SCALE_512DPS
- enumerator QMI8658C_GYRO_SCALE_1024DPS
- enumerator QMI8658C_GYRO_SCALE_2048DPS
Functions
- esp_err_t qmi8658c_init_desc(i2c_dev_t *dev, uint8_t addr, i2c_port_t port, gpio_num_t sda_gpio, gpio_num_t scl_gpio)
- esp_err_t qmi8658c_free_desc(i2c_dev_t *dev)
- esp_err_t qmi8658c_power_on(i2c_dev_t *dev)
- esp_err_t qmi8658c_power_down(i2c_dev_t *dev)
- esp_err_t qmi8658c_setup(i2c_dev_t *dev, qmi8658c_config_t *config)
- esp_err_t qmi8658c_read_data(i2c_dev_t *dev, qmi8658c_data_t *data)
- struct qmi8658c_axes_t
#include <qmi8658c.h>
- struct qmi_ctx_t
#include <qmi8658c.h>
- struct qmi8658c_data_t
#include <qmi8658c.h>
- struct qmi8658c_config_t
#include <qmi8658c.h>Public Members
- qmi8658c_mode_t mode
- qmi8658c_acc_scale_t acc_scale
- qmi8658c_acc_odr_t acc_odr
- qmi8658c_gyro_scale_t gyro_scale
- qmi8658c_gyro_odr_t gyro_odr