I test the FreeRTOS+TCP, sending data from FreeRTOS to PC, FreeRTOS is the server side, minor change from example “SimpleTCPEchoServer.c”, see attachment. PC side can receive data well. but have problem when I do below experiment:
- run pc side program to receive data, data can receive smoothly; and run ping FreeRTOS in cycle
- unplug eth cable
- wait until timeout(5 sec)
- plug in the eth cable, FreeRTOS will never reply ping any more.
In step3, if not wait timeout, quickly plug in the cable, ping will be replied.
Where should I check for this problem? Thanks for any help!
- xilinx zynq zybo board
- some minor change from 160919_FreeRTOS_Labs:
a) disable DHCP, using static ip
b) call “vStartSimple2TCPServerTasks( mainTCP_SERVER_STACK_SIZE, tskIDLE_PRIORITY+2 );” before vTaskStartScheduler in main()
c) EchoServer port set to 1000 in SimpleTCPEchoServer.c
d) not receive data, just sending data in SimpleTCPEchoServer.c