added main and defined M_PI
Dependencies: BNOWrapper
main.cpp
- Committer:
- t1jain
- Date:
- 2019-08-07
- Revision:
- 10:14374b492f1d
- Parent:
- 8:729ad465d6c9
File content as of revision 10:14374b492f1d:
#include <mbed.h> #include <BNO080.h> #include "Watchdog.h" #include <BNO080Wheelchair.h> int main() { Serial pc(USBTX, USBRX, 57600); // Create IMU, passing in output stream, pins, I2C address, and I2C frequency // These pin assignments are specific to stm32- L432KC //BNO080 imu(&pc, D4, D5, D12, D10, 0x4b, 100000); //NUCLEO- F767ZI BNO080Wheelchair imu(&pc, D2, D4, D13, D15, 0x4b, 100000); Watchdog dog(&imu); dog.Configure(4); //need to find the time for entire program to run imu.setup(); // Tell the IMU to report rotation every 100ms and acceleration every 200ms // imu.enableReport(BNO080::TOTAL_ACCELERATION, 100); // imu.enableReport(BNO080::ROTATION, 100); while (true) { wait(.001f); // poll the IMU for new data -- this returns true if any packets were received if(imu.hasNewData(BNO080::TOTAL_ACCELERATION)) { // now check for the specific type of data that was received (can be multiple at once) pc.printf("Acc in X: %f\n", imu.accel_x()); pc.printf("Rot in X: "); TVector4 eulerRadians = imu.rotation(); TVector4 eulerDegrees = eulerRadians * (180.0 / M_PI); eulerDegrees.print(pc, true); pc.printf("\n"); dog.Service(); } } }