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.

[参考译文] TMS320F28386S:CM 闪存内核的入口点

Guru**** 2524550 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1189205/tms320f28386s-entry-point-for-cm-flash-kernel

器件型号:TMS320F28386S

串行闪存文件 C:\projects\serial_flash_programmer\serial_flash_programmer\serial_flash_programr.cpp 在 run_CPU1_load_CM 部分中具有以下行:

				_tprintf(_T("\nPlease input a hexadecimal address to branch to:  "));
				cin >> hex >> branchAddress;
				packetLength = constructPacket(packet, (uint16_t)RUN_CPU1_LOAD_CM, 4, (uint8_t*)&branchAddress);

链接文件有的

MEMORY
{
...
   RAMGS1           : origin = 0x00E000, length = 0x001000
...
SECTIONS
{
   codestart        : > BEGIN
   .text            : >>RAMGS1 | RAMGS2 | RAMGS3 | RAMGS4
   .cinit           : > RAMM0
   .switch          : > RAMM0
   .reset           : > RESET,    TYPE = DSECT /* not used, */
   ...

那么、0xE000是要寻址的分支吗?

谢谢、

John

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 John:

    分支地址由加载应用程序的用户指定。 如果应用程序已发送到0x00E000处的 RAM、则必须分支到该地址。 如果应用程序加载到闪存中的某个地址、则必须分支到该地址。  

    谢谢、

    查尔斯

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回答。 我意识到我的问题很难解决。 我应该问的是0xE000、当 serial_flash_programr_appln.exe 请求地址时、它会给出正确的响应。 我现在相信是这样的。