hello all
I am using the TCPIP stack, provided in the example EasyWeb to learn their management in a LPC1768. my goal is to communicate with a server via TCPIP, and respond to their orders, detecting packets sent me through IRQs in the reception of the descriptor.
so far I have clear how to get the packet data, to process, but do not quite understand the state machine of TCPIP.
had created a version where everything sent using PUTTY I gave it back and it works perfectly, without losing connection or anything like that. But when I put the server, after establishing connection, the server does not respond and therefore the server closes the connection by time out.
Can anyone tell me how and where I manage the answer to the server?
what I do is something like this:
in my IRQ
... if ((int_stat & INT_RX_DONE)) { ... DoNetworkStuff(); } ...
I once received a TCP packet, keep the payload into a buffer and put a flag to 1, ie pcktServerReady = 1.
in the main
... while(1) ... if(pcktServerReady == 1) { TCPIPComSend((unsigned char *)GetOutputBuffer(HARDWARE_DEVICE_TCPIP), iSizeBufferWrited); pcktServerReady = 0; } ...
in the DoNetworkStuff function there is a call to the function Rdy4Tx (), which simply allows the Tx, maybe I need to complete the function to check the TxStatus t to when you are ready for Tx Tx
I hope my explanation is clear ... Any solution?
thank everyone in advance
Rvn
I don't work with TCPNet anymore, but I know that this is vividly explained in the user manual available online. Did you have a look at it?
Tamir,
if you mean the LPC1768 user manual, I've read multiple times, each time I work on my project I have it avalaible, and understand what it says.
The problem is that despite this, I am not able to implement my solution.
See here:
http://www.keil.com/support/man/docs/rlarm/rlarm_tn_tcpip_prot.htm
OK Tamir, I had not seen before
I read it, i hope to find solution
thanks