Part Number:TMS570LS3137Other Parts Discussed in Thread: UNIFLASH
rui liang:
我这里有一个关于BootLoader(Hercules_Ethernet_BootLoader)的示例程序。我想将其应用于TMS570LS3137芯片,并通过以太网升级我的应用程序。按照这个例子,我上传了一个程序,通过TFTP上传程序后,点亮LED,到此为止一切都很顺利。但当我想在我的应用程序中使用lwip时,我遇到了困难。上载后无法执行包含lwip相关代码的应用。然后我尝试了simple printf、malloc等,发现包含动态分配内存或调用中断的应用程序没有正确执行(使用uniflash直接在芯片上烧录时,这些程序可以正确运行)。
,
Cherry Zhou:
Hi we've got the issue and escalated to E2E for some help, please expect the response.
Thanks.
,
Cherry Zhou:
Hi, our expert is out of office until 4/7. Please expect a delayed response.Also, please see this FAQ: software-dl.ti.com/…/index.html.
Sorry for any inconvenience.
,
Cherry Zhou:
Hi,
From your message, the ethernet bootloader works well and the application image is loaded to flash. The issue is that the application image doesn't work, right?
This is the memory map in your linker cmd file:
MEMORY{VECTORS (X) : origin=0x00000000 length=0x00000020FLASH0 (RX) : origin=0x00000020 length=0x0017FFE0FLASH1 (RX) : origin=0x001A0000 length=0x00180000STACKS (RW) : origin=0x08000000 length=0x00001500RAM (RW) : origin=0x08001500 length=0x0003EB00
/* USER CODE BEGIN (2) *//* USER CODE END */}
you should use application start address here.
For example:
MEMORY{/* USER CODE BEGIN (2) */VECTORS (X) : origin=0x00200020 length=0x00000020FLASH_CODE (RX) : origin=0x00200040 length=0x8000 – 0x40 fill=0xFFFFFFFF /*sector 4/5*/FLASH0 (RX) : origin=0x00028000 length=0x00200000 – 0x28000
Where 0x200020 is start address of the application image.