Mode3
Dependencies: WiflyInterface mbed C12832_lcd
Fork of IOT-Project-LED-ControlTelnet by
main.cpp@7:7f0988b083cb, 2014-06-09 (annotated)
- Committer:
- bhakti08
- Date:
- Mon Jun 09 23:41:37 2014 +0000
- Revision:
- 7:7f0988b083cb
- Parent:
- 6:c9595d2630c7
- Child:
- 8:c20dc0f4bc92
Final_mode_2;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bhakti08 | 4:d1e0e52f7f6b | 1 | //This Program is used to turn the LED ON/OFF via telent (Wifly connected) |
samux | 1:31e50fea8be8 | 2 | #include "mbed.h" |
samux | 1:31e50fea8be8 | 3 | #include "WiflyInterface.h" |
bhakti08 | 4:d1e0e52f7f6b | 4 | #include <string.h> |
bhakti08 | 5:62cd993d82a6 | 5 | |
bhakti08 | 4:d1e0e52f7f6b | 6 | #define ECHO_SERVER_PORT 7 |
bhakti08 | 6:c9595d2630c7 | 7 | #define FWD 3 |
bhakti08 | 5:62cd993d82a6 | 8 | #define REV 4 |
bhakti08 | 6:c9595d2630c7 | 9 | #define LEFT 1 |
bhakti08 | 6:c9595d2630c7 | 10 | #define RIGHT 2 |
bhakti08 | 6:c9595d2630c7 | 11 | #define STOP 0 |
bhakti08 | 6:c9595d2630c7 | 12 | #define STRAIGHT_WHEEL 5 |
bhakti08 | 7:7f0988b083cb | 13 | #define servo_1 6 |
bhakti08 | 7:7f0988b083cb | 14 | #define servo_2 7 |
bhakti08 | 5:62cd993d82a6 | 15 | |
bhakti08 | 5:62cd993d82a6 | 16 | |
bhakti08 | 4:d1e0e52f7f6b | 17 | PwmOut servo(p22); |
bhakti08 | 4:d1e0e52f7f6b | 18 | DigitalOut dir(LED1); |
bhakti08 | 6:c9595d2630c7 | 19 | BusOut motor(p5,p6,p7); |
bhakti08 | 5:62cd993d82a6 | 20 | |
bhakti08 | 5:62cd993d82a6 | 21 | //#define FWD 1 |
bhakti08 | 5:62cd993d82a6 | 22 | //#define REV 0 |
bhakti08 | 5:62cd993d82a6 | 23 | |
bhakti08 | 5:62cd993d82a6 | 24 | |
samux | 1:31e50fea8be8 | 25 | /* wifly interface: |
samux | 1:31e50fea8be8 | 26 | * - p9 and p10 are for the serial communication |
samux | 1:31e50fea8be8 | 27 | * - p19 is for the reset pin |
samux | 1:31e50fea8be8 | 28 | * - p26 is for the connection status |
samux | 1:31e50fea8be8 | 29 | * - "mbed" is the ssid of the network |
samux | 1:31e50fea8be8 | 30 | * - "password" is the password |
samux | 1:31e50fea8be8 | 31 | * - WPA is the security |
samux | 1:31e50fea8be8 | 32 | */ |
avnisha | 3:034dbd0b2002 | 33 | //apps board |
bhakti08 | 4:d1e0e52f7f6b | 34 | WiflyInterface wifly(p9, p10, p30, p29, "MY_WIFI", "", NONE); |
bhakti08 | 5:62cd993d82a6 | 35 | |
avnisha | 3:034dbd0b2002 | 36 | //pololu |
bhakti08 | 4:d1e0e52f7f6b | 37 | //WiflyInterface wifly(p28, p27, p26, NC, "iotlab", "42F67YxLX4AawRdcj", WPA); |
bhakti08 | 5:62cd993d82a6 | 38 | |
samux | 1:31e50fea8be8 | 39 | int main() { |
avnisha | 3:034dbd0b2002 | 40 | |
samux | 1:31e50fea8be8 | 41 | wifly.init(); //Use DHCP |
bhakti08 | 4:d1e0e52f7f6b | 42 | printf("1\r\n"); |
samux | 1:31e50fea8be8 | 43 | while (!wifly.connect()); |
samux | 1:31e50fea8be8 | 44 | printf("IP Address is %s\n\r", wifly.getIPAddress()); |
bhakti08 | 5:62cd993d82a6 | 45 | |
bhakti08 | 4:d1e0e52f7f6b | 46 | TCPSocketServer server; |
bhakti08 | 4:d1e0e52f7f6b | 47 | |
bhakti08 | 4:d1e0e52f7f6b | 48 | server.bind(ECHO_SERVER_PORT); |
bhakti08 | 4:d1e0e52f7f6b | 49 | server.listen(); |
bhakti08 | 5:62cd993d82a6 | 50 | |
bhakti08 | 4:d1e0e52f7f6b | 51 | printf("\nWait for new connection...\n"); |
bhakti08 | 4:d1e0e52f7f6b | 52 | TCPSocketConnection client; |
bhakti08 | 4:d1e0e52f7f6b | 53 | server.accept(client); |
bhakti08 | 6:c9595d2630c7 | 54 | printf("Server accept\r\n"); |
bhakti08 | 6:c9595d2630c7 | 55 | |
bhakti08 | 4:d1e0e52f7f6b | 56 | char buffer[256]; |
bhakti08 | 4:d1e0e52f7f6b | 57 | servo.period_us(50); |
bhakti08 | 5:62cd993d82a6 | 58 | motor = STOP; |
bhakti08 | 4:d1e0e52f7f6b | 59 | while (true) { |
bhakti08 | 5:62cd993d82a6 | 60 | //if (client.available()){ |
bhakti08 | 5:62cd993d82a6 | 61 | int n = client.receive(buffer, sizeof(buffer)); |
bhakti08 | 5:62cd993d82a6 | 62 | if (n <= 0) continue; |
bhakti08 | 5:62cd993d82a6 | 63 | buffer[n] = 0; |
bhakti08 | 5:62cd993d82a6 | 64 | printf("String is : %s\r\n",buffer); |
bhakti08 | 5:62cd993d82a6 | 65 | |
bhakti08 | 5:62cd993d82a6 | 66 | client.send_all(buffer, n); |
bhakti08 | 5:62cd993d82a6 | 67 | if (!(strcmp (buffer, "w"))) |
bhakti08 | 5:62cd993d82a6 | 68 | motor = FWD; |
bhakti08 | 5:62cd993d82a6 | 69 | else if (!(strcmp(buffer,"x"))) |
bhakti08 | 5:62cd993d82a6 | 70 | motor = REV; |
bhakti08 | 5:62cd993d82a6 | 71 | else if (!(strcmp(buffer,"z"))) |
bhakti08 | 5:62cd993d82a6 | 72 | motor = STRAIGHT_WHEEL; |
bhakti08 | 5:62cd993d82a6 | 73 | else if (!(strcmp(buffer,"d"))) |
bhakti08 | 5:62cd993d82a6 | 74 | motor = RIGHT; |
bhakti08 | 5:62cd993d82a6 | 75 | else if (!(strcmp(buffer,"a"))) |
bhakti08 | 5:62cd993d82a6 | 76 | motor = LEFT; |
bhakti08 | 5:62cd993d82a6 | 77 | else if (!(strcmp(buffer,"s"))) |
bhakti08 | 5:62cd993d82a6 | 78 | motor = STOP; |
bhakti08 | 7:7f0988b083cb | 79 | else if (!(strcmp(buffer,"o"))) |
bhakti08 | 7:7f0988b083cb | 80 | motor = servo_1; |
bhakti08 | 7:7f0988b083cb | 81 | else if (!(strcmp(buffer,"p"))) |
bhakti08 | 7:7f0988b083cb | 82 | motor = servo_2; |
bhakti08 | 5:62cd993d82a6 | 83 | //} |
bhakti08 | 4:d1e0e52f7f6b | 84 | servo.pulsewidth_us(10); |
bhakti08 | 4:d1e0e52f7f6b | 85 | wait_us(1); |
avnisha | 3:034dbd0b2002 | 86 | } |
bhakti08 | 5:62cd993d82a6 | 87 | } |