UDP Receive
IO Modules
No replies yet. Be the first to reply.
Join the discussion.
IO Modules
No replies yet. Be the first to reply.
Join the discussion.
Share projects and connect with makers.
Joined before the site update? first.
New to WIZnet Makers?
We sent a verification link to your address. Open it to activate your account, then log in.
Accounts from this email provider are reviewed by an administrator after verification. Approval usually takes one business day.
Already have an account?
Enter your email address. If it belongs to an account, we'll send a link to set a new password. Members who joined before the site update use this to set their password.
If an account uses that address, we sent a link to set a new password. The link works once and expires in 30 minutes.
Know your password?
Need an account?
RE: UDP Receive
by Eugeny ·
What is the RX buffer size for the socket you use? With TCP network devices can negotiate buffer size, with UDP if packet does not fit into the buffer, I am afraid it will be discarded. Thus might be that you set RX buffer size to 1 KB. Increase buffer size and see.
RE: RE: UDP Receive
by jyheo80 ·
Hello,
The current buffer size is set to 8KB.
As a result of testing with the default source, we receive up to 1472 bytes.
W5300_Drv_AVR_V1.2.2 By default, it seems to be set to 8KB. Is there anything I’m misunderstanding?
I can not go to the next because of this part. Please give me some advice. T.T
In w5300.c, the sysinit function is using the built-in default source and is set to 8KB in main.c as above. Of course, MAX_SOCK_NUM is set to 8 in iinchip_conf.h.
uint8 rx_mem_conf[8] = {8,8,8,8,8,8,8,8}; // for setting RMSR regsiter
if(!sysinit(tx_mem_conf,rx_mem_conf))
{
}
uint8 sysinit(uint8* tx_size, uint8* rx_size)
{
uint16 i;
uint16 ssum=0,rsum=0;
uint mem_cfg = 0;
for(i=0; i < MAX_SOCK_NUM; i++)
{
}
if( (ssum % 8) || ((ssum + rsum) != 128) )
{
#ifdef DEF_IINCHIP_DBG
#endif
}
IINCHIP_WRITE(TMSR0,tx_size[0]);
IINCHIP_WRITE(TMSR1,tx_size[1]);
IINCHIP_WRITE(TMSR2,tx_size[2]);
IINCHIP_WRITE(TMSR3,tx_size[3]);
IINCHIP_WRITE(TMSR4,tx_size[4]);
IINCHIP_WRITE(TMSR5,tx_size[5]);
IINCHIP_WRITE(TMSR6,tx_size[6]);
IINCHIP_WRITE(TMSR7,tx_size[7]);
IINCHIP_WRITE(RMSR0,rx_size[0]);
IINCHIP_WRITE(RMSR1,rx_size[1]);
IINCHIP_WRITE(RMSR2,rx_size[2]);
IINCHIP_WRITE(RMSR3,rx_size[3]);
IINCHIP_WRITE(RMSR4,rx_size[4]);
IINCHIP_WRITE(RMSR5,rx_size[5]);
IINCHIP_WRITE(RMSR6,rx_size[6]);
IINCHIP_WRITE(RMSR7,rx_size[7]);
for(i=0; i <ssum/8 ; i++)
{
}
IINCHIP_WRITE(MTYPER,(uint8)(mem_cfg >> 8));
IINCHIP_WRITE(MTYPER1,(uint8)(mem_cfg & 0xff));
#ifdef DEF_IINCHIP_DBG
#endif
return 1;
}