|Subject:||[lwip-users] Need some help for RAW API|
|Date:||Wed, 9 Jun 2004 14:21:31 +0200|
I’m on a project that uses LWIP with uCOS/II on an ALTERA NIOS processor (32 bit, 33MHz, 1MB of RAM).
The Aim of the project is to build a data acquisition system that collects data from several ADC channels and sends that data via a TCP connection to a remote host.
The collected data should be sent in packets of around 4000 Bytes every 50 ms.
My first experiences with the LWIP have shown that the performance of the sequential API is not sufficient. Therefore I want to use the RAW API to have a better networking performance.
I made first tests with the RAW API to simulate somehow a streaming data transfer, where my remote application sends a “GET” command and my NIOS- application creates data packets within the “tcp_recv()” callback function and sends them to the remote. This works fine and stable.
But when I try to send data that is generated outside the LWIP TCP TASK in a more automatically way (without polling from the remote side), my NIOS- Application crashes after a short while.
In the documentation to LWIP (“Design and Implementation of the LWIP TCP/IP Stack”) is basically written, that an application that directly interfaces the TCP/IP stack has at least partially to reside in the same process like the TCP/IP stack and has to be split if somehow a parallelization is needed.
Because I have not much experience with RTOSs, I don’t have really an idea how to setup a communication between application parts that interface with the stack and application parts that do the readout of my ADCs for instance.
So I want to ask for some help at this point. Can somebody give my some hints how to deal with data that is generated outside the TCP/IP task and has to be transferred via the RAW API?
Or does somebody have some further example programs?
Thanks in advance, M. Schulz
|[Prev in Thread]||Current Thread||[Next in Thread]|