主题中讨论的其他器件:TMDS570LS31HDK、 UNIFLASH
尊敬的 TI 支持部门:
我目前正在使用 TMDS570LS31HDK 板中的以太网引导加载程序。
我已经从以下链接下载了示例编码。
tidc817.zip
我已经将以太网引导加载程序代码转储到了微控制器中。 他们已经在这些文件中提供了闪烁的应用程序。我已经通过以太网传输了那个图像文件。 文件已传输并正确执行。 然后、我创建了用于板载 LED 闪烁的应用程序映像 bin 文件。 我发现了几个问题。 (注意:应用程序起始地址0X0002 0000。在下面我已经提到了应用程序文件的链接器文件存储器位置)
外部闪存
{
VECTORS (X):origin=0x00020000 length=0x00000020
FLASH0 (RX):origin=0x00020020 length=0x0015FFE0
FLASH1 (RX):origin=0x00180000 length=0x00180000
堆栈(RW):origin=0x08000000 length=0x00001500
RAM (RW):origin=0x08001500 length=0x0003EB00
/*用户代码开始(2)*/
/*用户代码结束*/
}
图像通过以太网传输、并且应用程序未执行(led 不闪烁)。在这里、我已将擦除选项用作整个闪存。我已在 UNIFLASH 中看到微控制器的存储器位置并将其与 bin 文件进行比较。我发现该位置显示的数据是相同的。
然后、我将 擦除选项仅更改为必要扇区。 同样、映像文件是通过以太网传输而不执行的。 但在 uniflash 的存储器中找到了数据。
然后、我已经通过 JTAG 加载了应用程序代码。在这里、我已经将擦除选项设置为仅必要扇区。现在、LED 在闪烁。
4.然后,我通过以太网传输图像箱。它被传输,应用程序正在执行(LED 闪烁).(擦除选项:必要的闪存)
再次创建了作为整个闪存的 bin.here 擦除选项。 传输且不执行。
6.有时、当我按下 HDK 板上的复位按钮时。 应用程序代码已完全擦除。
这里,我的问题是,图像容器是使用擦除选项仅必要扇区创建的,并且 整个闪存是相同的数据查看在 HexEdit。
整个闪存和必要扇区的过程或实际发生了什么? 为什么图像仅在必要扇区中执行、而不在整个 Falsh 中执行?
为什么没有以前的应用程序代码时映像不执行? 当它已经是应用程序代码时、映像升级和执行?
为什么应用程序代码出现在存储器位置但未执行?
为什么有时在按下复位按钮应用时出现。 是否已完全擦除代码?
请支持我、
提前感谢。
此致、
阿吉思·库马尔·A·阿尔