Максимальный номер возможна передача байтов по протоколу TCP/IP с использованием начального набора PIC32

Я использую PIC32 стартовый комплект для связи Ethernet с моим хостом з / ж.

Host S / W - Сервер, PIC32 - Клиент

Я хочу знать, сколько максимальных байтов я могу отправить за один вызов SEND API.

На данный момент я попытался отправить 130 байтов, но хост может получить только 125 байтов. Если я пытаюсь отправить более 125 байтов до того, как Хост отправит какие-либо данные, API отправки возвращает сообщение об ошибке FIFO full.

но, если хост отправляет какие-либо данные, я могу отправить еще раз 125 байтов.

мое приложение требует только передачи от PIC32, чтобы данные были в килобайтах.

Вот код -

while(ubyIterationCounter < 20)
    {
        while(uwDataIndex <= 500)
        {

            wTransmittedBytes = send(vstLEUCommTCPIPVar.LEUCommClientSock, (char *)(rgubyDummyData + uwDataIndex), uwTxLen, 0);

            if (wTransmittedBytes == ZERO)
            {
                //No data sent
            }   
            else if (wTransmittedBytes < ZERO)
            {
                DelayMs(50);
                vstLEUCommTCPIPVar.ubyCurrentTCPIPState = CLOSE_SOCKET;

                ubyErrorFlag = SET;
                break;

            }   
            else
            {
                uwDataIndex += (wTransmittedBytes - 1);
                uwTxLen -= wTransmittedBytes;
                //DelayMs(1000);
            }
        }
        if (ubyErrorFlag != SET)
        {
            ubyIterationCounter++;
            uwTxLen = 500;
            uwDataIndex =0;
            wTransmittedBytes = 0;
            DelayMs(10);
        }
        else
        {
            test++;
            break;
        }
    }

Как мы можем увеличить нет. байтов передачи и есть ли ограничение для PIC32 стартовый комплект?

0 ответов

Другие вопросы по тегам