A question about RECV command in S0_CR register
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Ethernet Chips
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: A question about RECV command in S0_CR register
by Eugeny ·
Read W5100’s datasheet on the algorithms and how to handle buffers.
Any time can be proper time for application. If there’s free space in RX buffer, incoming data will be placed into the buffer. If there’s no space in the buffer, then RECV will do nothing. Thus it is in your interest to free buffer as quick as possible.
You can extract byte count less than currently indicated by received data size, and you should set new pointer accordingly (+256 bytes). Then, if you issue RECV command, those 256 byte space will be considered as “free” for new data.
Again, keeping data in the buffer you risk to miss new data (in case of UDP). But generally you can extract by 1 byte, and every time use RECV command to receive one further byte. Also keep in mind that it is a killer from performance perspective. The bigger size of data you move and “free”, the faster everything works.