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.

[参考译文] TMS320F28377S:C2000 USB 库已弃用函数调用

Guru**** 2482225 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/706041/tms320f28377s-c2000-usb-libraries-deprecated-function-calls

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

最新的 c2000ware 库(V1.00.05.00)已将 USB 库移至未弃用的位置、但仍包括对已弃用函数的调用。 我们希望使用所有未弃用的代码。

将函数调用更改为非弃用函数调用有什么影响?

为什么新不弃用的 USB 库仍然调用已弃用的函数?

谢谢。

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

    正在调用哪些已弃用的函数? 它们位于什么文件中?

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

    Nicholas 指的是库 usblib.lib。 调用 map_*函数,这些函数是在 rom_map.h 中定义的宏,位于已弃用文件夹内的 driverlib 文件夹中。 宏解析为过时的函数。 因此、不会生成使用 usblib.lib 的工程。

    例如、usbhostenum.c 中的函数 USBHCDInit()调用了 MAP_SysCtlPeripheralReset()。 MAP_SysCtlPeripheralReset()解析为已不存在的 SysCtlPeripheralReset()。

    就好像 rom_map.h 文件从未更新过、usblib 库也未重建。

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

    即使使用非弃用调用更新了 rom_map.h、文件本身也位于弃用文件夹中。 这意味着已弃用 MAP_SysCtlPeripheralReset()。

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

    是的、Colin 是我的同事、这些是我们所关注的一些过时的文件/函数。

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

    我正在尝试理解这里的问题。

    在这里、您会说"例如、usbhostenum.c 中的函数 USBHCDInit()调用 MAP_SysCtlPeripheralReset()。 MAP_SysCtlPeripheralReset()解析为 SysCtlPeripheralReset(),它不再存在",它存在。

    您的 usblib 项目是否正在构建中?

    您关注的是哪些文件、您看到的最新版本对此版本的更改是什么?

    我正在尝试研究您能帮助我更好地理解问题吗?

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

    Harshmeet、

    我们不是在尝试构建 usblib 项目。 我们所做的是在项目中包含单个文件(属于 usblib 的一部分)。 为了使用各个 usblib 文件来构建我们的项目、我们必须包含位于中的头文件 \device_support\f2837xs\common\弃 用\driverlib\。 请注意、其中一个文件夹名称"已弃用"。

    参考您引用的示例、usbhostenum.c 要求我们使用 \device_support\f2837xs+ common\弃 用\作为包含路径。 它还要求我们修改 rom_map.h、因为发布的版本使用已更改的函数调用(如 SysCtlPeripheralReset()、已更改为 SYSCTL_resetPeripheral())。 我们不希望使用任何已弃用的文件、无论它们是源文件还是头文件。

    另一个示例是文件 usbbuffer.c 使用"uint8_t"。 此类型在弃用的文件 hw_types.h 中定义

    是否要更改 usblib 代码以便它不使用已弃用的调用、也不需要已弃用的包含路径?

    谢谢、

    Colin

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

    当前没有计划将 driverlib 从弃用更改为非弃用。

    您可以尝试使用 c2000ware_release_folder/driverlib 中的新 driverlib、但可能需要进行一些更改。

    谢谢、此致
    Harshmeet