tes
Dependencies: ASyncTicker EthernetInterface WebSocketClient mbed-rtos mbed MbedJSONValue xbee_lib
btNode.cpp
- Committer:
- ammanvedi
- Date:
- 2014-02-01
- Revision:
- 5:80a7d03c94f5
- Child:
- 6:c1bd3fadce09
File content as of revision 5:80a7d03c94f5:
#include "btNode.h" #include "mbed.h" #include "xbee.h" #include "xbeeFrame.h" const char btNode::ADDRESS[8] = {0x00, 0x13, 0xA2, 0x00, 0x40, 0x9B, 0x6D, 0xB0}; btNode::btNode(int D_ID){ ID = D_ID; } std::string btNode::SendMessage(std::string msg) { xbeeFrame xbee(p9, p10, p11); std::string full_msg = ""; char send_data[50] = "xbee string"; char to_send[100]; char * p = to_send; char * r = send_data; while (*r) { *p++ = *r++; } *p++ = ' '; r = (char *)msg.c_str(); while (*r) { *p++ = *r++; } *p++ = '\r'; *p = '\0'; printf("the data to send from class is %s\n\r\n\r", to_send); char data_buf[50]; xbee.InitFrame(); xbee.SetDestination((unsigned char *) ADDRESS); xbee.SetPayload(to_send); printf("sending payload: %s\n\r\n\r", to_send); xbee.AssembleFrame(); xbee.SendFrame(); for (int i = 0; i < 2; i++) { xbee.ReceiveFrame(data_buf, 500); if (xbee.frameReceived) { xbee.frameReceived = 0; if (xbee.GetType() == TX_STATUS) { if (xbee.GetStatus() == 0) { printf("Send success!\n\r"); } else { //printf("Send failed :(\n\r"); return "sending failed...."; } } else if (xbee.GetType() == RX_PACKET_64) { printf("Received data: %s\n\r", data_buf); } } } std::string response(data_buf); return response ; }