A http client sample program.
Dependencies: NyFileSystems libMiMic mbed-rtos mbed
Fork of TcpSocketClientSamlpe by
main.cpp
- Committer:
- nyatla
- Date:
- 2013-10-02
- Revision:
- 25:1a4f620b7af6
- Parent:
- 24:83a1d2bc8709
- Child:
- 26:f58dc24e2c1b
File content as of revision 25:1a4f620b7af6:
/** * @file * TCP client socket sample.<br/> * This program is to test of TCP client. * Connect to a TCP server, and send back the received data as is. * */ #include "mbed.h" #include "rtos.h" #include "SDFileSystem.h" #include "mimic.h" #include "utils/PlatformInfo.h" #include "fsdata.h" NetConfig cfg; //create network configulation Net* net; DigitalOut led1(LED1); DigitalOut led2(LED2); DigitalOut led3(LED3); DigitalOut led4(LED4); int main() { net=new Net();//Net constructor must be created after started RTOS // manual setting cfg.setIpAddr(192,168,128,39); cfg.setNetMask(255,255,255,0); cfg.setGateway(192,168,128,254); // Create tcp socket with 512 bytes RX buffer. // Socket must create between "net.start" with "new Net()" TcpSocket socket(512); //Start network net->start(cfg); led1=1; for(;;){ //connect to server if(!socket.connect(IpAddr(192,168,128,195),1234)){ Thread::wait(1000); } //connected! led2=1; for(;;){ led4=0; led3=1; //wait for data... const void* rx; //get read pointer int l=socket.precv(rx); if(l<0){ break; } if(l==0){ //timeout }else{ //ok,echo back data. led4=1; //send data if(!socket.send(rx,l)){ break; } //move read pointer. socket.pseek(l); } led3=0; } led2=0; led3=0; led4=0; socket.close(); //close the socket. } return 0; }