This is the one where I went back and un-did the cube.cpp file
Dependencies: BNO055_fusion_tom FastPWM mbed
Fork of NucleoCube1 by
main.cpp@5:9247f07a954a, 2017-04-09 (annotated)
- Committer:
- wchurch
- Date:
- Sun Apr 09 00:47:55 2017 +0000
- Revision:
- 5:9247f07a954a
- Parent:
- 4:ae9e664301dd
- Child:
- 6:f2c930a90873
interrupt test working;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
wchurch | 0:604ceafb7bb3 | 1 | #include "mbed.h" |
wchurch | 0:604ceafb7bb3 | 2 | #include "BNO055.h" |
wchurch | 0:604ceafb7bb3 | 3 | |
wchurch | 0:604ceafb7bb3 | 4 | |
wchurch | 0:604ceafb7bb3 | 5 | //------------------------------------ |
wchurch | 0:604ceafb7bb3 | 6 | // Hyperterminal configuration |
wchurch | 0:604ceafb7bb3 | 7 | // 9600 bauds, 8-bit data, no parity |
wchurch | 0:604ceafb7bb3 | 8 | //------------------------------------ |
wchurch | 0:604ceafb7bb3 | 9 | |
wchurch | 0:604ceafb7bb3 | 10 | Serial pc(SERIAL_TX, SERIAL_RX); |
wchurch | 0:604ceafb7bb3 | 11 | |
wchurch | 5:9247f07a954a | 12 | Ticker pwmint; |
wchurch | 0:604ceafb7bb3 | 13 | DigitalOut myled(LED1); |
wchurch | 1:d81f93d3f819 | 14 | PwmOut P1(PE_9); |
wchurch | 1:d81f93d3f819 | 15 | PwmOut P2(PE_11); |
wchurch | 1:d81f93d3f819 | 16 | PwmOut P3(PE_13); |
wchurch | 0:604ceafb7bb3 | 17 | |
wchurch | 5:9247f07a954a | 18 | void pwmupdate() { |
wchurch | 5:9247f07a954a | 19 | myled = !myled; |
wchurch | 5:9247f07a954a | 20 | } |
wchurch | 5:9247f07a954a | 21 | |
wchurch | 0:604ceafb7bb3 | 22 | int main() |
wchurch | 0:604ceafb7bb3 | 23 | { |
wchurch | 0:604ceafb7bb3 | 24 | //int i = 1; |
wchurch | 0:604ceafb7bb3 | 25 | pc.printf("Hello World !\n"); |
wchurch | 0:604ceafb7bb3 | 26 | I2C i2c(PB_9, PB_8); // SDA, SCL |
wchurch | 0:604ceafb7bb3 | 27 | BNO055 imu(i2c, PA_8); // Reset |
wchurch | 0:604ceafb7bb3 | 28 | |
wchurch | 0:604ceafb7bb3 | 29 | BNO055_ID_INF_TypeDef bno055_id_inf; |
wchurch | 0:604ceafb7bb3 | 30 | BNO055_EULER_TypeDef euler_angles; |
wchurch | 0:604ceafb7bb3 | 31 | |
wchurch | 0:604ceafb7bb3 | 32 | pc.printf("Bosch Sensortec BNO055 test program on " __DATE__ "/" __TIME__ "\r\n"); |
wchurch | 0:604ceafb7bb3 | 33 | if (imu.chip_ready() == 0){ |
wchurch | 4:ae9e664301dd | 34 | pc.printf("Bosch BNO055 is NOT available!!\r\n"); |
wchurch | 0:604ceafb7bb3 | 35 | } |
wchurch | 0:604ceafb7bb3 | 36 | imu.read_id_inf(&bno055_id_inf); |
wchurch | 0:604ceafb7bb3 | 37 | pc.printf("CHIP:0x%02x, ACC:0x%02x, MAG:0x%02x, GYR:0x%02x, , SW:0x%04x, , BL:0x%02x\r\n", |
wchurch | 0:604ceafb7bb3 | 38 | bno055_id_inf.chip_id, bno055_id_inf.acc_id, bno055_id_inf.mag_id, |
wchurch | 0:604ceafb7bb3 | 39 | bno055_id_inf.gyr_id, bno055_id_inf.sw_rev_id, bno055_id_inf.bootldr_rev_id); |
wchurch | 5:9247f07a954a | 40 | pwmint.attach(&pwmupdate,.03); |
wchurch | 0:604ceafb7bb3 | 41 | |
wchurch | 0:604ceafb7bb3 | 42 | while(1) { |
wchurch | 0:604ceafb7bb3 | 43 | // acc.getAccAllAxis(data); |
wchurch | 0:604ceafb7bb3 | 44 | // pc.printf("Data %d %d %d \n",data[0], data[1], data[2]); |
wchurch | 0:604ceafb7bb3 | 45 | imu.get_Euler_Angles(&euler_angles); |
wchurch | 0:604ceafb7bb3 | 46 | pc.printf("Heading:%+6.4f [deg], Roll:%+6.4f [deg], Pitch:%+6.4f [deg]\r\n", |
wchurch | 0:604ceafb7bb3 | 47 | euler_angles.h, euler_angles.r, euler_angles.p); |
wchurch | 0:604ceafb7bb3 | 48 | wait(0.2); |
wchurch | 0:604ceafb7bb3 | 49 | |
wchurch | 5:9247f07a954a | 50 | |
wchurch | 2:93c7a7fb3203 | 51 | P1 = (euler_angles.h/360.0); |
wchurch | 2:93c7a7fb3203 | 52 | P2 = (euler_angles.r/360.0); |
wchurch | 2:93c7a7fb3203 | 53 | P3 = (euler_angles.p/360.0); |
wchurch | 0:604ceafb7bb3 | 54 | } |
wchurch | 0:604ceafb7bb3 | 55 | } |