FreeRTOS+TCP is still in the lab
FreeRTOS+TCP is already used in
commercial products and we encourage
you to try it yourself.
Be aware however that we are
still refining its design, and the
source code and documentation do not
yet meet Real Time Engineers Ltd's strict quality standards.
Please use the forum for support,
feedback and ideas,
or contact us directly if you have a specific business interest.
uint8_t *pucGetNetworkBuffer( size_t *pxRequestedSizeBytes );
Data that is sent out to the network or received from the network is
stored in a
network buffer. A network buffer is basically just a block
of RAM (actually an array of uint8_t in the source code).
The embedded TCP/IP stack needs to first locate the network buffers, and
once located know how big the network buffers are. Network buffer
descriptors are used for that purpose.
Whereas pxGetNetworkBufferWithDescriptor() obtains a network
buffer descriptor that can (optionally) reference an Ethernet buffer,
pucGetNetworkBuffer() just obtains the Ethernet buffer itself and would
normally only be used allocate buffers to DMA descriptors in zero copy
pucGetNetworkBuffer() must not be called from an interrupt service
The size of the Ethernet buffer to obtain. The size
is specified in bytes.
Successful calls return a pointer to the obtained Ethernet buffer.
Unsuccessful calls return NULL.
Examples are provided on the
Porting FreeRTOS to a Different Microcontroller