bamlor nuttymaisuay
Dependencies: mbed
main.cpp
- Committer:
- jaybehandsome
- Date:
- 2017-12-11
- Revision:
- 6:1de63d5df56a
- Parent:
- 5:738285670edf
- Child:
- 7:61c1f10bf484
File content as of revision 6:1de63d5df56a:
#include "mbed.h" #include "MPU9250.h" #include <iostream> #include <string> string word; char alphabet; float x; float sum = 0; uint32_t sumCount = 0; char buffer[14]; int i = 0; MPU9250 mpu9250; Timer t; Serial pc(PA_15, PB_7); // tx, rx float v, delt_t2 = 0, count2 = 0; int mode; int cmode; Serial bam(D1,D0); BusOut B(PA_0,PA_1,PA_4,PB_0,PC_1,PC_2,PC_3), A(PC_10,PC_12,PA_13,PA_14,PC_13,PC_11,PD_2), C(PA_5,PA_6,PA_7,PC_7,PB_2,PB_1,PB_15); void Text (char text,float posA,float posB,float posC,int i ) { int n = i*60; if (text == ' '){ if (posA > 0+n && posA < 10+n) { A = 0x00; } else if(posA > 10+n && posA < 20+n ) { A = 0x00; } else if(posA > 20+n && posA < 30+n ) { A = 0x00; } else if(posA > 30+n && posA < 40+n ) { A = 0x00; } else if(posA > 40+n && posA < 50+n ) { A = 0x00; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x00; } else if(posB > 10+n && posB < 20+n ) { B = 0x00; } else if(posB > 20+n && posB < 30+n ) { B = 0x00; } else if(posB > 30+n && posB < 40+n ) { B = 0x00; } else if(posB > 40+n && posB < 50+n ) { B = 0x00; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x00; } else if(posC > 10+n && posC < 20+n ) { C = 0x00; } else if(posC > 20+n && posC < 30+n ) { C = 0x00; } else if(posC > 30+n && posC < 40+n ) { C = 0x00; } else if(posC > 40+n && posC < 50+n ) { C = 0x00; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'A'){ if (posA > 0+n && posA < 10+n) { A = 0x3F; } else if(posA > 10+n && posA < 20+n ) { A = 0x44; } else if(posA > 20+n && posA < 30+n ) { A = 0x44; } else if(posA > 30+n && posA < 40+n ) { A = 0x44; } else if(posA > 40+n && posA < 50+n ) { A = 0x3F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x3F; } else if(posB > 10+n && posB < 20+n ) { B = 0x44; } else if(posB > 20+n && posB < 30+n ) { B = 0x44; } else if(posB > 30+n && posB < 40+n ) { B = 0x44; } else if(posB > 40+n && posB < 50+n ) { B = 0x3F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x3F; } else if(posC > 10+n && posC < 20+n ) { C = 0x44; } else if(posC > 20+n && posC < 30+n ) { C = 0x44; } else if(posC > 30+n && posC < 40+n ) { C = 0x44; } else if(posC > 40+n && posC < 50+n ) { C = 0x3F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'B'){ if (posA > 0+n && posA < 10+n) { A = 0x36; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x49; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x36; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x49; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x36; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x49; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'C'){ if (posA > 0+n && posA < 10+n) { A = 0x22; } else if(posA > 10+n && posA < 20+n ) { A = 0x41; } else if(posA > 20+n && posA < 30+n ) { A = 0x41; } else if(posA > 30+n && posA < 40+n ) { A = 0x41; } else if(posA > 40+n && posA < 50+n ) { A = 0x3E; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x22; } else if(posB > 10+n && posB < 20+n ) { B = 0x41; } else if(posB > 20+n && posB < 30+n ) { B = 0x41; } else if(posB > 30+n && posB < 40+n ) { B = 0x41; } else if(posB > 40+n && posB < 50+n ) { B = 0x3E; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x22; } else if(posC > 10+n && posC < 20+n ) { C = 0x41; } else if(posC > 20+n && posC < 30+n ) { C = 0x41; } else if(posC > 30+n && posC < 40+n ) { C = 0x41; } else if(posC > 40+n && posC < 50+n ) { C = 0x3E; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'D'){ if (posA > 0+n && posA < 10+n) { A = 0x3E; } else if(posA > 10+n && posA < 20+n ) { A = 0x41; } else if(posA > 20+n && posA < 30+n ) { A = 0x41; } else if(posA > 30+n && posA < 40+n ) { A = 0x41; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x3E; } else if(posB > 10+n && posB < 20+n ) { B = 0x41; } else if(posB > 20+n && posB < 30+n ) { B = 0x41; } else if(posB > 30+n && posB < 40+n ) { B = 0x41; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x3E; } else if(posC > 10+n && posC < 20+n ) { C = 0x41; } else if(posC > 20+n && posC < 30+n ) { C = 0x41; } else if(posC > 30+n && posC < 40+n ) { C = 0x41; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'E'){ if (posA > 0+n && posA < 10+n) { A = 0x49; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x49; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x49; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x49; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x49; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x49; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'F'){ if (posA > 0+n && posA < 10+n) { A = 0x40; } else if(posA > 10+n && posA < 20+n ) { A = 0x40; } else if(posA > 20+n && posA < 30+n ) { A = 0x48; } else if(posA > 30+n && posA < 40+n ) { A = 0x48; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x40; } else if(posB > 10+n && posB < 20+n ) { B = 0x40; } else if(posB > 20+n && posB < 30+n ) { B = 0x48; } else if(posB > 30+n && posB < 40+n ) { B = 0x48; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x40; } else if(posC > 10+n && posC < 20+n ) { C = 0x40; } else if(posC > 20+n && posC < 30+n ) { C = 0x48; } else if(posC > 30+n && posC < 40+n ) { C = 0x48; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'G'){ if (posA > 0+n && posA < 10+n) { A = 0x4F; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x41; } else if(posA > 40+n && posA < 50+n ) { A = 0x3E; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x4F; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x41; } else if(posB > 40+n && posB < 50+n ) { B = 0x3E; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x4F; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x41; } else if(posC > 40+n && posC < 50+n ) { C = 0x3E; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'H'){ if (posA > 0+n && posA < 10+n) { A = 0x7F; } else if(posA > 10+n && posA < 20+n ) { A = 0x08; } else if(posA > 20+n && posA < 30+n ) { A = 0x08; } else if(posA > 30+n && posA < 40+n ) { A = 0x08; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x7F; } else if(posB > 10+n && posB < 20+n ) { B = 0x08; } else if(posB > 20+n && posB < 30+n ) { B = 0x08; } else if(posB > 30+n && posB < 40+n ) { B = 0x08; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x7F; } else if(posC > 10+n && posC < 20+n ) { C = 0x08; } else if(posC > 20+n && posC < 30+n ) { C = 0x08; } else if(posC > 30+n && posC < 40+n ) { C = 0x08; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'I'){ if (posA > 0+n && posA < 10+n) { A = 0x41; } else if(posA > 10+n && posA < 20+n ) { A = 0x41; } else if(posA > 20+n && posA < 30+n ) { A = 0x7F; } else if(posA > 30+n && posA < 40+n ) { A = 0x41; } else if(posA > 40+n && posA < 50+n ) { A = 0x41; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x41; } else if(posB > 10+n && posB < 20+n ) { B = 0x41; } else if(posB > 20+n && posB < 30+n ) { B = 0x7F; } else if(posB > 30+n && posB < 40+n ) { B = 0x41; } else if(posB > 40+n && posB < 50+n ) { B = 0x41; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x41; } else if(posC > 10+n && posC < 20+n ) { C = 0x41; } else if(posC > 20+n && posC < 30+n ) { C = 0x7F; } else if(posC > 30+n && posC < 40+n ) { C = 0x41; } else if(posC > 40+n && posC < 50+n ) { C = 0x41; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'J'){ if (posA > 0+n && posA < 10+n) { A = 0x7E; } else if(posA > 10+n && posA < 20+n ) { A = 0x41; } else if(posA > 20+n && posA < 30+n ) { A = 0x41; } else if(posA > 30+n && posA < 40+n ) { A = 0x01; } else if(posA > 40+n && posA < 50+n ) { A = 0x02; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x7E; } else if(posB > 10+n && posB < 20+n ) { B = 0x41; } else if(posB > 20+n && posB < 30+n ) { B = 0x41; } else if(posB > 30+n && posB < 40+n ) { B = 0x01; } else if(posB > 40+n && posB < 50+n ) { B = 0x02; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x7E; } else if(posC > 10+n && posC < 20+n ) { C = 0x41; } else if(posC > 20+n && posC < 30+n ) { C = 0x41; } else if(posC > 30+n && posC < 40+n ) { C = 0x01; } else if(posC > 40+n && posC < 50+n ) { C = 0x02; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'K'){ if (posA > 0+n && posA < 10+n) { A = 0x41; } else if(posA > 10+n && posA < 20+n ) { A = 0x22; } else if(posA > 20+n && posA < 30+n ) { A = 0x14; } else if(posA > 30+n && posA < 40+n ) { A = 0x08; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x41; } else if(posB > 10+n && posB < 20+n ) { B = 0x22; } else if(posB > 20+n && posB < 30+n ) { B = 0x14; } else if(posB > 30+n && posB < 40+n ) { B = 0x08; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x41; } else if(posC > 10+n && posC < 20+n ) { C = 0x22; } else if(posC > 20+n && posC < 30+n ) { C = 0x14; } else if(posC > 30+n && posC < 40+n ) { C = 0x08; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'L'){ if (posA > 0+n && posA < 10+n) { A = 0x01; } else if(posA > 10+n && posA < 20+n ) { A = 0x01; } else if(posA > 20+n && posA < 30+n ) { A = 0x01; } else if(posA > 30+n && posA < 40+n ) { A = 0x01; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x01; } else if(posB > 10+n && posB < 20+n ) { B = 0x01; } else if(posB > 20+n && posB < 30+n ) { B = 0x01; } else if(posB > 30+n && posB < 40+n ) { B = 0x01; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x01; } else if(posC > 10+n && posC < 20+n ) { C = 0x01; } else if(posC > 20+n && posC < 30+n ) { C = 0x01; } else if(posC > 30+n && posC < 40+n ) { C = 0x01; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'M'){ if (posA > 0+n && posA < 10+n) { A = 0x7F; } else if(posA > 10+n && posA < 20+n ) { A = 0x20; } else if(posA > 20+n && posA < 30+n ) { A = 0x10; } else if(posA > 30+n && posA < 40+n ) { A = 0x20; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x7F; } else if(posB > 10+n && posB < 20+n ) { B = 0x20; } else if(posB > 20+n && posB < 30+n ) { B = 0x10; } else if(posB > 30+n && posB < 40+n ) { B = 0x20; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x7F; } else if(posC > 10+n && posC < 20+n ) { C = 0x20; } else if(posC > 20+n && posC < 30+n ) { C = 0x10; } else if(posC > 30+n && posC < 40+n ) { C = 0x20; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'N'){ if (posA > 0+n && posA < 10+n) { A = 0x7F; } else if(posA > 10+n && posA < 20+n ) { A = 0x08; } else if(posA > 20+n && posA < 30+n ) { A = 0x10; } else if(posA > 30+n && posA < 40+n ) { A = 0x20; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x7F; } else if(posB > 10+n && posB < 20+n ) { B = 0x08; } else if(posB > 20+n && posB < 30+n ) { B = 0x10; } else if(posB > 30+n && posB < 40+n ) { B = 0x20; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x7F; } else if(posC > 10+n && posC < 20+n ) { C = 0x08; } else if(posC > 20+n && posC < 30+n ) { C = 0x10; } else if(posC > 30+n && posC < 40+n ) { C = 0x20; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'O'){ if (posA > 0+n && posA < 10+n) { A = 0x7F; } else if(posA > 10+n && posA < 20+n ) { A = 0x41; } else if(posA > 20+n && posA < 30+n ) { A = 0x41; } else if(posA > 30+n && posA < 40+n ) { A = 0x41; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x7F; } else if(posB > 10+n && posB < 20+n ) { B = 0x41; } else if(posB > 20+n && posB < 30+n ) { B = 0x41; } else if(posB > 30+n && posB < 40+n ) { B = 0x41; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x7F; } else if(posC > 10+n && posC < 20+n ) { C = 0x41; } else if(posC > 20+n && posC < 30+n ) { C = 0x41; } else if(posC > 30+n && posC < 40+n ) { C = 0x41; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'P'){ if (posA > 0+n && posA < 10+n) { A = 0x30; } else if(posA > 10+n && posA < 20+n ) { A = 0x48; } else if(posA > 20+n && posA < 30+n ) { A = 0x48; } else if(posA > 30+n && posA < 40+n ) { A = 0x48; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x30; } else if(posB > 10+n && posB < 20+n ) { B = 0x48; } else if(posB > 20+n && posB < 30+n ) { B = 0x48; } else if(posB > 30+n && posB < 40+n ) { B = 0x48; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x30; } else if(posC > 10+n && posC < 20+n ) { C = 0x48; } else if(posC > 20+n && posC < 30+n ) { C = 0x48; } else if(posC > 30+n && posC < 40+n ) { C = 0x48; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'Q'){ if (posA > 0+n && posA < 10+n) { A = 0x3D; } else if(posA > 10+n && posA < 20+n ) { A = 0x22; } else if(posA > 20+n && posA < 30+n ) { A = 0x22; } else if(posA > 30+n && posA < 40+n ) { A = 0x22; } else if(posA > 40+n && posA < 50+n ) { A = 0x3C; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x3D; } else if(posB > 10+n && posB < 20+n ) { B = 0x22; } else if(posB > 20+n && posB < 30+n ) { B = 0x22; } else if(posB > 30+n && posB < 40+n ) { B = 0x22; } else if(posB > 40+n && posB < 50+n ) { B = 0x3C; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x3D; } else if(posC > 10+n && posC < 20+n ) { C = 0x22; } else if(posC > 20+n && posC < 30+n ) { C = 0x22; } else if(posC > 30+n && posC < 40+n ) { C = 0x22; } else if(posC > 40+n && posC < 50+n ) { C = 0x3C; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'R'){ if (posA > 0+n && posA < 10+n) { A = 0x31; } else if(posA > 10+n && posA < 20+n ) { A = 0x4A; } else if(posA > 20+n && posA < 30+n ) { A = 0x4C; } else if(posA > 30+n && posA < 40+n ) { A = 0x48; } else if(posA > 40+n && posA < 50+n ) { A = 0x7F; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x31; } else if(posB > 10+n && posB < 20+n ) { B = 0x4A; } else if(posB > 20+n && posB < 30+n ) { B = 0x4C; } else if(posB > 30+n && posB < 40+n ) { B = 0x48; } else if(posB > 40+n && posB < 50+n ) { B = 0x7F; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x31; } else if(posC > 10+n && posC < 20+n ) { C = 0x4A; } else if(posC > 20+n && posC < 30+n ) { C = 0x4C; } else if(posC > 30+n && posC < 40+n ) { C = 0x48; } else if(posC > 40+n && posC < 50+n ) { C = 0x7F; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'S'){ if (posA > 0+n && posA < 10+n) { A = 0x46; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x49; } else if(posA > 40+n && posA < 50+n ) { A = 0x31; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x46; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x49; } else if(posB > 40+n && posB < 50+n ) { B = 0x31; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x46; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x49; } else if(posC > 40+n && posC < 50+n ) { C = 0x31; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'T'){ if (posA > 0+n && posA < 10+n) { A = 0x40; } else if(posA > 10+n && posA < 20+n ) { A = 0x40; } else if(posA > 20+n && posA < 30+n ) { A = 0x7F; } else if(posA > 30+n && posA < 40+n ) { A = 0x40; } else if(posA > 40+n && posA < 50+n ) { A = 0x40; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x40; } else if(posB > 10+n && posB < 20+n ) { B = 0x40; } else if(posB > 20+n && posB < 30+n ) { B = 0x7F; } else if(posB > 30+n && posB < 40+n ) { B = 0x40; } else if(posB > 40+n && posB < 50+n ) { B = 0x40; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x40; } else if(posC > 10+n && posC < 20+n ) { C = 0x40; } else if(posC > 20+n && posC < 30+n ) { C = 0x7F; } else if(posC > 30+n && posC < 40+n ) { C = 0x40; } else if(posC > 40+n && posC < 50+n ) { C = 0x40; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'U'){ if (posA > 0+n && posA < 10+n) { A = 0x7E; } else if(posA > 10+n && posA < 20+n ) { A = 0x01; } else if(posA > 20+n && posA < 30+n ) { A = 0x01; } else if(posA > 30+n && posA < 40+n ) { A = 0x01; } else if(posA > 40+n && posA < 50+n ) { A = 0x7E; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x7E; } else if(posB > 10+n && posB < 20+n ) { B = 0x01; } else if(posB > 20+n && posB < 30+n ) { B = 0x01; } else if(posB > 30+n && posB < 40+n ) { B = 0x01; } else if(posB > 40+n && posB < 50+n ) { B = 0x7E; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x7E; } else if(posC > 10+n && posC < 20+n ) { C = 0x01; } else if(posC > 20+n && posC < 30+n ) { C = 0x01; } else if(posC > 30+n && posC < 40+n ) { C = 0x01; } else if(posC > 40+n && posC < 50+n ) { C = 0x7E; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'V'){ if (posA > 0+n && posA < 10+n) { A = 0x7C; } else if(posA > 10+n && posA < 20+n ) { A = 0x02; } else if(posA > 20+n && posA < 30+n ) { A = 0x01; } else if(posA > 30+n && posA < 40+n ) { A = 0x02; } else if(posA > 40+n && posA < 50+n ) { A = 0x7C; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x7C; } else if(posB > 10+n && posB < 20+n ) { B = 0x02; } else if(posB > 20+n && posB < 30+n ) { B = 0x01; } else if(posB > 30+n && posB < 40+n ) { B = 0x02; } else if(posB > 40+n && posB < 50+n ) { B = 0x7C; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x7C; } else if(posC > 10+n && posC < 20+n ) { C = 0x02; } else if(posC > 20+n && posC < 30+n ) { C = 0x01; } else if(posC > 30+n && posC < 40+n ) { C = 0x02; } else if(posC > 40+n && posC < 50+n ) { C = 0x7C; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'W'){ if (posA > 0+n && posA < 10+n) { A = 0x7E; } else if(posA > 10+n && posA < 20+n ) { A = 0x01; } else if(posA > 20+n && posA < 30+n ) { A = 0x0E; } else if(posA > 30+n && posA < 40+n ) { A = 0x01; } else if(posA > 40+n && posA < 50+n ) { A = 0x7E; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x7E; } else if(posB > 10+n && posB < 20+n ) { B = 0x01; } else if(posB > 20+n && posB < 30+n ) { B = 0x0E; } else if(posB > 30+n && posB < 40+n ) { B = 0x01; } else if(posB > 40+n && posB < 50+n ) { B = 0x7E; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x7E; } else if(posC > 10+n && posC < 20+n ) { C = 0x01; } else if(posC > 20+n && posC < 30+n ) { C = 0x0E; } else if(posC > 30+n && posC < 40+n ) { C = 0x01; } else if(posC > 40+n && posC < 50+n ) { C = 0x7E; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'X'){ if (posA > 0+n && posA < 10+n) { A = 0x77; } else if(posA > 10+n && posA < 20+n ) { A = 0x08; } else if(posA > 20+n && posA < 30+n ) { A = 0x08; } else if(posA > 30+n && posA < 40+n ) { A = 0x08; } else if(posA > 40+n && posA < 50+n ) { A = 0x77; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x77; } else if(posB > 10+n && posB < 20+n ) { B = 0x08; } else if(posB > 20+n && posB < 30+n ) { B = 0x08; } else if(posB > 30+n && posB < 40+n ) { B = 0x08; } else if(posB > 40+n && posB < 50+n ) { B = 0x77; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x77; } else if(posC > 10+n && posC < 20+n ) { C = 0x08; } else if(posC > 20+n && posC < 30+n ) { C = 0x08; } else if(posC > 30+n && posC < 40+n ) { C = 0x08; } else if(posC > 40+n && posC < 50+n ) { C = 0x77; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'Y'){ if (posA > 0+n && posA < 10+n) { A = 0x70; } else if(posA > 10+n && posA < 20+n ) { A = 0x08; } else if(posA > 20+n && posA < 30+n ) { A = 0x07; } else if(posA > 30+n && posA < 40+n ) { A = 0x08; } else if(posA > 40+n && posA < 50+n ) { A = 0x70; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x70; } else if(posB > 10+n && posB < 20+n ) { B = 0x08; } else if(posB > 20+n && posB < 30+n ) { B = 0x07; } else if(posB > 30+n && posB < 40+n ) { B = 0x08; } else if(posB > 40+n && posB < 50+n ) { B = 0x70; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x70; } else if(posC > 10+n && posC < 20+n ) { C = 0x08; } else if(posC > 20+n && posC < 30+n ) { C = 0x07; } else if(posC > 30+n && posC < 40+n ) { C = 0x08; } else if(posC > 40+n && posC < 50+n ) { C = 0x70; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == 'Z'){ if (posA > 0+n && posA < 10+n) { A = 0x61; } else if(posA > 10+n && posA < 20+n ) { A = 0x51; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x45; } else if(posA > 40+n && posA < 50+n ) { A = 0x43; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x61; } else if(posB > 10+n && posB < 20+n ) { B = 0x51; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x45; } else if(posB > 40+n && posB < 50+n ) { B = 0x43; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x61; } else if(posC > 10+n && posC < 20+n ) { C = 0x51; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x45; } else if(posC > 40+n && posC < 50+n ) { C = 0x43; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '0'){ if (posA > 0+n && posA < 10+n) { A = 0x3E; } else if(posA > 10+n && posA < 20+n ) { A = 0x41; } else if(posA > 20+n && posA < 30+n ) { A = 0x41; } else if(posA > 30+n && posA < 40+n ) { A = 0x41; } else if(posA > 40+n && posA < 50+n ) { A = 0x3E; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x3E; } else if(posB > 10+n && posB < 20+n ) { B = 0x41; } else if(posB > 20+n && posB < 30+n ) { B = 0x41; } else if(posB > 30+n && posB < 40+n ) { B = 0x41; } else if(posB > 40+n && posB < 50+n ) { B = 0x3E; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x3E; } else if(posC > 10+n && posC < 20+n ) { C = 0x41; } else if(posC > 20+n && posC < 30+n ) { C = 0x41; } else if(posC > 30+n && posC < 40+n ) { C = 0x41; } else if(posC > 40+n && posC < 50+n ) { C = 0x3E; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '1'){ if (posA > 0+n && posA < 10+n) { A = 0x01; } else if(posA > 10+n && posA < 20+n ) { A = 0x01; } else if(posA > 20+n && posA < 30+n ) { A = 0x7F; } else if(posA > 30+n && posA < 40+n ) { A = 0x21; } else if(posA > 40+n && posA < 50+n ) { A = 0x21; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x01; } else if(posB > 10+n && posB < 20+n ) { B = 0x01; } else if(posB > 20+n && posB < 30+n ) { B = 0x7F; } else if(posB > 30+n && posB < 40+n ) { B = 0x21; } else if(posB > 40+n && posB < 50+n ) { B = 0x21; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x01; } else if(posC > 10+n && posC < 20+n ) { C = 0x01; } else if(posC > 20+n && posC < 30+n ) { C = 0x7F; } else if(posC > 30+n && posC < 40+n ) { C = 0x21; } else if(posC > 40+n && posC < 50+n ) { C = 0x21; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '2'){ if (posA > 0+n && posA < 10+n) { A = 0x21; } else if(posA > 10+n && posA < 20+n ) { A = 0x51; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x45; } else if(posA > 40+n && posA < 50+n ) { A = 0x23; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x21; } else if(posB > 10+n && posB < 20+n ) { B = 0x51; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x45; } else if(posB > 40+n && posB < 50+n ) { B = 0x23; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x21; } else if(posC > 10+n && posC < 20+n ) { C = 0x51; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x48; } else if(posC > 40+n && posC < 50+n ) { C = 0x23; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '3'){ if (posA > 0+n && posA < 10+n) { A = 0x36; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x41; } else if(posA > 40+n && posA < 50+n ) { A = 0x22; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x36; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x41; } else if(posB > 40+n && posB < 50+n ) { B = 0x22; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x36; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x41; } else if(posC > 40+n && posC < 50+n ) { C = 0x22; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '4'){ if (posA > 0+n && posA < 10+n) { A = 0x04; } else if(posA > 10+n && posA < 20+n ) { A = 0x1F; } else if(posA > 20+n && posA < 30+n ) { A = 0x04; } else if(posA > 30+n && posA < 40+n ) { A = 0x04; } else if(posA > 40+n && posA < 50+n ) { A = 0x7C; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x04; } else if(posB > 10+n && posB < 20+n ) { B = 0x1F; } else if(posB > 20+n && posB < 30+n ) { B = 0x04; } else if(posB > 30+n && posB < 40+n ) { B = 0x04; } else if(posB > 40+n && posB < 50+n ) { B = 0x7C; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x04; } else if(posC > 10+n && posC < 20+n ) { C = 0x1F; } else if(posC > 20+n && posC < 30+n ) { C = 0x04; } else if(posC > 30+n && posC < 40+n ) { C = 0x04; } else if(posC > 40+n && posC < 50+n ) { C = 0x7C; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '5'){ if (posA > 0+n && posA < 10+n) { A = 0x46; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x49; } else if(posA > 40+n && posA < 50+n ) { A = 0x79; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x46; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x49; } else if(posB > 40+n && posB < 50+n ) { B = 0x79; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x46; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x49; } else if(posC > 40+n && posC < 50+n ) { C = 0x7C; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '6'){ if (posA > 0+n && posA < 10+n) { A = 0x26; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x49; } else if(posA > 40+n && posA < 50+n ) { A = 0x3E; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x26; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x49; } else if(posB > 40+n && posB < 50+n ) { B = 0x3E; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x26; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x49; } else if(posC > 40+n && posC < 50+n ) { C = 0x3E; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '7'){ if (posA > 0+n && posA < 10+n) { A = 0x60; } else if(posA > 10+n && posA < 20+n ) { A = 0x50; } else if(posA > 20+n && posA < 30+n ) { A = 0x47; } else if(posA > 30+n && posA < 40+n ) { A = 0x40; } else if(posA > 40+n && posA < 50+n ) { A = 0x40; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x60; } else if(posB > 10+n && posB < 20+n ) { B = 0x50; } else if(posB > 20+n && posB < 30+n ) { B = 0x47; } else if(posB > 30+n && posB < 40+n ) { B = 0x40; } else if(posB > 40+n && posB < 50+n ) { B = 0x40; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x60; } else if(posC > 10+n && posC < 20+n ) { C = 0x50; } else if(posC > 20+n && posC < 30+n ) { C = 0x47; } else if(posC > 30+n && posC < 40+n ) { C = 0x40; } else if(posC > 40+n && posC < 50+n ) { C = 0x40; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '8'){ if (posA > 0+n && posA < 10+n) { A = 0x36; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x49; } else if(posA > 40+n && posA < 50+n ) { A = 0x36; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x36; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x49; } else if(posB > 40+n && posB < 50+n ) { B = 0x36; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x36; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x49; } else if(posC > 40+n && posC < 50+n ) { C = 0x36; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } if (text == '9'){ if (posA > 0+n && posA < 10+n) { A = 0x3E; } else if(posA > 10+n && posA < 20+n ) { A = 0x49; } else if(posA > 20+n && posA < 30+n ) { A = 0x49; } else if(posA > 30+n && posA < 40+n ) { A = 0x49; } else if(posA > 40+n && posA < 50+n ) { A = 0x32; } else if(posA > 50+n && posA < 60+n ) { A = 0x00; } if (posB > 0+n && posB < 10+n) { B = 0x3E; } else if(posB > 10+n && posB < 20+n ) { B = 0x49; } else if(posB > 20+n && posB < 30+n ) { B = 0x49; } else if(posB > 30+n && posB < 40+n ) { B = 0x49; } else if(posB > 40+n && posB < 50+n ) { B = 0x32; } else if(posB > 50+n && posB < 60+n ) { B = 0x00; } if (posC > 0+n && posC < 10+n) { C = 0x3E; } else if(posC > 10+n && posC < 20+n ) { C = 0x49; } else if(posC > 20+n && posC < 30+n ) { C = 0x49; } else if(posC > 30+n && posC < 40+n ) { C = 0x49; } else if(posC > 40+n && posC < 50+n ) { C = 0x32; } else if(posC > 50+n && posC < 60+n ) { C = 0x00; } } } void Velocity(int v ,float posA,float posB,float posC){ char value[3] ; sprintf(value ,"%.2f",(v*10)); Text(value[0],posA,posB,posC,0); Text(value[1],posA,posB,posC,1); if (posA > 110 && posA < 120) { A = 0x01; } if (posB > 110 && posB < 120) { B = 0x01; } if (posC > 110 && posC < 120) { C = 0x01; } Text(value[2],posA,posB,posC,2); if (posA > 180 && posA < 190) { A = 0x7F; } else if(posA > 190 && posA < 200 ) { A = 0x04; } else if(posA > 210 && posA < 220 ) { A = 0x0A; } else if(posA > 220 && posA < 230 ) { A = 0x11; } else if(posA > 230 && posA < 240 ) { A = 0x0F; } else if(posA > 240 && posA < 250 ) { A = 0x08; } else if(posA > 250 && posA < 260 ) { A = 0x04; } else if(posA > 260 && posA < 270 ) { A = 0x08; } else if(posA > 270 && posA < 280 ) { A = 0x0F; } else if(posA > 280 && posA < 290 ) { A = 0x03; } else if(posA > 290 && posA < 300 ) { A = 0x0C; } else if(posA > 300 && posA < 310 ) { A = 0x30; } else if(posA > 310 && posA < 320 ) { A = 0x7F; } else if(posA > 320 && posA < 330 ) { A = 0x08; } else if(posA > 330 && posA < 340 ) { A = 0x0F; } else { A = 0x00; } if (posB > 180 && posB < 190) { B = 0x7F; } else if(posB > 190 && posB < 200 ) { B = 0x04; } else if(posB > 210 && posB < 220 ) { B = 0x0A; } else if(posB > 220 && posB < 230 ) { B = 0x11; } else if(posB > 230 && posB < 240 ) { B = 0x0F; } else if(posB > 240 && posB < 250 ) { B = 0x08; } else if(posB > 250 && posB < 260 ) { B = 0x04; } else if(posB > 260 && posB < 270 ) { B = 0x08; } else if(posB > 270 && posB < 280 ) { B = 0x0F; } else if(posB > 280 && posB < 290 ) { B = 0x03; } else if(posB > 290 && posB < 300 ) { B = 0x0C; } else if(posB > 300 && posB < 310 ) { B = 0x30; } else if(posB > 310 && posB < 320 ) { B = 0x7F; } else if(posB > 320 && posB < 330 ) { B = 0x08; } else if(posB > 330 && posB < 340 ) { B = 0x0F; } else { B = 0x00; } if (posC > 180 && posC < 190) { C = 0x7F; } else if(posC > 190 && posC < 200 ) { C = 0x04; } else if(posC > 210 && posC < 220 ) { C = 0x0A; } else if(posC > 220 && posC < 230 ) { C = 0x11; } else if(posC > 230 && posC < 240 ) { C = 0x0F; } else if(posC > 240 && posC < 250 ) { C = 0x08; } else if(posC > 250 && posC < 260 ) { C = 0x04; } else if(posC > 260 && posC < 270 ) { C = 0x08; } else if(posC > 270 && posC < 280 ) { C = 0x0F; } else if(posC > 280 && posC < 290 ) { C = 0x03; } else if(posC > 290 && posC < 300 ) { C = 0x0C; } else if(posC > 300 && posC < 310 ) { C = 0x30; } else if(posC > 310 && posC < 320 ) { C = 0x7F; } else if(posC > 320 && posC < 330 ) { C = 0x08; } else if(posC > 330 && posC < 340 ) { C = 0x0F; } else { C = 0x00; } } float posA = 0,posB,posC; int main() { A = 0; B = 0; C = 0; mode = 0; pc.baud(38400); //Set up I2C i2c.frequency(400000); // use fast (400 kHz) I2C bam.printf("CPU SystemCoreClock is %d Hz\r\n", SystemCoreClock); t.start(); // Read the WHO_AM_I register, this is a good test of communication uint8_t whoami = mpu9250.readByte(MPU9250_ADDRESS, WHO_AM_I_MPU9250); // Read WHO_AM_I register for MPU-9250 pc.printf("I AM 0x%x\n\r", whoami); bam.printf("I SHOULD BE 0x71\n\r"); if (whoami == 0x71) // WHO_AM_I should always be 0x68 { bam.printf("MPU9250 WHO_AM_I is 0x%x\n\r", whoami); bam.printf("MPU9250 is online...\n\r"); sprintf(buffer, "0x%x", whoami); wait(1); mpu9250.resetMPU9250(); // Reset registers to default in preparation for device calibration mpu9250.MPU9250SelfTest(SelfTest); // Start by performing self test and reporting values bam.printf("x-axis self test: acceleration trim within : %f % of factory value\n\r", SelfTest[0]); bam.printf("y-axis self test: acceleration trim within : %f % of factory value\n\r", SelfTest[1]); bam.printf("z-axis self test: acceleration trim within : %f % of factory value\n\r", SelfTest[2]); bam.printf("x-axis self test: gyration trim within : %f % of factory value\n\r", SelfTest[3]); bam.printf("y-axis self test: gyration trim within : %f % of factory value\n\r", SelfTest[4]); bam.printf("z-axis self test: gyration trim within : %f % of factory value\n\r", SelfTest[5]); mpu9250.calibrateMPU9250(gyroBias, accelBias); // Calibrate gyro and accelerometers, load biases in bias registers bam.printf("x gyro bias = %f\n\r", gyroBias[0]); bam.printf("y gyro bias = %f\n\r", gyroBias[1]); bam.printf("z gyro bias = %f\n\r", gyroBias[2]); bam.printf("x accel bias = %f\n\r", accelBias[0]); bam.printf("y accel bias = %f\n\r", accelBias[1]); bam.printf("z accel bias = %f\n\r", accelBias[2]); wait(2); mpu9250.initMPU9250(); bam.printf("MPU9250 initialized for active data mode....\n\r"); // Initialize device for active mode read of acclerometer, gyroscope, and temperature mpu9250.initAK8963(magCalibration); bam.printf("AK8963 initialized for active data mode....\n\r"); // Initialize device for active mode read of magnetometer bam.printf("Accelerometer full-scale range = %f g\n\r", 2.0f*(float)(1<<Ascale)); bam.printf("Gyroscope full-scale range = %f deg/s\n\r", 250.0f*(float)(1<<Gscale)); if(Mscale == 0) bam.printf("Magnetometer resolution = 14 bits\n\r"); if(Mscale == 1) bam.printf("Magnetometer resolution = 16 bits\n\r"); if(Mmode == 2) bam.printf("Magnetometer ODR = 8 Hz\n\r"); if(Mmode == 6) bam.printf("Magnetometer ODR = 100 Hz\n\r"); wait(1); } else { bam.printf("Could not connect to MPU9250: \n\r"); bam.printf("%#x \n", whoami); sprintf(buffer, "WHO_AM_I 0x%x", whoami); while(1) ; // Loop forever if communication doesn't happen } mpu9250.getAres(); // Get accelerometer sensitivity mpu9250.getGres(); // Get gyro sensitivity mpu9250.getMres(); // Get magnetometer sensitivity pc.printf("Accelerometer sensitivity is %f LSB/g \n\r", 1.0f/aRes); pc.printf("Gyroscope sensitivity is %f LSB/deg/s \n\r", 1.0f/gRes); pc.printf("Magnetometer sensitivity is %f LSB/G \n\r", 1.0f/mRes); magbias[0] = +470.; // User environmental x-axis correction in milliGauss, should be automatically calculated magbias[1] = +120.; // User environmental x-axis correction in milliGauss magbias[2] = +125.; // User environmental x-axis correction in milliGauss while(1) { // If intPin goes high, all data registers have new data if(mpu9250.readByte(MPU9250_ADDRESS, INT_STATUS) & 0x01) { // On interrupt, check if data ready interrupt mpu9250.readGyroData(gyroCount); // Read the x/y/z adc values // Calculate the gyro value into actual degrees per second gx = (float)gyroCount[0]*gRes - gyroBias[0]; // get actual gyro value, this depends on scale being set gy = (float)gyroCount[1]*gRes - gyroBias[1]; gz = (float)gyroCount[2]*gRes - gyroBias[2]; mpu9250.MahonyQuaternionUpdate(ax, ay, az, gx*PI/180.0f, gy*PI/180.0f, gz*PI/180.0f, my, mx, mz); // Serial print and/or display at 0.5 s rate independent of data rates delt_t = t.read_us() - count; if (delt_t > 1) { // update LCD once per half-second independent of read rate x = 1.2; posA += (gz*delt_t*x/1000000); posA = fmod(posA,360); posB = fmod(posA + 240,360); posC = fmod(posA + 120,360); count = t.read_us(); //Text('O',posA,posB,posC,0); // Text('B',posA,posB,posC,1); // Text('I',posA,posB,posC,2); // Text('F',posA,posB,posC,3); // Text(' ',posA,posB,posC,4); // Text(' ',posA,posB,posC,5); if (mode == 1) { Velocity(v,posA,posB,posC); } else if (mode == 2) { Text((char)word[0],posA,posB,posC,5); Text((char)word[1],posA,posB,posC,4); Text((char)word[2],posA,posB,posC,3); Text((char)word[3],posA,posB,posC,2); Text((char)word[4],posA,posB,posC,1); Text((char)word[5],posA,posB,posC,0); } } delt_t2 = t.read_us() - count2; if (delt_t2 >= 1000000) { v = (gz*x*PI*0.35*3600)/(180*1000*100); pc.printf("%0.1f",v); count2 = t.read_us(); } if (pc.readable()) { cmode = pc.getc(); switch(cmode) { case '&': word.clear(); break; case '?': mode = 1; break; case '!': mode = 2; break; default: word += cmode; } // bam.printf("%c %s %d\n",cmode, word, word.length()); } } } }