我尝试使用内存浏览器读取28069M 内存、将其保存到.out 文件、然后在稍后将该文件加载到 MCU。 执行该操作的正确方法是什么。
我是否需要保存 MCU 中的所有非重新供电存储器块、或者是否有任何特定的存储器块要保存。
我想知道当我们使用 CCS 中的.out 文件刷写 MCU 时、28069M MCU 的哪些部分将被写入。
请使用提供的图片对其进行说明。
谢谢你
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.
我尝试使用内存浏览器读取28069M 内存、将其保存到.out 文件、然后在稍后将该文件加载到 MCU。 执行该操作的正确方法是什么。
我是否需要保存 MCU 中的所有非重新供电存储器块、或者是否有任何特定的存储器块要保存。
我想知道当我们使用 CCS 中的.out 文件刷写 MCU 时、28069M MCU 的哪些部分将被写入。
请使用提供的图片对其进行说明。
谢谢你
Damith、
对于捕获、您需要保存所有 SRAM 内容。 为此、请转至"Tools"-> Save Memory in CCS。 将打开一个对话框、提示输入文件名(您可以将格式保留为默认 TI)。
下一个对话框将提示起始地址和长度。 由于您只是计划重新加载、我认为格式并不重要、尽管我更喜欢16位十六进制、因为它是 C28x 的最小指令大小。
您需要执行上述操作两次、因为设备上有两个不连续的存储器区域。
首先:起始地址= 0、长度= 0x800这将得到 M0/M1
第二:起始地址= 0x8000长度= 0xC000、这将获得所有 L0-L8 RAM。
当您想要将 RAM 加载回时、您将看到"Tools-Load memory"选项。
从 CCS 中刷写.out 文件时加载的内容来看、这取决于您的链接器.cmd 文件。 通常、为了模仿 MCU 在现实世界中的工作方式、链接器文件中的任何 SRAM 段都将标记为"无加载"、但在您的 cmd 文件中可能不会这样做。 您可以将 CMD 压缩并将其连接到您的帖子、如果您愿意、我可以查看一下。
最棒的
Matthew
Matthew
感谢您提供相关信息。 我的要求是复制一个 MCU 并将其粘贴到另一个 MCU。 我无法理解为什么需要复制 RAM。
只需获取闪存存储器的映像、然后将其加载到另一个映像即可。 ?
据我目前所知、只有闪存存储器将从 CCS 写入。 其他存储器块完好无损。 它们在运行时从 CPU 进行修改。 对吧?
谢谢你
Damith
Damith、
正确、RAM 存储器在运行时被修改。 链接器命令文件使用 .ebss SECTIONS 指令分配存储器块。 如果您想在另 一个(F28069)器件上运行程序、只需保存.out 文件即可。 然后、稍后将.out 文件加载到另一个器件。
但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。
- Ken
Damith、
此外、如果您有兴趣、可以在以下位置找到 F28069技术讲座:
https://training.ti.com/c2000-f2806x-microcontroller-workshop?context=1137791-1137782
但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。
- Ken