#include <BNO055.h>
|
| | BNO055 (PinName p_sda, PinName p_scl, PinName p_reset, uint8_t addr, uint8_t mode) |
| |
| | BNO055 (PinName p_sda, PinName p_scl, PinName p_reset) |
| |
| | BNO055 (I2C &p_i2c, PinName p_reset, uint8_t addr, uint8_t mode) |
| |
| | BNO055 (I2C &p_i2c, PinName p_reset, uint8_t mode) |
| |
| void | get_euler_angles (BNO055_EULER_TypeDef *el) |
| |
| void | get_quaternion (BNO055_QUATERNION_TypeDef *qua) |
| |
| void | get_angular_position_quat (BNO055_ANGULAR_POSITION_typedef *an_pos) |
| |
| void | get_linear_accel (BNO055_VECTOR_TypeDef *la) |
| |
| void | get_mag (BNO055_VECTOR_TypeDef *qua) |
| |
| void | get_accel (BNO055_VECTOR_TypeDef *la) |
| |
| void | get_gyro (BNO055_VECTOR_TypeDef *gr) |
| |
| void | get_gravity (BNO055_VECTOR_TypeDef *gr) |
| |
| void | get_chip_temperature (BNO055_TEMPERATURE_TypeDef *tmp) |
| |
| void | change_fusion_mode (uint8_t mode) |
| |
| void | set_mounting_position (uint8_t position) |
| |
| void | read_id_inf (BNO055_ID_INF_TypeDef *id) |
| |
| uint8_t | chip_ready (void) |
| |
| void | calibrate (void) |
| |
| uint8_t | read_calib_status (void) |
| |
| uint8_t | reset (void) |
| |
| void | frequency (int hz) |
| |
| uint8_t | read_reg0 (uint8_t addr) |
| |
| uint8_t | write_reg0 (uint8_t addr, uint8_t data) |
| |
| uint8_t | read_reg1 (uint8_t addr) |
| |
| uint8_t | write_reg1 (uint8_t addr, uint8_t data) |
| |
| bool | use_degrees () |
| |
| bool | use_mss () |
| |
| bool | use_dps () |
| |
| bool | use_celsius () |
| |
Interface for Bosch Sensortec Intelligent 9-axis absolute orientation sensor Chip: BNO055
#include "mbed.h"
pc.printf(
"Bosch Sensortec BNO055 test program on " __DATE__
"/" __TIME__
"\r\n");
pc.printf(
"Bosch BNO055 is NOT avirable!!\r\n");
}
pc.printf(
"CHIP:0x%02x, ACC:0x%02x, MAG:0x%02x, GYR:0x%02x, , SW:0x%04x, , BL:0x%02x\r\n",
while(1) {
imu.get_Euler_Angles(&euler_angles);
pc.printf(
"Heading:%+6.1f [deg], Roll:%+6.1f [deg], Pich:%+6.1f [deg]\r\n",
euler_angles.
h, euler_angles.
r, euler_angles.
p);
wait(0.5);
}
}
int main()
Definition bench_move_semantics.cpp:51
uint8_t chip_ready(void)
Definition BNO055.cpp:451
void read_id_inf(BNO055_ID_INF_TypeDef *id)
Definition BNO055.cpp:440
BNO055 imu(i2c, PA_8, MODE_NDOF)
BNO055_ID_INF_TypeDef bno055_id_inf
Definition imuExampleAllData.cpp:20
int RealScalar int RealScalar int RealScalar * pc
Definition level1_cplx_impl.h:119
double h
Definition BNO055.h:76
double r
Definition BNO055.h:77
double p
Definition BNO055.h:78
uint8_t acc_id
Definition BNO055.h:68
uint8_t bootldr_rev_id
Definition BNO055.h:71
uint8_t chip_id
Definition BNO055.h:67
uint8_t mag_id
Definition BNO055.h:69
uint16_t sw_rev_id
Definition BNO055.h:72
uint8_t gyr_id
Definition BNO055.h:70
◆ BNO055() [1/4]
| BNO055::BNO055 |
( |
PinName |
p_sda, |
|
|
PinName |
p_scl, |
|
|
PinName |
p_reset, |
|
|
uint8_t |
addr, |
|
|
uint8_t |
mode |
|
) |
| |
Configure data pin
- Parameters
-
| data | SDA and SCL pins |
| device | address |
◆ BNO055() [2/4]
| BNO055::BNO055 |
( |
PinName |
p_sda, |
|
|
PinName |
p_scl, |
|
|
PinName |
p_reset |
|
) |
| |
Configure data pin
- Parameters
-
| data | SDA and SCL pins |
| Other | parameters are set default data |
◆ BNO055() [3/4]
| BNO055::BNO055 |
( |
I2C & |
p_i2c, |
|
|
PinName |
p_reset, |
|
|
uint8_t |
addr, |
|
|
uint8_t |
mode |
|
) |
| |
Configure data pin (with other devices on I2C line)
- Parameters
-
| I2C | previous definition |
| device | address |
◆ BNO055() [4/4]
| BNO055::BNO055 |
( |
I2C & |
p_i2c, |
|
|
PinName |
p_reset, |
|
|
uint8_t |
mode |
|
) |
| |
Configure data pin (with other devices on I2C line)
- Parameters
-
| I2C | previous definition |
| Other | parameters are set default data |
◆ calibrate()
| void BNO055::calibrate |
( |
void |
| ) |
|
Calibrate IMU
- Parameters
-
- Returns
- none
◆ change_fusion_mode()
| void BNO055::change_fusion_mode |
( |
uint8_t |
mode | ) |
|
Change fusion mode
- Parameters
-
- Returns
- none
◆ chip_ready()
| uint8_t BNO055::chip_ready |
( |
void |
| ) |
|
Check chip is avairable or not
- Parameters
-
- Returns
- OK = 1, NG = 0;
◆ frequency()
| void BNO055::frequency |
( |
int |
hz | ) |
|
Set I2C clock frequency
- Parameters
-
- Returns
- none
◆ get_accel()
Get Accel data
- Parameters
-
| double | type of 3D data address |
◆ get_angular_position_quat()
Get Angular position from quaternion
- Parameters
-
| double | type of 3D data address |
◆ get_chip_temperature()
Get Chip temperature data both Acc & Gyro
- Parameters
-
| int8_t | type of data address |
◆ get_euler_angles()
Get Euler Angles
- Parameters
-
| double | type of 3D data address |
◆ get_gravity()
Get Gravity data
- Parameters
-
| double | type of 3D data address |
◆ get_gyro()
Get Gyro data
- Parameters
-
| double | type of 3D data address |
◆ get_id()
| void BNO055::get_id |
( |
void |
| ) |
|
|
protected |
◆ get_linear_accel()
Get Linear accel data
- Parameters
-
| double | type of 3D data address |
◆ get_mag()
Get Mag data
- Parameters
-
| double | type of 3D data address |
◆ get_operating_mode()
| uint8_t BNO055::get_operating_mode |
( |
void |
| ) |
|
|
protected |
◆ get_quaternion()
Get Quaternion XYZ&W
- Parameters
-
| int16_t | type of 4D data address |
◆ initialize()
| void BNO055::initialize |
( |
void |
| ) |
|
|
protected |
◆ initialize_reset_pin()
| void BNO055::initialize_reset_pin |
( |
void |
| ) |
|
|
protected |
◆ read_calib_status()
| uint8_t BNO055::read_calib_status |
( |
void |
| ) |
|
Read calibration status
- Parameters
-
- Returns
- SYS(7:6),GYR(5:4),ACC(3:2),MAG(1:0) 3 = Calibrated, 0= not yet
◆ read_id_inf()
Read BNO055 ID information
- Parameters
-
- Returns
- none
◆ read_reg0()
| uint8_t BNO055::read_reg0 |
( |
uint8_t |
addr | ) |
|
Read page 0 register
- Parameters
-
- Returns
- register data
◆ read_reg1()
| uint8_t BNO055::read_reg1 |
( |
uint8_t |
addr | ) |
|
Read page 1 register
- Parameters
-
- Returns
- register data
◆ reset()
| uint8_t BNO055::reset |
( |
void |
| ) |
|
Reset
- Parameters
-
- Returns
- 0 = sucess, 1 = Not available chip
◆ select_page()
| uint8_t BNO055::select_page |
( |
uint8_t |
page | ) |
|
|
protected |
◆ set_initial_dt_to_regs()
| void BNO055::set_initial_dt_to_regs |
( |
void |
| ) |
|
|
protected |
◆ set_mounting_position()
| void BNO055::set_mounting_position |
( |
uint8_t |
position | ) |
|
Set Mouting position Please make sure your mounting direction of BNO055 chip refrence: BNO055 data sheet BST-BNO055-DS000-12 3.4 Axis remap
- Parameters
-
| Set | P0 to P7 mounting position data |
- Returns
- none
◆ unit_selection()
| void BNO055::unit_selection |
( |
void |
| ) |
|
|
protected |
◆ use_celsius()
| bool BNO055::use_celsius |
( |
| ) |
|
Determine if celsius (instead of fahrenheit) is used.
- Returns
- true if celsius are used
◆ use_degrees()
| bool BNO055::use_degrees |
( |
| ) |
|
Determine if degrees (instead of radians) are used.
- Returns
- true if degrees are used
◆ use_dps()
Determine if dps (instead of rps) are used.
- Returns
- true if dps are used
◆ use_mss()
Determine if m/s*s (instead of mg) is used.
- Returns
- true if m/s*s are used
◆ write_reg0()
| uint8_t BNO055::write_reg0 |
( |
uint8_t |
addr, |
|
|
uint8_t |
data |
|
) |
| |
Write page 0 register
- Parameters
-
- Returns
- register data
◆ write_reg1()
| uint8_t BNO055::write_reg1 |
( |
uint8_t |
addr, |
|
|
uint8_t |
data |
|
) |
| |
Write page 1 register
- Parameters
-
- Returns
- register data
◆ _i2c
◆ _i2c_p
◆ _res
◆ cantReadDataCount
| int BNO055::cantReadDataCount |
◆ multiturnYaw
| double BNO055::multiturnYaw |
The documentation for this class was generated from the following files: