We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
i am devoloping with arm7,and using tcp/ip
(TcpNet) ,but i get a very low speed when
communicating with pc;
i don't know whether there is a speed limit of the
tcp/ip stack, will you share me with the debugged
speed limit ?
what i use is TCP; and my arm is lpc2214, the
application is used for transporting real-time signal
and control between pc and arm; so the speed is
important; but i get a very low speed;
my application uses a state machine for receiving
and sending data just like the example in the file
"RTL.chm"
for the beginning ,i just want to know the speed and
decide whether it run qucikly enough for my purpose;
thanks for your reply!
If your application sends single TCP packet to the PC, and it is a relatively short one, PC won't ACK it for 200mS or until it receives another packet. That's called "delayed ACK" and it helps in getting high transfer speeds on large amount of data. The default 2-packet delay can be changed by modifying Windows registry. Google "windows delayed ack" about the subject.
- Dejan
TCP... transporting real-time signal and control
These two really don't go well together. You might want to try UDP. There's also RTP (Real-Time Protocol) on top of UDP if you need timestamps and sequence numbers.
A normal speed when uploading files with TFTP_demo example is up to 100 KBytes/second. This depends on the cpu clock speed. A speed of 100 kB/s has been measured with 96MHz cpu clock on ARM7 core. You should have in mind that there has been executed several memcpy() to store incomming data into a file on RAM file system.
A Debug version reduces the speed of TCPnet because of 2 reasons: - it uses printf - it uses a polling method for a debug serial transmit
To reach a full speed you should disable a debug and use as less of memcpy() as possible. If you still need a debug version, then you should modify the sendchar() function to use transmit interrupts.