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.

[参考译文] TMS320F28377S:SCI 闪存内核加载到闪存而不是 RAM?

Guru**** 2477065 points
Other Parts Discussed in Thread: TMS320F28379D, LAUNCHXL-F28379D, TMS320F28377S, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1013208/tms320f28377s-sci-flash-kernel-loaded-to-flash-instead-of-ram

器件型号:TMS320F28377S
主题中讨论的其他器件:TMS320F28379DLAUNCHXL-F28379DC2000WARE

我有几个关于 SCI 闪存内核的问题:

1.将"F2837xS_sci_flash_kernel"项目设置设置设置为从 RAM 运行。  是否可以将"F2837xS_sci_flash_kernel"编程到闪存?

2.如果可以将"F2837xS_sci_flash_kernel"编程到闪存中、 我们如何将 项目配置从 RAM 更改为闪存?  请提供详细说明吗?  我们看不到可供选择的闪存配置。

3. 是否可以将应用程序固件集成到与"F2837xS_sci_flash_kernel"相同的项目中 我们有一个示例项目、它基本上执行"F2837xS_sci_flash_kernel"所做的操作、并增加了超时。 如果超时、我们继续执行我们的应用程序代码。 因此、基本而言、每当我们引导加载时、我们都将覆盖先前存储在闪存中的内容。 这是可行的吗?

总结:

int main()

 SCIA_AutoaudLock()//如果未收到任何内容或自动波特率锁定失败,则在5秒后超时

 SCI_GetPacket()  

 DFU_CPU1

 (笑声)

 如果超时、在此处执行应用程序代码

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

    Daniel:

    感谢您在此处联系我们。

    我们收到了来自 FAE 的类似问题-是否适合您?   

    是的、可以将闪存内核映射到闪存、这样您就不必每次都加载它。  是的、如果不需要升级、您可以让它超时。

    请访问 https://www.ti.com/lit/pdf/spruiu9 

    如果您有任何疑问、请告知我们。  如文档中所述、我们提供了一个示例、您可以使用该示例根据需要开发您的。  

    谢谢、此致、

    Vamsi   

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

    用户指南中给出的示例涉及 TMS320F28004x。 是否有适用于 TMS320F28377S 的示例或具体而言适用于 TMS320F28379D LaunchPad (LaunchXL-F28379D)的示例?

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

    或者、您能否提供说明或让我找到一个指南来说明如何更改.cmd 文件/项目配置以与 TMS320F28377S 或  TMS320F28379D LaunchPad (LaunchXL-F28379D)配合使用?

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

    Daniel:

    此常见问题解答概述了如何将基于 RAM 的应用更改为基于闪存的应用: https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/878674/faq-flash---how-to-modify-an-application-from-ram-configuration-to-flash-configuration 

    关于 F2837x 的特定示例:我将此帖子分配给了内核专家以进一步帮助您。

    谢谢、此致、
    Vamsi

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

    Daniel:  

    您可以参阅 F2837xS SCI 闪存内核示例-它位于 C2000Ware_x_xx_xx_xx > device_support > f2837xs > examples > CPU1 > F2837xS_sci_flash_kernel > cpu01  

    要将内核映射到闪存、您可以添加闪存构建配置。 右键点击工程、转到"Build Configurations">"Manage">"New"、然后添加配置-您可以将其命名为 CPU1_FLASH 或任何所需的名称。 您可以复制 RAM 配置的项目设置。 将其设置为活动配置。  

    然后、您可以从 项目中的 C2000Ware 中添加基于闪存的链接器命令文件(C2000Ware_x_xx_xx_xx > device_support > f2837xs > common > cmd)、并将其仅包含在闪存构建配置中。 您可以在闪存配置中排除 RAM 链接器命令文件、并从 RAM 配置中排除闪存链接器命令文件。  

    确保存储器的所有已初始化部分都映射到闪存、并且所有这些部分都与128位边界对齐-通用闪存链接器命令文件应该已经这样做了。 在项目设置中、添加_FLASH 作为预定义符号。  

    如果您正在使用两个闪存组、闪存 API 可从一个组中执行以对另一个组进行编程/擦除。 如果您只使用一个闪存组、则需要将闪存 API 复制到 RAM。 有关如何将闪存 API 复制到 RAM 的示例、请参阅 F2837xS 闪存编程示例的链接器命令文件。

    谢谢、  

    Anu