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.

[参考译文] Linux/AM4376:在 Linux 主机系统上进行定制板的软件开发

Guru**** 2540720 points
Other Parts Discussed in Thread: AM4376, TPS65218, AM4372

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/597898/linux-am4376-software-development-on-linux-host-system-for-custom-board

器件型号:AM4376
主题中讨论的其他器件: PROCESSOR-SDK-AM437XTPS65218AM4372

工具/软件:Linux

您好!

我设计了一个定制电路板、该电路板采用 TI AM4376、可连接 LCD、DDR、SD 卡以及 USB、SPI 和 I2C 协议。 该卡处于布局和制造阶段。

同时、我要开始在 Linux 计算机上对同一卡(Ubuntu 16.04、LTS - 64位)进行软件开发。 我已安装 CCSv7.0和 Linux SDK 软件包()   

现在、我如何开始在 CCSv7.0上配置 SPI、I2C 和 USB 接口??  

我已经在 CCSv6.0上使用 MSP430开发了一个应用程序,因此在这个 AM4376处理器开发中,硬件配置应该通过配置寄存器来完成。

能否有人指导您如何在 Linux 主机上的 AM4376中开始软件开发?  

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

    首先、您应确定您将确切使用哪个 SDK (将适合您的项目要求):

    - PROCESSOR-SDK-LINUX-AM437X
    - PROCESSOR-SDK-LINUX-RT-AM437X
    - PROCESSOR-SDK-RTOS-AM437X

    如果您选择 PROCESSOR-SDK-Linux 或 PROCESSOR-SDK-Linux-RT、则可以从以下 wiki 开始:

    processors.wiki.ti.com/.../Processor_SDK_Linux_Software_Developer’s_Guide

    如果您选择 PROCESSOR-SDK-RTOS、请参阅以下 wiki:

    processors.wiki.ti.com/.../Processor_SDK_RTOS_Software_Developer_Guide

    另请参阅以下培训材料:

    www.ti.com/.../support

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

    感谢您提供链接。 我已经在参考这个链接。

    processors.wiki.ti.com/.../Processor_SDK_Linux_Software_Developer’s_Guide

    我已决定在我的定制设计中使用 PROCESSOR-SDK-LINUX-AM437X。
    我担心如何配置处理器接口?? I2C 和 SPI……?

    在控制器中、我们可以配置相应的寄存器并启动主代码并添加其 ISR。

    您能否共享用于为 AM437x 处理器配置此类接口(I2C/SPI/USB)一次的示例代码?

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

    我们已经有适用于 I2C、SPI、USB 等的源代码 它附带 PSDK 3.03。

    您有 AM437x 定制板。 您的定制板是否基于某些 AM437x TI 电路板(EVM、入门套件、IDK)?

    根据我的理解、您需要在定制板上运行 PSDK 3.03、请进行确认? 这称为"移植"、您不必从头开始编写 I2C/SPI/USB 驱动程序。

    首先、您可以参阅 AM437x TI EVM 原理图和软件、了解如何在 u-boot 和 Linux 内核中处理 I2C。 AM437x TI EVM 使用 I2C0 (0x44E0B000)连接 TPS65218 PMIC、板级 ID 存储器(EEPROM)等 请参阅以下有关 AM437x TI EVM 的指针:

    www.ti.com/.../tmdsevm437x

    www.ti.com/.../spruhw7.pdf

    u-boot 文件描述了 I2C 连接:

    TI-PROCESSOR-SDK-LINUX-AM437X-EVM-03.03.00.04/board-support/u-boot-2016.05/arch/arm/dts/am4372.dtsi
    TI-PROCESSOR-SDK-LINUX-AM437X-EVM-03.03.00.04/board-support/u-boot-2016.05/arch/arm/dts/AM437X-gp-evm.dts
    TI-PROCESSOR-SDK-LINUX-AM437X-EVM-03.03.00.04/board-support/u-boot-2016.05/board/ti/am43xx/board.c

    您应该修改/调整这些文件以匹配您的硬件设计、因为它们用于 AM437x TI EVM 板。

    I2C 驱动程序(它是通用的、除非发现错误或实现新功能、否则不应进行修改)位于:

    TI-PROCESSOR-SDK-LINUX-AM437X-EVM-03.03.00.04/board-support/u-boot-2016.05/drivers/i2c/OMAP24xx_i2c.c

    另请参见以下 e2e 线程:

    e2e.ti.com/.../577924

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

    我已参考此 AM437X 通用板原理图(www.ti.com/.../TMDXEVM437X )进行定制板设计。

    我在上面提到的路径中找到了 U-boot 文件。 它们并不在精确的路径中、但我仍然可以弄清楚一点。

    我将观看有关 U-boot 和 Linux 移植的培训系列视频。 我将收到我制作的定制板、直至6月中旬、之后我将能够加载代码并进行分析。

    感谢您的回复。

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

    我在"dts"文件夹中只有这两个文件:kconfig 和 Makefile

    </opt/ti-processor-sdk-linux-am437x-evm-03.02.00.05/board-support/u-boot-2016.05 +gitAUTOINC+6c5519b6fc-g6c5519b6fC/DTS >

    "目录"中没有与您在先前的帖子中提到的文件类似的其他文件。

    /dts/am4372.dtsi
    /dts/am437x-gp-evm.dts

    此主机中的 SDK 安装是否正确完成? 如何验证这一点?

    我已通过此链接在 Linux Ubuntu 16.04 LTS (64位)计算机上安装了此 AM437x Linux SDK Essentials
    (software-dl.ti.com/.../index_FDS.html)

    我将在此主机上开发代码、并使用存储卡版本将其加载到定制板上。

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

    [引用 user="Dhara Pandya">我在"dts"文件夹中只有这两个文件:kconfig 和 Makefile

    </opt/ti-processor-sdk-linux-am437x-evm-03.02.00.05/board-support/u-boot-2016.05 +gitAUTOINC+6c5519b6fc-g6c5519b6fc/dts >[/引号]

    请安装并使用 ti-processor-sdk-linux-AM437X-EVM-03.03.00.04 (不是 ti-processor-sdk-linux-AM437x-EVM-03.02.00.05)。 下载并安装 ti-processor-sdk-linux-am437x-evm-03.03.00.04-Linux-x86-Install.bin 文件

    路径为 u-boot-2016.05/arch/arm/dts、而不是 u-boot-2016.05/dts。

    此致、
    帕维尔

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

    您好、Pavel、

    感谢您的支持。 我将下载 SDK  

     来自此链接的 PROCESSOR-SDK-LINUX-AM4376 03_03_00_04 ( AM437x Linux SDK 基本版: http://software-dl.ti.com/processor-sdk-linux/esd/AM437X/latest/index_FDS.html )

    我还想再询问一个问题。 我们可以在 Python 中编写处理器 AM4376代码吗??

    支持此器件的 python 库是否可用??

    此致、

    Dhara

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

    我认为 python 仅在用户空间中受支持(应用程序级)、请参阅软件清单文件:

    software-dl.ti.com/.../software_manifest.htm

    另请参阅以下 e2e 线程:

    e2e.ti.com/.../512297
    e2e.ti.com/.../573021

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

    我下载了 SDK "processor-SDK-Linux-AM4376 03_03_00_04"、并在您提到的路径中找到头文件。

    我还提到了您共享的 TI 线程、但这些线程用于 Beagle Bone Black 板上使用的 TI AM335X 处理器。 它使用此处理器的 Adafruit 库,其中包含 AM335x 处理器的硬件说明( github.com/.../Adafruit_GPIO )

    如果 python 库可用于 AM4376、那么我可以与其余代码合并。

    此致、
    Dhara