imu_lsm6ds3trc.h 619 B

12345678910111213141516171819202122232425
  1. #ifndef IMU_LSM6DS3TRC_H
  2. #define IMU_LSM6DS3TRC_H
  3. #include "../../lib/lsm6ds3tr-api/lsm6ds3tr-c_reg.h"
  4. #include <furi_hal.h>
  5. #include "imu.h"
  6. #define LSM6DS3_TAG "LSM6DS3TR-C"
  7. #define LSM6DS3_ADDRESS (0x6A << 1)
  8. // External variable declaration
  9. extern stmdev_ctx_t lsm6ds3trc_ctx;
  10. // Function declarations
  11. int32_t lsm6ds3trc_write_i2c(void* handle, uint8_t reg_addr, const uint8_t* data, uint16_t len);
  12. int32_t lsm6ds3trc_read_i2c(void* handle, uint8_t reg_addr, uint8_t* read_data, uint16_t len);
  13. bool lsm6ds3trc_begin(void);
  14. void lsm6ds3trc_end(void);
  15. int lsm6ds3trc_read(double* vec);
  16. #endif // LSM6DS3TRC_H