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.

[参考译文] 编译器/AM3356:GPIO 驱动程序问题

Guru**** 2555630 points
Other Parts Discussed in Thread: SYSBIOS

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/610928/compiler-am3356-gpio-driver-issue

器件型号:AM3356
Thread 中讨论的其他器件:SYSBIOS

工具/软件:TI C/C++编译器

大家好、我的客户已经可以通过 UART 发送和接收数据了。 他们使用了 C:\ti\pdk_am335x_1_0_6\packages/ti\drv\uart\test\src 中的演示例 UART_BasicExample_icev2AM335x_armTestProject 和修改后的 UART 驱动程序。

现在、他们必须将自己的堆栈修改到 AM335x 上。 因此、它们需要 GPIO 功能和队列。 但在使用 UART 程序之外的 GPIO 功能时遇到问题。 当它们使用 GPIO_init()时,编译器会抱怨一个未定义的引用错误(实现了 GPIO 标头)。

在.cfg 文件中进行了以下更改:

/*加载 GPIO 包*/

VAR GpioPackage = XDC.loadPackage ('ti.drv.GPIO');

GpioPackage.Settings.enableProfiling = true

 

在编译器目录"${GPIO_INSTALL_PATH}"中进行了以下更改:

Makefile:151:目标'UART_BasicExample_icev2AM335x_armTestProject.out'的配方失败

C:\ti\pdk_am335x_1_0_6\packages/ti\drv\gpio\lib\a8\release\ti.drv.gpio.profiling.aa8fg(GPIO_drv.oa8fg):在函数`gpio_init'中:

C:\ti\pdk_am~1\packages/ti\drv\gpio/src/gpio_drv.c:89:未定义对`gpio_config'的引用

C:\ti\pdk_am~1\packages/ti\drv\gpio/src/gpio_drv.c:89:未定义对`gpio_config'的引用

collect2.exe:错误:LD 返回1退出状态

gmaked[1]:***[UART_BasicExample_icev2AM335x_armTestProject.out]错误1

gmake:***[全部]错误2.

Makefile:147:目标“全部”的配方失败

可以在这里提供帮助吗?

此致、Holger

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    RTOS 团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Holger、
    重现此错误的最佳方法是什么? 您是否有可共享的 CCS 工程、或到目前为止创建示例的步骤?
    此致、
    Lali
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Holger、

    请让您的客户参阅随 GPIO 驱动程序一起提供的 AM335x ICE EVM 上的 LED 闪烁示例。

    在 应用程序中包含 GPIO 驱动程序并将驱动程序绑定到 SOC 配置的正确方法是将 pdk_am335x_x_x_x\packages/ti\drv\gpio\soc \am335x 中的 GPIO_soc 文件添加到项目中  

    或者在 SYSBIOS .cfg 文件中添加以下配置:

    VAR GpioPackage = XDC.loadPackage ('ti.drv.GPIO');
    
    GpioPackage.Settings.enableProfiling = true;
    
    var socType ="AM335x";
    
    GpioPackage.Settings.socType = socType; 

    驱动程序文档中介绍了将驱动程序绑定到给定 SOC 配置的过程:

    http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_GPIO#Driver_Configuration

    此致、

    Rahul