An m3pi demo program for Bluetooth control.

Dependencies:   X_NUCLEO_53L0A1 m3pi mbed

Fork of m3pi_BT by Alexander Saad-Falcon

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "m3pi.h"
00003 
00004 m3pi m3pi;
00005 DigitalOut led(LED1);
00006 DigitalOut pong(p20);
00007 Serial bt(p13, p14); //TX, RX
00008 
00009 int main()
00010 {
00011     m3pi.locate(0,1);
00012     m3pi.printf("YO");
00013 
00014     while (!bt.readable()) { } //wait until the bt is ready
00015 
00016 ///////LED change will register if the command was recieved or not
00017     while(1) {
00018 
00019         if (bt.getc()=='F') {
00020             m3pi.forward(.25);
00021             led = !led;
00022         }
00023         if (bt.getc()=='B') {
00024             m3pi.backward(.25);
00025             led = !led;
00026         }
00027         if (bt.getc()=='L') {
00028             m3pi.left(.25);
00029             led = !led;
00030         }
00031         if (bt.getc()=='R') {
00032             m3pi.right(.25);
00033             led = !led;
00034         }
00035         if (bt.getc()=='S') {
00036             m3pi.stop();
00037             led = !led;
00038         }
00039         if (bt.getc()=='X') {
00040             pong = 1;
00041             led = !led;
00042             wait(.001);
00043             pong = 0;
00044         }
00045         while (bt.readable()) char temp = bt.getc(); //flush buffer
00046     }
00047 }