ok

Dependencies:   WiflyInterface m3pi mbed

Fork of m3pi_HelloWorld by Chris Styles

Committer:
avnisha
Date:
Thu Oct 24 00:30:45 2013 +0000
Revision:
8:10b6a9b053aa
Parent:
7:d0689e8f23bf
BASIC ok; not BASIC seems to hang

Who changed what in which revision?

UserRevisionLine numberNew contents of line
avnisha 8:10b6a9b053aa 1 //#define BASIC
avnisha 8:10b6a9b053aa 2 #ifdef BASIC
chris 0:93bba564574a 3 #include "mbed.h"
chris 0:93bba564574a 4 #include "m3pi.h"
chris 0:93bba564574a 5
chris 7:d0689e8f23bf 6 m3pi m3pi;
chris 0:93bba564574a 7
chris 0:93bba564574a 8 int main() {
chris 0:93bba564574a 9
chris 2:5a329194c74d 10 m3pi.locate(0,1);
chris 2:5a329194c74d 11 m3pi.printf("LO World");
chris 5:7619250a5b1d 12
chris 5:7619250a5b1d 13 wait (2.0);
chris 0:93bba564574a 14
chris 6:602fc2239837 15 m3pi.forward(0.5); // Forward half speed
chris 7:d0689e8f23bf 16 wait (0.5); // wait half a second
chris 7:d0689e8f23bf 17 m3pi.left(0.5); // Turn left at half speed
chris 7:d0689e8f23bf 18 wait (0.5); // wait half a second
chris 7:d0689e8f23bf 19 m3pi.backward(0.5);// Backward at half speed
chris 7:d0689e8f23bf 20 wait (0.5); // wait half a second
chris 7:d0689e8f23bf 21 m3pi.right(0.5); // Turn right at half speed
chris 7:d0689e8f23bf 22 wait (0.5); // wait half a second
chris 0:93bba564574a 23
chris 7:d0689e8f23bf 24 m3pi.stop();
avnisha 8:10b6a9b053aa 25 }
avnisha 8:10b6a9b053aa 26
avnisha 8:10b6a9b053aa 27 #else
avnisha 8:10b6a9b053aa 28 #include "mbed.h"
avnisha 8:10b6a9b053aa 29 #include "m3pi.h"
avnisha 8:10b6a9b053aa 30 #include "WiflyInterface.h"
avnisha 8:10b6a9b053aa 31
avnisha 8:10b6a9b053aa 32 m3pi m3pi;
avnisha 8:10b6a9b053aa 33 int echo();
avnisha 8:10b6a9b053aa 34
avnisha 8:10b6a9b053aa 35
avnisha 8:10b6a9b053aa 36 int main() {
avnisha 8:10b6a9b053aa 37
avnisha 8:10b6a9b053aa 38 m3pi.locate(0,1);
avnisha 8:10b6a9b053aa 39 m3pi.printf("LO World");
avnisha 8:10b6a9b053aa 40
avnisha 8:10b6a9b053aa 41 wait (2.0);
avnisha 8:10b6a9b053aa 42
avnisha 8:10b6a9b053aa 43 m3pi.forward(0.5); // Forward half speed
avnisha 8:10b6a9b053aa 44 wait (0.5); // wait half a second
avnisha 8:10b6a9b053aa 45 m3pi.left(0.5); // Turn left at half speed
avnisha 8:10b6a9b053aa 46 wait (0.5); // wait half a second
avnisha 8:10b6a9b053aa 47 m3pi.backward(0.5);// Backward at half speed
avnisha 8:10b6a9b053aa 48 wait (0.5); // wait half a second
avnisha 8:10b6a9b053aa 49 m3pi.right(0.5); // Turn right at half speed
avnisha 8:10b6a9b053aa 50 wait (0.5); // wait half a second
avnisha 8:10b6a9b053aa 51 m3pi.stop();
avnisha 8:10b6a9b053aa 52
avnisha 8:10b6a9b053aa 53 m3pi.stop();
avnisha 8:10b6a9b053aa 54 //echo();
avnisha 8:10b6a9b053aa 55 }
avnisha 8:10b6a9b053aa 56
avnisha 8:10b6a9b053aa 57
avnisha 8:10b6a9b053aa 58
avnisha 8:10b6a9b053aa 59 #define ECHO_SERVER_PORT 7
avnisha 8:10b6a9b053aa 60
avnisha 8:10b6a9b053aa 61 /* wifly object where:
avnisha 8:10b6a9b053aa 62 * - p9 and p10 are for the serial communication
avnisha 8:10b6a9b053aa 63 * - p25 is for the reset pin
avnisha 8:10b6a9b053aa 64 * - p26 is for the connection status
avnisha 8:10b6a9b053aa 65 * - "mbed" is the ssid of the network
avnisha 8:10b6a9b053aa 66 * - "password" is the password
avnisha 8:10b6a9b053aa 67 * - WPA is the security
avnisha 8:10b6a9b053aa 68 */
avnisha 8:10b6a9b053aa 69
avnisha 8:10b6a9b053aa 70 WiflyInterface wifly(p9, p10, p25, p26, "bubbles", "", NONE);
avnisha 8:10b6a9b053aa 71
avnisha 8:10b6a9b053aa 72 int echo (void)
avnisha 8:10b6a9b053aa 73 {
avnisha 8:10b6a9b053aa 74 wifly.init(); // use DHCP
avnisha 8:10b6a9b053aa 75 while (!wifly.connect()); // join the network
avnisha 8:10b6a9b053aa 76 m3pi.printf("IP Address:port %s:%d\n\r", wifly.getIPAddress(), 7);
avnisha 8:10b6a9b053aa 77
avnisha 8:10b6a9b053aa 78 TCPSocketServer server;
avnisha 8:10b6a9b053aa 79
avnisha 8:10b6a9b053aa 80 server.bind(ECHO_SERVER_PORT);
avnisha 8:10b6a9b053aa 81 server.listen();
avnisha 8:10b6a9b053aa 82
avnisha 8:10b6a9b053aa 83 m3pi.printf("\nWait for new connection...\n");
avnisha 8:10b6a9b053aa 84 TCPSocketConnection client;
avnisha 8:10b6a9b053aa 85 server.accept(client);
avnisha 8:10b6a9b053aa 86
avnisha 8:10b6a9b053aa 87 char buffer[256];
avnisha 8:10b6a9b053aa 88 while (true) {
avnisha 8:10b6a9b053aa 89 int n = client.receive(buffer, sizeof(buffer));
avnisha 8:10b6a9b053aa 90 if (n <= 0) continue;
avnisha 8:10b6a9b053aa 91 buffer[n] = 0;
avnisha 8:10b6a9b053aa 92
avnisha 8:10b6a9b053aa 93 client.send_all(buffer, n);
avnisha 8:10b6a9b053aa 94 }
avnisha 8:10b6a9b053aa 95 }
avnisha 8:10b6a9b053aa 96 #endif
avnisha 8:10b6a9b053aa 97