FreeRTOS Support Archive
The FreeRTOS support forum is used to obtain active support directly from Real
Time Engineers Ltd. In return for using our top quality software and services for
free, we request you play fair and do your bit to help others too! Sign up
to receive notifications of new support topics then help where you can.
This is a read only archive of threads posted to the FreeRTOS support forum.
The archive is updated every week, so will not always contain the very latest posts.
Use these archive pages to search previous posts. Use the Live FreeRTOS Forum
link to reply to a post, or start a new support thread.
[FreeRTOS Home] [Live FreeRTOS Forum] [FAQ] [Archive Top] [July 2015 Threads] Socket Creation ProblemPosted by ramanuday on July 2, 2015 I tried to create a new socket using
FreeRTOSsocket(FREERTOSAFINET, FREERTOSSOCKDGRAM, FREERTOSIPPROTO_UDP );
but it is entering the vAssertCalled() function and continuously looping over there.
When i tried to debug it is being called from the function
FreeRTOSSocket()
{
...
...
configASSERT( listLISTIS_INITIALISED( &xBoundSocketsList ) );
...
}
Can anyone help me with this socket creation..?
Socket Creation ProblemPosted by rtel on July 2, 2015 Have you called FreeRTOSIPInit()? http://www.freertos.org/FreeRTOS-Plus/FreeRTOSPlusTCP/TCPNetworkingTutorialInitialising_TCP.html
Socket Creation ProblemPosted by heinbali01 on July 2, 2015 Hi,
On the page referred to by Richard you will also see this important user-provided function:
~~~~~
void vApplicationIPNetworkEventHook( eIPCallbackEventt eNetworkEvent )
{
static BaseTypet xTasksAlreadyCreated = pdFALSE;
/* Both eNetworkUp and eNetworkDown events can be processed here. */
if( eNetworkEvent == eNetworkUp )
{
/* Create the tasks that use the TCP/IP stack if they have not already
been created. */
if( xTasksAlreadyCreated == pdFALSE )
{
/*
* For convenience, tasks that use FreeRTOS+TCP can be created here
* to ensure they are not created before the network is usable.
*/
xTasksAlreadyCreated = pdTRUE;
}
}
}
~~~~~
Only after xTasksAlreadyCreated has become true, you can start create and use sockets.
Of course, you can also make this a global variable and call it something like:
BaseType_t xIPNetworkIsReady = pdFALSE;
Regards.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|