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.

[参考译文] F28M35H52C:如何从 RAM 运行 FPUmathTables?

Guru**** 2390755 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/676764/f28m35h52c-how-can-i-run-fpumathtables-from-ram

器件型号:F28M35H52C

我只是想知道如何做  在他的第一个回答的最后一段中的建议:  

我尝试过这种方法、但我不确定它是否起作用:

FPUmathTables:load > FPUTABLES,page = 0,type = NOLOAD,
运行>> RAMS、
表(BINIT)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我想在这里讲两件事。

    1. ROM 中存在 FPUmath 表。
    2. FastRTS 库中存在 FPUmath 表。

    现在、如果您只想 使用闪存从 RAM 中运行(在本例中为访问) FPUTables、您可以使用以下内容、如 Brandon 所述。 这会进入您的链接器命令文件。

    FPUmathTables:load = FLASHB,
    运行= RAMLS5、
    run_start (_FPUmathTablesRunStart)、
    Load_start (FPUmathTablesLoadStart)、
    load_size (_FPUmathTablesLoadSize)、
    PAGE = 1. 

    这只需将所有表加载到闪存中、然后复制到 RAM 中。 现在、您可以从 C 代码中将任何表用作外部表、您可以对其进行访问。 此方法假定您使用闪存运行 程序。

    现在、如果您在 RAM 中运行程序、那么它很简单:

    FPUmathTables :>RAMGS3,page = 1. 

    RAMGS3是全局 RAM 部分。 您需要查看 RAM 部分在器件中的位置、然后适当地定义 RAMGS3。

    如果您需要进一步的帮助、请告诉我。

    Ritvik

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Ritvik。
    我认为我理解您的答案、但据我所知、您的建议存在一些问题。
    第一个选项没有利用 FPUmathTables 已经在 ROM 中这一事实、因此我想没有必要将它们加载到闪存中(我可能错了、但我想有一种方法可以避免浪费该内存、 尽管不是很多)。
    如果我给芯片加电、希望其在独立模式下工作、而没有将其连接到没有调试器的 PC 和、则第二个选项将不允许我使用需要 FPUmathTables 部分的函数。
    我想补充一点,我不是专家,所以我的发言可能会出错。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我知道、利用闪存空间不是一个好主意。 我假设您使用调试器在闪存或 RAM 上运行代码。

    我并不完全了解独立模式的工作情况。 但我想您对独立模式的担忧是、它在初始化空间时忽略全局变量(我认为是这样!!)。

    您可以按照我建议的第二种方法操作、但请尝试将您的表放入一些未使用的其他 RAM 部分(全局部分除外)中、然后运行您的程序。

    我不确定这是否可行、因为我需要自行测试。 只有这样,我才能给你一个具体的解决办法。

    此外、如果您可以在独立模式下向我发送一个小型示例代码(或伪代码)、这将非常好。 或许我可以帮您更好。

    此致

    Ritvik

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

    三周内我没有收到您的消息,因此我假设您能够解决您的问题。 如果情况并非如此,请拒绝此解决方案并回复此主题。 如果此主题被锁定、请制作一个描述问题当前状态的新主题。

    Ritvik
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好。 很抱歉耽误你的时间。
    我可以使用我在问题中描述的内容来解决这个问题:
    FPUmathTables:load > FPUTABLES,page = 0,type = NOLOAD,
    运行>> RAMS、
    表(BINIT)