A short test program for all things m3pi and BtBee.
Dependencies: btbee m3pi_ng mbed
Fork of m3pi_btTest by
Diff: main.cpp
- Revision:
- 1:c1845f088b5d
- Parent:
- 0:546e224d2f88
- Child:
- 2:35d1143053d3
--- a/main.cpp Fri Apr 19 13:38:42 2013 +0000 +++ b/main.cpp Mon May 13 10:55:33 2013 +0000 @@ -1,12 +1,132 @@ #include "mbed.h" +#include "m3pi_ng.h" + + +m3pi m3pi; -DigitalOut myled(LED1); +DigitalOut mbed_led[] = {(LED1), (LED2),(LED3), (LED4)}; +DigitalOut m3pi_led[] = {(p13), (p14), (p15), (p16), (p17), (p18), (p19), (p20)}; +DigitalIn m3pi_pb(p21); +Timer t1; +//Serial btbee(p28, p27); // tx rx +//DigitalOut btbee_reset(p26); // 0 resets the device +//Serial btbee(p27, p28); // tx rx +int main() +{ + m3pi.locate(0,1); + //btbee_reset=1; // else it keeps resetting + mbed_led[0] = 1; + mbed_led[1] = 1; + mbed_led[2] = 1; + mbed_led[3] = 1; + m3pi_pb.mode(PullUp); // expected would be 1 when pb is pressed, 0 when not, opposite is the case + //btbee.baud(38400); // this is BtBee default for AT commands + //btbee.baud(9600); // this is BtBee default for regular commands + //btbee.format(); // the default should be fine + + + /* + for (int i = 0; i <8; i++) { + m3pi_led[i]=1; + } + */ + + /* THIS IS NOT DOCUMENTED??? + m3pi.locate(0,1); + m3pi.printf("Num %d",123456789); + */ + //t1.start(); + + // V=volume max is 15::O5=octave5::G16=G16th note::R24=rest24th note...a rest is needed between any two note that are the same + //char dixie[]= {'V','1','5','O','5','G','1','6','E','1','6','C','8','R','2','4','C','8','R','2','4','C','1','6','D','1','6','E','1','6','F','1','6','G','8','R','2','4','G','8','R','2','4','G','8','E','1','6'}; + //the number of characters in the array + //int len=49; + //m3pi.playtune(dixie,len); + + /* + wait(1); // 1 second + mbed_led[0] = 0; + mbed_led[1] = 0; + mbed_led[2] = 0; + mbed_led[3] = 0; + + for (int i = 0; i <8; i++) { + m3pi_led[i]=0; + } + */ + + /* + t1.stop(); + int t=t1.read_ms(); + t1.reset(); -int main() { - while(1) { - myled = 1; - wait(0.2); - myled = 0; - wait(0.2); + m3pi.locate(0,0); //cursor on the LCD; x 0-7 y 0-1 + m3pi.printf("%d",t); + m3pi.locate(0,1); + */ + + + //while (true){ + //m3pi_led[0]=!m3pi_pb; + //} +// char c; +// int pos = 0; +// int res; +// res=btbee_reset.read(); +// char res_c[30]; +// sprintf (res_c,"%d" ,res); +// m3pi.print(res_c,1); + + int * rawsens; + int sens1; + while(true){ + sens1=rawsens[0]; + t1.start(); + rawsens = m3pi.raw_sensor(); + t1.stop(); + wait(0.1); + m3pi.cls(); + m3pi.locate(0,1); + m3pi.printf("%d",rawsens[0]); + m3pi.locate(0,0); + m3pi.printf("%d",rawsens[0]-sens1); + //m3pi.printf("%d",t1.read_ms()); + t1.reset(); } + //wait(1.0); + + /* + while(m3pi_pb){ + m3pi_led[5]=!m3pi_led[5]; + wait(0.1); + } + + int ii=1; + while (true) { + m3pi_led[0]=1; + m3pi_led[1]=0; + if (btbee.writeable()) { + if (ii==6){btbee.printf("end\n");} + else {btbee.printf("Sensor %d. : %d \n",ii,rawsens[ii-1]);} + m3pi_led[0]=0; + ii++; + m3pi.locate(0,0); + m3pi.printf("Sent %0.3d",ii); + } + + while (btbee.readable()) { + c = btbee.getc(); + m3pi.locate(pos,1); + m3pi.print(&c,1); + pos++; + pos=pos%8; + + } + + wait(0.5); + } + */ } + + +