Interface to the BNO055 sensor

Committer:
hzelayasolano22
Date:
Thu Jan 24 00:24:49 2019 +0000
Revision:
0:b3e019f0ce58
Library for BNO055 complete!

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hzelayasolano22 0:b3e019f0ce58 1 /* Embedded Systems Final Project: 9-Axis Absolute Orientation imu (BNO055) ndof.h
hzelayasolano22 0:b3e019f0ce58 2 */
hzelayasolano22 0:b3e019f0ce58 3
hzelayasolano22 0:b3e019f0ce58 4 #ifndef BNO055_H
hzelayasolano22 0:b3e019f0ce58 5 #define BNO055_H
hzelayasolano22 0:b3e019f0ce58 6
hzelayasolano22 0:b3e019f0ce58 7 #include "mbed.h"
hzelayasolano22 0:b3e019f0ce58 8
hzelayasolano22 0:b3e019f0ce58 9 #define BNO055_MODE_NDOF 0 //used to call the 9 axis orientation of imu
hzelayasolano22 0:b3e019f0ce58 10
hzelayasolano22 0:b3e019f0ce58 11 #define BNO055_ANGLE_UNITS_DEGREE 0
hzelayasolano22 0:b3e019f0ce58 12 #define BNO055_ANGLE_UNITS_RADIAN 1
hzelayasolano22 0:b3e019f0ce58 13
hzelayasolano22 0:b3e019f0ce58 14
hzelayasolano22 0:b3e019f0ce58 15 class BNO055 {//class for imu
hzelayasolano22 0:b3e019f0ce58 16 public:
hzelayasolano22 0:b3e019f0ce58 17 BNO055(I2C i2c, int addr);//constructor
hzelayasolano22 0:b3e019f0ce58 18 float readHeading(void);//class methods
hzelayasolano22 0:b3e019f0ce58 19 float readRoll(void);
hzelayasolano22 0:b3e019f0ce58 20 float readPitch(void);
hzelayasolano22 0:b3e019f0ce58 21 char checkID(void); //Check for proper communication with sensor
hzelayasolano22 0:b3e019f0ce58 22 void setMode(int modeCode); //Set program to NDOF forge mode
hzelayasolano22 0:b3e019f0ce58 23 int setAngleUnits(int unitsCode); //Select Euler Angles as units
hzelayasolano22 0:b3e019f0ce58 24 private:
hzelayasolano22 0:b3e019f0ce58 25 I2C _i2c;
hzelayasolano22 0:b3e019f0ce58 26 int _addr;
hzelayasolano22 0:b3e019f0ce58 27 int _units;
hzelayasolano22 0:b3e019f0ce58 28 };
hzelayasolano22 0:b3e019f0ce58 29
hzelayasolano22 0:b3e019f0ce58 30 #endif