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.

[参考译文] UCD3138A 头文件+链接器文件

Guru**** 2337820 points
Other Parts Discussed in Thread: UCD3138, UCD3138A64, UCD3138A
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/606552/ucd3138a-headers-linker-files

主题中讨论的其他器件:UCD3138UCD3138A64UCD3138A

您好!

我要将为 UCD3138A64编写的固件移植到 UCD3138A。 为了构建项目、我需要头文件和链接器文件。 在培训实验中、这些文件位于 UCD3138*_Header 文件和 UCD3138*_Linker 文件目录中。 UCD3138A64有一个目录、但 UCD3138A 没有。 我应该将这些文件用于 UCD3138、还是有专门用于 UCD3138A 的任何代码? 从哪里可以找到它? 我是否应该要求您通过电子邮件发送它?

此致、

Adam

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

    您好、Adam、

    请告诉我们您的电子邮件、我们将向您发送电子邮件。

    此致、
    肖恩

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

    您好!

    请使用我的地址   :tech@arf.net.pl

    谢谢、
    Adam

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

    实际上、您可以下载 TI LLCHB 固件、其中包含来自互联网的所有链接器和头文件。 解压缩文件后,您将看到以下 exe 安装程序。

    LLCHBFirmware-1.2-windows-installer.exe


    此致、
    肖恩
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请使用 LLC HB 固件作为起点。 删除 main.c 的内容并添加到您的培训实验代码中。 然后选择构建配置,右键单击项目->构建配置->设置为活动。

    可执行文件将位于所选的相关器件中。

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

    LLC HB 固件太大、无法用作新固件的基础。 无需从头开始执行干净的固件、首先需要猜测应该删除代码的哪些部分、以了解代码中正在发生的情况、并避免以后出现"意外"、例如复制已经存在的内容、例如初始化函数。

    只需使用 LLC HB 固件中的头文件和链接器文件替换培训实验室中的头文件和链接器文件就没有帮助、因为 LLC HB 固件链接器文件不会定义培训实验室中代码所需的_zero_out_integration_word 符号。 如果我尝试将更多代码从 LLC HB 固件复制到培训实验室的代码、则会出现更多错误、例如未定义的符号或重新定义的符号。

    您能否为 UCD3138A 提供"兼容培训实验室"的链接器文件?

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

    它实际上非常简单。 删除 main.c 中除 void main()和 void c_init00 (void)以外的所有函数。 并将主函数保留如下:
    void main()

    INIT_PMBus (0x58);
    for (;;)

    PMBus_handler ();




    然后,您可以开始添加初始化代码。
    谢谢、
    Sanatan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Sanatan、

    我更想了解 software_interrupt.c、interrupts.c、function_definitions.h、PMBus*等中的代码

    正如我在第一个帖子中所写的、我正在移植一个经过测试的固件、该固件已准备好用于 UCD3138系列的其他芯片。 我不想从零开始工作、也不必猜测我的代码是否与代码的其他"预定义"部分进行交互。

    我没有看到任何文档来解释上述文件中的代码部分是绝对必要的最低要求。 是否有此类文档?

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

    我们没有这样的文档。 另外,它也是一项非常复杂的任务,它试图通过移植到新设备来使环境正常工作。 因此、我们建议使用以下方法。
    即使您有用于 UCD3138器件的工作代码,仍需要将代码从项目复制到另一个。
    我可以为您提供有关以下方面的说明:

    1) 1)将 LLCHB 固件导入您的工作区。
    2) 2)将设备配置设置为 ucd3138A。 为此,请转至项目,右键单击->"Build Configurations "->"Set active "->"UCD3138A (UCD3138A Configuration)"。
    3) 3)删除除 cyclone_global_variables_defs.c、main.h、software_interrupt_wraper.c、software_interrupt.c 和 software_interrupts.h 以外的所有文件
    4) 4)现在添加现有项目(main.c、interrupts.c、standard_interrupt.c 和 variables.h)中的文件
    )、以便新项目中包含的文件为

    cyclone_global_variables_defs.c、main.h、software_interrupt_wraper.c、software_interrup.c、software_interrupts.h、main.c、interrupts.c、 standard_interrupt.c 和 variables.h

    5) 5)确保现有项目中的文件具有以下头文件:

    #include "system_defines.h"
    #include "cyclone_device.h"
    #include "variables.h"
    #include "function_definitions.h"
    #include "software_interrupts.h"
    #include "cyclone_defination.h"
    #include "PMBus_common.h"

    请告诉我它是如何实现的。

    谢谢、
    Sanatan