Other Parts Discussed in Thread: HALCOGEN
Tool/software: Code Composer Studio
Hi all,
We are trying to do practice on some network functions in lwIP with FreeRTOS by using HDK of TMS570LC4357. For this purpose, we initially use a base project (linked by below) supported by Texas Instruments Teams.
Project Link Post : https://e2e.ti.com/support/microcontrollers/hercules/f/312/t/799670 --> ( 7178.TMS570LC4357_FreeRTOS_LWIP.7z )
Enhanced Sight to Link : /cfs-file/__key/communityserver-discussions-components-files/312/4478.TMS570LC4357_5F00_FreeRTOS_5F00_LWIP.7z
Although, FreeRTOS and lwIP debugging and building successfully on our HDK, we are not able to pinging our device. These lines firing our ping proccess:
Here are HL_sys_main.c :
#include "HL_sys_common.h"
#include "FreeRTOS.h"
#include "os_task.h"
#include "HL_het.h"
#include "HL_gio.h"
#include "HL_esm.h"
#ifdef DEBUG
void
__error__(char *pcFilename, uint32_t ui32Line)
{
}
#endif
void vTask1(void *pvParameters);
extern void vApplicationStackOverflowHook(xTaskHandle *pxTask, signed char *pcTaskName );
extern void EMAC_LwIP_Main (uint8_t * emacAddress);
xTaskHandle xTask1Handle;
uint8 emacAddress[6U] = {0x00U, 0x08U, 0xEEU, 0x03U, 0xA6U, 0x6CU};
uint32 emacPhyAddress = 1U;
int main(void)
{
esmREG->SR1[2] = 0xFFFFFFFFU;
esmREG->SSR2 = 0xFFFFFFFF;
esmREG->EKR = 0x0000000A;
esmREG->EKR = 0x00000000;
gioInit();
gioSetDirection(gioPORTB, 0xFFFF);
gioSetDirection(hetPORT1, 0xFFFFFFFF); //HDK uses NHET for LEDs
if (xTaskCreate(vTask1,"Task1", configMINIMAL_STACK_SIZE, NULL, ((configMAX_PRIORITIES-1)|portPRIVILEGE_BIT), &xTask1Handle) != pdTRUE)
{
while(1);
}
vTaskStartScheduler();
while(1);
return 0;
}
void vTask1(void *pvParameters)
{
EMAC_LwIP_Main (emacAddress);
#if 1
for(;;){
/* Taggle GIOB[6] with timer tick */
gioSetBit(gioPORTB, 6, gioGetBit(gioPORTB, 6) ^ 1);
/* Taggle HET[1] with timer tick */
gioSetBit(hetPORT1, 17, gioGetBit(hetPORT1, 17) ^ 1); //LED on HDK, top left
vTaskDelay(300);
}
#endif
}
Here are reference official document that we are use about the issue:
https://www.ti.com/lit/an/spna239/spna239.pdf
Result :
I tried everything step by step such like using IPADDR_USE_STATIC, IPADDR_USE_DHCP and IPADDR_USE_AUTOIP in lwiplib.h. But it can not success lwIP_init and it is not pinging my device. Do you know why is this happening ?
Thank you for interests.

