Format problem of W5300 UDP receive buffer

#1

Hello,
DSP controls w5300 communicating with PC, UDP protocol, 16 bit data bus.
W5300 send data to PC is OK, but there are some problems with w5300 receive data.
PC IP : 192.168.21.19(Hexadecimal : C0.A8.15.13 ), UDP port : 6000
W5300 IP : 192.168.21.20 ; UDP port : 6000
PC Send buffer: tx[10] = {0,1,2,3,4,5,6,7,8,9};
W5300 receive data by INTERRUPT mode. The following figure is get in function : recvfrom()
In the figure, the format of W5300’s receive buffer is incorrect, both the PACKT-INFO and PACKET-DATA.
I have insert getMR() between sendto() and recvfrom(), but the result is all the same as the figure.
How can I resolve it ?
Thanks!

#2

Hi,
I’m sorry I have no experience on DSP.

I wonder How to save 8bit & 16bit data into data memory?

According to your captured image, It seems to like expand 16bit to 32bit data.

Will be data saved into as the follow?
rx[0] : 0x0001
rx[1] : 0x0203 <-- Not 0x0000
rx[2] : 0x0405
rx[3] : 0x0607 <—Not 0x0000

Anyway, I don’t understand why data is saved into memory such that.

Thank you.

#3

Thanks for you replay!
There are something wrong with ip ddress, port number and read buffer routine. Moidify it, all the best