A short test program for all things m3pi and BtBee.

Dependencies:   btbee m3pi_ng mbed

Fork of m3pi_btTest by Nikolas Goldin

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);
+    }
+    */
 }
+
+
+