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.

[参考译文] CCS/TMS320F28377S:TMS320F28377S 引导

Guru**** 2470720 points
Other Parts Discussed in Thread: TMS320F28377S, UNIFLASH, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/900531/ccs-tms320f28377s-tms320f28377s-boot

器件型号:TMS320F28377S
主题中讨论的其他器件: UNIFLASHC2000WARE

工具/软件:Code Composer Studio

你好。 我正在学习 TMS320f28377S 的编程、遇到了一个问题-对控制器进行编程并复位电源后、它不会启动。 调试(JTAG)时一切正常。 GPIO84和 GPIO 72端口上电。 录音将闪烁。 我们使用免费样片进行实验。 可能无法从闪存加载?

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

    弗拉基米尔

    只是想检查您是否正在编程闪存配置生成的文件?

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

    链接.out 文件 Yadi.sk/.../q3g15kHhIy8epA

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

    此链接是指向您的项目还是文件附件?

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

    文件附件: reference_28377s_p540_013.out。 (714kB)。  

    ----

    只是想检查您是否正在编程闪存配置生成的文件?

    -是的

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

    如果您只需精心设计项目配置、那么我们就能带来合适的专家。

    这是在 TI 板上还是在您的定制板上? 此外、是针对闪存配置编译了您的应用程序还是 TI 示例之一?

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

    它是我的板和应用。  我应该为您提供什么文件? 文件扩展名?

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

    您能否连接 JTAG 并检查它卡在何处?

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

    Yadi.sk/.../f521d3PWZnvMPA

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

    系统复位后(由 CCS)

    Yadi.SK/.../fNaL0OWeIni9eQ

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

    有什么想法吗?

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

    无法打开链接。

    能否附加链接器命令文件?

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

    弗拉基米尔

    Santosh 让我看一下这篇文章。

    您能在下面澄清一下问题吗?

    1.在链接器 cmd 文件中是否有任何已初始化的段映射到 RAM?  如果是、请将它们映射到闪存、并根据需要在运行时将它们复制到 RAM。  在调试器连接的情况下、当您加载可执行文件时、RAM 内容可能会加载到 RAM 中。  在独立情况下、不会加载它、因此应用程序会失败。

    2.您是否在应用中启用了看门狗? 如果是、是否定期进行服务以避免重置?  在调试器连接的情况下、GEL 文件禁用看门狗。

    3.您是否注意到 XRSn 上的切换指示复位?

    谢谢、此致、
    Vamsi

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

    hello.watchdog disabled.( 我没有访问 XRSn.e2e.ti.com/.../28377S_5F00_FLASH_5F00_lnk.cmd.txt

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

    使用 CCS 进行系统复位

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

    弗拉基米尔

    感谢您提供链接器 cmd 文件。

    1) 1)请检查 XRSn 上是否有切换。

    2) 2)您是否使用 memcpy ()将.TI.ramfunc 内容从闪存复制到 RAM?  自从您说应用程序可以与调试器配合使用以来、您可能已经完成了此操作-但请检查并确认。

    3) 3)您是否更改了 CCS 片上闪存插件 GUI 中的任何默认设置?  请确保已启用 AutoEccGeneration。

    4) 4)我在链接器 cmd 中看不到任何可能导致此问题的明显问题。  但是、请修复以下两个问题:

    a)对闪存映射段使用 align (8)而不是 align (4)-这会在128位边界而非64位边界上对齐段。  当您使用 CCS 闪存插件和 UniFlash 以外的闪存编程工具时、这很重要。

    b)保留闪存组的最后16个16位字、以避免 ECC 错误和/或 ITRAP、因为预取超出已实现的闪存。

    谢谢、此致、
    Vamsi

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

    1.已选中。 没关系

    2.已检查,一切正常

    3.不变

    4、 有。 没有任何变化

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

    我禁用了向 RAMFUNC 存储器写入速度关键型程序代码的操作。 之后、由于某种原因、程序不适合闪存、尽管其大小小于 FLASHE|FLASHF|FLASHG|FLASHH|的大小、为什么会发生这种情况?

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

    弗拉基米尔

    关于编译错误:尝试将中的这4个闪存扇区合并到链接器 cmd 文件(如下所示)的 MEMORY 部分中的单个存储器中、并为此分配.text 段。  看看这是否有用。

    FLASHEFGH: :origin = 0x088000、length = 0x20000 //片上闪存*/

    谈到原始调试: 在您的电路板上、您能否尝试使用具有闪存构建配置的 C2000Ware 示例之一、看看它是否可以在下电上电时独立正常工作?  示例应该起作用。  否则、您可能需要专注于您的电路板。

    谢谢、此致、

    Vamsi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我想明白了、但为什么会使用该代码: 
    .text :>> FLASHB | FLASHC | FLASHD | FLASHE PAGE = 0、ALIGN (8)

    不起作用?

    我怀疑我有默认引导加载程序。  处理器作为免费样片接收。 可能已经有东西、我无法按我的需要使用它?  此电路板没有任何问题-它是从 launchpad 复制的。GPIO 的组合对应于所需的板。 是否可以使用标准工具强制处理器从闪存引导、以便不扫描端口?

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

    弗拉基米尔

    我认为链接器会尝试将给定源文件或库中的所有函数放入链接器 cmd 文件中定义的一个内存块中。  因此、我建议将中的扇区组合到链接器 cmd 文件中的一个内存块条目中。

    您采取了哪些措施来修复该错误?  您是否在构建设置中使用了"将每个函数放在单独的子段中"选项来避免此错误?

    关于调试:  

    我认为这与样片没有关系。 是否可以附加设备的图片?

    您是否尝试在闪存构建配置中运行 C2000Ware 示例? 它对您来说是否正常工作?

    此器件上的闪存引导仅通过 GPIO72/84实现。   

    谢谢、此致、
    Vamsi

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

    我在连接到 ROM 的 cmd 文件- IQ 表中发现错误。 当我将它们更改为闪存时、一切都变得正常。 如何使用 gpio72、gpio84?

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

    弗拉基米尔

    好的。

    请参阅 表3-3。 有关  引导模式引脚配置的详细信息、请参阅 www.ti.com/.../spruhx5e.pdf TRM 中的器件默认引导模式。

    谢谢、此致、
    Vamsi