This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/RM57L843: RM57L + FreeRTOSUDP can't support send data length>18

Part Number: RM57L843

Tool/software: Code Composer Studio


I have TMDXRM57LHDK. After compile UDP demo under FreeRTOS UDP/IP protocol and try, I found it can't send the frame data below 18 bytes. If the byte count reach 18 Bytes or more, no problem.  After Trace by debug, I guess the problem happens on the EMAC drive(HL_emac.c). Please help.

Again, I guess the problem shall happen in function xNetworkInterfaceOutput(). If I change the tot_len and len into 60, then the data frame can be sent out.

struct pbuf_struct* pbuf = 0;

/* Get a buffer and initialize it */
xGetPbuf(&pbuf);
pbuf->next = 0; /* No linked buffer chain */
pbuf->payload = pxNetworkBuffer->pucEthernetBuffer;
pbuf->tot_len = (uint16)(pxNetworkBuffer->xDataLength & 0xFFFF);
pbuf->len = pbuf->tot_len; /* no linked buffer chain */