tes
Dependencies: ASyncTicker EthernetInterface WebSocketClient mbed-rtos mbed MbedJSONValue xbee_lib
Diff: main.cpp
- Revision:
- 3:28cd6502dafd
- Parent:
- 2:1c8d8d728b93
- Child:
- 4:84abfe990493
--- a/main.cpp Tue Jan 28 14:38:37 2014 +0000 +++ b/main.cpp Thu Jan 30 16:58:07 2014 +0000 @@ -7,8 +7,19 @@ #include "ASyncTicker.h" #include "xbee.h" #include "xbeeFrame.h" +#include <ctype.h> #define PORT 80 +//status leds + +//led 1 + // lit - successful ethernet connection +DigitalOut led_ethernet(LED1); +//led 2 + // lit - successful socket connection +DigitalOut led_socket(LED2); + + EthernetInterface ethernet; Websocket ws("ws://192.168.0.4:8080/"); @@ -38,8 +49,11 @@ if (ws.read(str)) { memset(id,0,30); memset(new_msg, 0, 50); - sscanf((char *)str, "%s %s ", id, new_msg); - printf("id : %s string: %s (original: %s) \n\r", id, new_msg, str); + printf("msg form svr: %s\n\r", str); + sscanf((char *)str, "%s %[^\t]", id, new_msg); + + printf("the id : %s will update to : %s\n\r", id, new_msg); + //send string to xbee HERE if(strlen(new_msg) == 0) @@ -60,12 +74,14 @@ r = new_msg; while(*r) *p++ = *r++; + *p++ = '\r'; *p = '\0'; char data_buf[50]; xbee.InitFrame(); xbee.SetDestination((unsigned char *)dest_address); xbee.SetPayload(to_send); + printf("sending payload: %s\n\r", to_send); xbee.AssembleFrame(); xbee.SendFrame(); @@ -87,10 +103,7 @@ printf("Received data: %s\n\r", data_buf); } } - - - - + } @@ -102,19 +115,25 @@ int main () { + led_ethernet = 0; + led_socket = 0; ethernet.init(); // connect with DHCP int ret_val = ethernet.connect(); if (0 == ret_val) { - printf("IP Address: %s\n\r", ethernet.getIPAddress()); + printf("\n\rIP Address: %s\n\r", ethernet.getIPAddress()); + led_ethernet = 1; } else { error("ethernet failed to connect: %d.\n\r", ret_val); } int interval = 5; - ws.connect(); + if(ws.connect()) + { + led_socket = 1; + } Timer timer; timer.start();