1 / 12
文档名称:

w5500通讯性能测试.doc

格式:doc   大小:2,228KB   页数:12页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

w5500通讯性能测试.doc

上传人:lu2yuwb 2021/4/17 文件大小:2.18 MB

下载得到文件列表

w5500通讯性能测试.doc

文档介绍

文档介绍:
: .
W5500通讯性能测试
以太网TCP在W5500上的通讯性能测试
author:ANGRY_KUA_MAX
QQ :2518383357
Time :2018-01-12
本文为原创,转载请通知作者,文中代码,请勿用于商业用途!
欢迎技术讨论,作者擅长ARM,FPGA,电路设计,C#,Delphi,BCB,Ocx…有偿解决任何技术难题与Bug!
欢迎技术讨论,作者擅长ARM,FPGA,电路设计,C#,Delphi,BCB,Ocx…有偿解决任何技术难题与Bug!
方式;初始化W5500为四个端口,各个收发缓存为(8K,4K,2K,2K),缓存对收发速度有影响。测试的端口收发缓存为
1. TCP测试数据
. W5500上传数据函数
switch(getSn_SR(NET_TYPE_TCP))
{
case SOCK_INIT:
listen(NET_TYPE_TCP);
break;
case SOCK_ESTABLISHED:
if(getSn_IR(NET_TYPE_TCP) & Sn_IR_CON)
{
setSn_IR(NET_TYPE_TCP, Sn_IR_CON);
}
len=getSn_RX_RSR(NET_TYPE_TCP);
if(len>0)
{
len = (len > NET_BUF_RXSIZE)?NET_BUF_RXSIZE:len;
len = recv(NET_TYPE_TCP,net_rxbuf,len);
if(len > 0)
{
while(1) //作死的发送
{
send(NET_TYPE_TCP,net_rxbuf,1460); //本函数为阻塞函数,发生成功后,本函数才会返回
}
}
}
break;
case SOCK_FIN_WAIT:
case SOCK_CLOSING:
case SOCK_TIME_WAIT:
case SOCK_CLOSE_WAIT:
case SOCK_LAST_ACK:
close(NET_TYPE_TCP);
break;
case SOCK_CLOSED:
socket(NET_TYPE_TCP,Sn_MR_TCP,net_sys_info->,Sn_MR_ND);
break;
default:
break;
}
. W5500上传速率
网络传输速率我们使用IPOP工具与360自带的加速球查看,其中IPOP软件以bit为单位,其实际的速度与360监测的一致(6080/8=750KB),即W5500在SPI速率为18兆位/秒的速度下测试,测试出来的通讯速度可达到750K左右,作者使用STM32F407做测试,,STM32F107的通讯速率截图如下:
. W5500下载数据函数
While(1)
{
switch(getSn_SR(NET_TYPE_TCP))
{
case SOCK_INIT:
listen(NET_TYPE_TCP);
break;
case SOCK_ESTABLISHED:
if(getSn_IR(NET_TYPE_TCP) & Sn_IR_CON)
{
setSn_IR(NET_TYPE_TCP, Sn_IR_CON);
}
len=getSn_RX_RSR(NET_TYPE_TCP);
if(len>0)
{
len = (len > NET_BUF_RXSIZE)?NET_BUF_RXSIZE:len;
len = recv(NET_TYPE_TCP,net_rxbuf,len);
if(len > 0)
{
memcpy(net_tempbuf,net_rxbuf,len);//收到的数据保存
//
}
}
break;
case SOCK_FIN_WAIT:
case SOCK_CLOSING:
case SOCK_TIME_WAIT:
case SOCK_CLOSE_WAIT:
cas