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.

[参考译文] TM4C1294NCPDT:能够直接从应用程序写入闪存和从闪存读取用户程序、提供 GCC 编译器

Guru**** 2484745 points
Other Parts Discussed in Thread: TM4C1294NCPDT

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/733053/tm4c1294ncpdt-ability-to-write-to-flash-from-application-and-reading-user-program-from-flash-directly-gcc-compiler-availability

器件型号:TM4C1294NCPDT

尊敬的先生,

     情况紧急、请尽快回复。

      我计划使用阶梯编程开发 PLC。 我想使用 TM4C1294NCPDT 控制器。

以下是所需的功能。

能够从应用程序写入闪存。 这是为了将用户阶梯程序存储在闪存中。

2.使用指针直接从闪存读取用户程序的能力。

3.处理器的 GCC 编译器可用性。 我们使用 GCC 的特定功能来加快执行速度。

那么、我可以使用上述控制器实现上述功能吗?

此致、

Digvijay

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

    您好!

     这是可能的、但我们没有这样的示例。 请参阅 TivaWare 外设驱动程序库中的闪存部分。 您可以使用 FlashProgram() API 对闪存进行编程。 闪存存储器被组织为一组可被单独擦除的块。 您需要确保首先将用于对阶梯程序进行编程的应用程序代码复制到 SRAM 并从 SRAM 执行应用程序。 原因是、如果应用从闪存运行、那么在阶梯程序编程期间、任何到闪存组的访问被禁止。  请参阅以下数据表。

    当在闪存组中执行闪存存储器操作写入、页擦除或整体擦除时、
    禁止访问该特定组对。 因此、指令和字面量会提取到组中
    在 Flash 存储器操作完成前、Pair 被保持在关闭状态。 如果指令执行是必需的
    在闪存存储器操作期间、正在执行的代码必须被放置在 SRAM 中并被执行
    在闪存操作进行期间从那里获取数据。

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

    你(们)好

      我找到的有关闪存写入的信息。 我还知道支持 GCC 编译器。 但我的第二点仍然不清楚。  是否可以直接从闪存读取用户程序?

    此致、

    Digvijay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    对用户程序进行编程后、它只是存储在闪存中的数据。 您可以直接读取它。 它与您的现有应用程序没有什么不同、在该应用程序中、它可能包含用于读取某些也存储在闪存中的字面量池数据的代码。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

           感谢您的回复。 这解决了我的问题

    此致、

    Digvijay