Compare commits
2 Commits
335d3e9be5
...
4fb1bf9f11
| Author | SHA1 | Date |
|---|---|---|
|
|
4fb1bf9f11 | |
|
|
de97de9223 |
|
|
@ -161,7 +161,6 @@ socklen_t xSize = sizeof( xClient );
|
|||
static const TickType_t xReceiveTimeOut = portMAX_DELAY;
|
||||
const BaseType_t xBacklog = 1;
|
||||
|
||||
|
||||
#if( ipconfigUSE_TCP_WIN == 1 )
|
||||
WinProperties_t xWinProps;
|
||||
|
||||
|
|
@ -174,6 +173,8 @@ const BaseType_t xBacklog = 1;
|
|||
|
||||
/* Just to prevent compiler warnings. */
|
||||
( void ) pvParameters;
|
||||
|
||||
#ifdef DEBUG_LISTEN_SOCK
|
||||
|
||||
/* Attempt to open the socket. */
|
||||
xListeningSocket = FreeRTOS_socket( FREERTOS_AF_INET, FREERTOS_SOCK_STREAM, FREERTOS_IPPROTO_TCP );
|
||||
|
|
@ -221,6 +222,57 @@ const BaseType_t xBacklog = 1;
|
|||
/* Spawn a task to handle the connection. */
|
||||
xTaskCreate( prvServerConnectionInstance, "EchoServer", usUsedStackSize, ( void * ) xConnectedSocket, tskIDLE_PRIORITY + 1, &prvServerConnectionInstance_Handle );
|
||||
}
|
||||
|
||||
#else /*DEBUG_LISTEN_SOCK*/
|
||||
|
||||
for( ;; )
|
||||
{
|
||||
/* Delete previous suspended EchoServer task if it was created. */
|
||||
if (prvServerConnectionInstance_Handle && eSuspended == eTaskGetState( prvServerConnectionInstance_Handle) )
|
||||
{
|
||||
vTaskDelete( prvServerConnectionInstance_Handle );
|
||||
}
|
||||
/* Attempt to open the socket. */
|
||||
xListeningSocket = FreeRTOS_socket( FREERTOS_AF_INET, FREERTOS_SOCK_STREAM, FREERTOS_IPPROTO_TCP );
|
||||
configASSERT( xListeningSocket != FREERTOS_INVALID_SOCKET );
|
||||
|
||||
/* Set a time out so accept() will just wait for a connection. */
|
||||
FreeRTOS_setsockopt( xListeningSocket, 0, FREERTOS_SO_RCVTIMEO, &xReceiveTimeOut, sizeof( xReceiveTimeOut ) );
|
||||
|
||||
/* Set the window and buffer sizes. */
|
||||
#if( ipconfigUSE_TCP_WIN == 1 )
|
||||
{
|
||||
FreeRTOS_setsockopt( xListeningSocket, 0, FREERTOS_SO_WIN_PROPERTIES|FREERTOS_SO_REUSE_LISTEN_SOCKET, ( void * ) &xWinProps, sizeof( xWinProps ) );
|
||||
}
|
||||
#endif /* ipconfigUSE_TCP_WIN */
|
||||
|
||||
/* Bind the socket to the port that the client task will send to, then
|
||||
listen for incoming connections. */
|
||||
xBindAddress.sin_port = tcpechoPORT_NUMBER;
|
||||
xBindAddress.sin_port = FreeRTOS_htons( xBindAddress.sin_port );
|
||||
#if (ipconfigUSE_DHCP == 0)
|
||||
xBindAddress.sin_addr = FreeRTOS_htonl(xNetworkAddressing.ulDefaultIPAddress);
|
||||
#endif
|
||||
FreeRTOS_bind( xListeningSocket, &xBindAddress, sizeof( xBindAddress ) );
|
||||
FreeRTOS_listen( xListeningSocket, xBacklog );
|
||||
|
||||
|
||||
/* Wait for a client to connect. */
|
||||
xConnectedSocket = FreeRTOS_accept( xListeningSocket, &xClient, &xSize );
|
||||
configASSERT( xConnectedSocket != FREERTOS_INVALID_SOCKET );
|
||||
//FreeRTOS_debug_printf(("Heap size TCP 0 = %d\n", xPortGetFreeHeapSize()));
|
||||
|
||||
#ifdef DEBUG
|
||||
size_t FreeHeapSize = xPortGetFreeHeapSize();
|
||||
if(FreeHeapSize < 25032)//45520)
|
||||
{
|
||||
FreeRTOS_printf(("[LISTEN_TASK] FreeHeapSize = %d\n", FreeHeapSize));
|
||||
}
|
||||
#endif
|
||||
/* Spawn a task to handle the connection. */
|
||||
xTaskCreate( prvServerConnectionInstance, "EchoServer", usUsedStackSize, ( void * ) xConnectedSocket, tskIDLE_PRIORITY + 1, &prvServerConnectionInstance_Handle );
|
||||
}
|
||||
#endif /*DEBUG_LISTEN_SOCK*/
|
||||
}
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
|
|
|
|||
|
|
@ -84,7 +84,7 @@
|
|||
* pxPacketBuffer_to_NetworkBuffer() will translate a buffer address to a
|
||||
* network packet, so it can be passed to the IP-task. */
|
||||
|
||||
#define ipconfigZERO_COPY_RX_DRIVER ( 1 )
|
||||
#define ipconfigZERO_COPY_RX_DRIVER ( 0 )
|
||||
|
||||
//#define ipconfigUSE_LLMNR 1
|
||||
//#define ipconfigUSE_NBNS 1
|
||||
|
|
|
|||
|
|
@ -649,7 +649,7 @@ BaseType_t xNetworkInterfaceInitialise( void )
|
|||
#ifdef CENTRALISED_DEFERRED_IRQ_HADLING
|
||||
if (NULL == receiveHandler)
|
||||
{
|
||||
xTaskCreate( receiveHandlerTask, "receiveHandlerTask", 1000, NULL, tskIDLE_PRIORITY + 1, &receiveHandler );
|
||||
xTaskCreate( receiveHandlerTask, "receiveHandlerTask", 1000, NULL, tskIDLE_PRIORITY + 2, &receiveHandler );
|
||||
}
|
||||
if ( receiveHandler != NULL)
|
||||
xResult = pdPASS;
|
||||
|
|
|
|||
|
|
@ -64,7 +64,11 @@ extern uint32_t SystemCoreClock;
|
|||
#define configUSE_16_BIT_TICKS 0
|
||||
|
||||
/* Software timer definitions. */
|
||||
#ifdef CENTRALISED_DEFERRED_IRQ_HADLING
|
||||
#define configUSE_TIMERS 0
|
||||
#else
|
||||
#define configUSE_TIMERS 1
|
||||
#endif
|
||||
#define configTIMER_TASK_PRIORITY 2
|
||||
#define configTIMER_QUEUE_LENGTH 5
|
||||
#define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE * 2)
|
||||
|
|
@ -146,7 +150,11 @@ extern uint32_t SystemCoreClock;
|
|||
#define INCLUDE_uxTaskGetStackHighWaterMark2 1
|
||||
#define INCLUDE_eTaskGetState 1
|
||||
#define INCLUDE_xTaskResumeFromISR 1
|
||||
#ifdef CENTRALISED_DEFERRED_IRQ_HADLING
|
||||
#define INCLUDE_xTimerPendFunctionCall 0
|
||||
#else
|
||||
#define INCLUDE_xTimerPendFunctionCall 1
|
||||
#endif
|
||||
#define INCLUDE_xTaskGetSchedulerState 1
|
||||
#define INCLUDE_xTaskGetCurrentTaskHandle 1
|
||||
|
||||
|
|
|
|||
|
|
@ -24,8 +24,6 @@
|
|||
#define RTE_RTOS_FreeRTOS_EVENTGROUPS /* RTOS FreeRTOS Event Groups */
|
||||
/* ARM.FreeRTOS::RTOS:Heap:Heap_4:10.5.1 */
|
||||
#define RTE_RTOS_FreeRTOS_HEAP_4 /* RTOS FreeRTOS Heap 4 */
|
||||
/* ARM.FreeRTOS::RTOS:Timers:10.5.1 */
|
||||
#define RTE_RTOS_FreeRTOS_TIMERS /* RTOS FreeRTOS Timers */
|
||||
/* GigaDevice::Device:GD32F10x_StdPeripherals:BKP:2.0.2 */
|
||||
#define RTE_DEVICE_STDPERIPHERALS_BKP
|
||||
/* GigaDevice::Device:GD32F10x_StdPeripherals:DMA:2.0.2 */
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -158,29 +158,119 @@
|
|||
<Ww>
|
||||
<count>0</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>pxDMARxDescriptor</ItemText>
|
||||
<ItemText>tickCounter</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>1</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>dma_current_rxdesc</ItemText>
|
||||
<ItemText>xBoundTCPSocketsList</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>2</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>pxDescriptor</ItemText>
|
||||
<ItemText>mac</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>3</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>pucTemp</ItemText>
|
||||
<ItemText>PHY</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>4</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>frame</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>5</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>dma_current_txdesc</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>6</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>xDHCPSocket</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>7</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>pucRxBuffer</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>8</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>EP_DHCPData</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>9</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>EP_IPv4_SETTINGS</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>10</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>xDHCPData</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>11</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>xNetworkAddressing</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>12</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>eLeasedAddress</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>13</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>pxSocket</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>14</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>prvServerConnectionInstance_Handle</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>15</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>pvBuffer</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>16</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>pxCurrentTCB</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>17</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>receiveBufferDescriptor</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>18</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>xNetworkEventQueue</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>19</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>FreeHeapSize</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>20</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>pucRxBuffer</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>21</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>lBytes,0x0A</ItemText>
|
||||
</Ww>
|
||||
</WatchWindow1>
|
||||
<MemoryWindow1>
|
||||
<Mm>
|
||||
<WinNumber>1</WinNumber>
|
||||
<SubType>0</SubType>
|
||||
<ItemText>\\Test_project_for_GD32107C_EVAL\FreeRTOS/source/portable/NetworkInterface/board_family/NetworkInterface.c\receiveHandlerTask\pxDescriptor->pucEthernetBuffer</ItemText>
|
||||
<ItemText>pucRxBuffer</ItemText>
|
||||
<AccSizeX>0</AccSizeX>
|
||||
</Mm>
|
||||
</MemoryWindow1>
|
||||
|
|
@ -201,7 +291,7 @@
|
|||
</Mm>
|
||||
</MemoryWindow3>
|
||||
<ScvdPack>
|
||||
<Filename>E:\Arm\Packs\ARM\CMSIS-FreeRTOS\10.5.1\CMSIS\RTOS2\FreeRTOS\FreeRTOS.scvd</Filename>
|
||||
<Filename>C:\Users\User\AppData\Local\Arm\Packs\ARM\CMSIS-FreeRTOS\10.5.1\CMSIS\RTOS2\FreeRTOS\FreeRTOS.scvd</Filename>
|
||||
<Type>ARM.CMSIS-FreeRTOS.10.5.1</Type>
|
||||
<SubType>1</SubType>
|
||||
</ScvdPack>
|
||||
|
|
@ -213,7 +303,7 @@
|
|||
<periodic>1</periodic>
|
||||
<aLwin>1</aLwin>
|
||||
<aCover>0</aCover>
|
||||
<aSer1>0</aSer1>
|
||||
<aSer1>1</aSer1>
|
||||
<aSer2>0</aSer2>
|
||||
<aPa>0</aPa>
|
||||
<viewmode>1</viewmode>
|
||||
|
|
|
|||
|
|
@ -338,8 +338,8 @@
|
|||
<v6WtE>0</v6WtE>
|
||||
<v6Rtti>0</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls>-D DEBUG -Wno-pragma-pack -Wno-macro-redefined -D CENTRALISED_DEFERRED_IRQ_HADLING</MiscControls>
|
||||
<Define></Define>
|
||||
<MiscControls>-D DEBUG -Wno-pragma-pack -Wno-macro-redefined</MiscControls>
|
||||
<Define>DEBUG_LISTEN_SOCK</Define>
|
||||
<Undefine></Undefine>
|
||||
<IncludePath>.\FreeRTOS\source\portable\NetworkInterface\include;.\FreeRTOS\source\include;.\FreeRTOS\source\portable\Compiler\Keil;.\DemoTasks\include;..\GigaDevice_test;.\include;.\PHY</IncludePath>
|
||||
</VariousControls>
|
||||
|
|
@ -795,12 +795,6 @@
|
|||
<targetInfo name="Target 1"/>
|
||||
</targetInfos>
|
||||
</component>
|
||||
<component Cbundle="FreeRTOS" Cclass="RTOS" Cgroup="Timers" Cvendor="ARM" Cversion="10.5.1" condition="FreeRTOS Timers">
|
||||
<package name="CMSIS-FreeRTOS" schemaVersion="1.7.7" url="https://www.keil.com/pack/" vendor="ARM" version="10.5.1"/>
|
||||
<targetInfos>
|
||||
<targetInfo name="Target 1"/>
|
||||
</targetInfos>
|
||||
</component>
|
||||
<component Capiversion="2.2.0" Cclass="CMSIS Driver" Cgroup="Ethernet MAC" Csub="Custom" Cvendor="ARM" Cversion="1.0.0" custom="1">
|
||||
<package name="CMSIS" schemaVersion="1.7.7" url="http://www.keil.com/pack/" vendor="ARM" version="5.9.0"/>
|
||||
<targetInfos>
|
||||
|
|
|
|||
Loading…
Reference in New Issue