一、背景
1、CycloneTCP
CycloneTCP地址:CycloneTCP | Embedded TCP/IP Stack for STM32, PIC32, ARM Cortex-M
2、TC397 CycloneTCP
CycloneTCP协议栈有TC397的以太网demo程序,有官方移植好的demo程序。
测试硬件使用官方的KIT_A2G_TC397XA_TFT评估板。
CycloneTCP支持的infineon的MCU
TC397支持的demo
二、TC397 CycloneTCP网速测试
1、测试代码
unsigned char erfBuffer[4096];
void iperf(void *para)
{
Socket *erfSocket;
NetInterface *interface;
IpAddr erfipAddr;
error_t error;
erfSocket = socketOpen(SOCKET_TYPE_STREAM, SOCKET_IP_PROTO_TCP);
if(erfSocket != NULL)
{
socketBindToInterface(erfSocket, interface);
ipStringToAddr("192.168.0.1", &erfipAddr);
vTaskDelay(5000);
while(1)
{
error = socketConnect(erfSocket,&erfipAddr,5001);
if(error == NO_ERROR)
{
TRACE_INFO("TCP Connect OK \r\n");
while(1)
{
error = socketSend(erfSocket,erfBuffer,1024,NULL,0);
if(error != NO_ERROR)
{
TRACE_INFO("socket send error %d \r\n",error);
}
}
}
else
{
TRACE_INFO("TCP Connect Failed \r\n");
vTaskDelay(100);
}
}
}
else
{
while(1)
{
TRACE_INFO("socket open error \r\n");
vTaskDelay(100);
}
}
}
测试上位机使用jperf
目前使用TCP测试的网速仅有约8MB/s,UDP约18MB/s,与理论的125MB(1000Mbit)有差距。