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.

[参考译文] LP-CC1352P7:共存问题、如果共存被启用、请求和优先级 GPIO 不能在 PTM 模式下使用 GPIO_write()进行配置。

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1124565/lp-cc1352p7-coexistence-issues-the-request-and-priority-gpios-can-not-be-configured-with-gpio_write-in-ptm-mode-if-coexistence-is-enable

器件型号:LP-CC1352P7
Thread 中讨论的其他器件:SysConfig

大家好、团队、

最近我采用了简单外设来演示一些共存问题、但意外发生了一些问题。希望你们能帮我解决  

如果启用了共存选项、则无法在 PTM 模式下使用 GPIO_write()配置请求级别和优先级 GPIO。作为比较、如果禁用共存选项、则该方法有效。由于共存选项在 PTM 模式下不起作用、  请求级别 和优先级 GPIO 应完全由    GPIO_write()控制。

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

    Renfang、您好!

    您能否解释重现所发现问题的步骤(基于 SDK 中的示例)?  

    一般来说、应用程序不应尝试控制共存 GPIO、因为它们属于射频驱动程序。

    谢谢、
    尼古拉伊

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

    Nikolaj_G、您好!

    以下是指定的步骤

    SDK:6.10

    示例:简单外设

    1.在 simple_peripheral.syscfg 中启用共存和 PTM。  

    2.在 main.c 的 Marco PTM 内添加以下代码

    GPIO_setConfig (CONFIG_RF_COEX_REQUEST、GPIO_CFG_OUTPUT | GPIO_CFG_IN_INT_INT_INT_NONE);
    GPIO_setConfig (CONFIG_RF_COEX_PRIORITY、GPIO_CFG_OUTPUT | GPIO_CFG_IN_INT_INT_INT_NONE);
    GPIO_WRITE (CONFIG_RF_COEX_REQUEST、1);
    GPIO_WRITE (CONFIG_RF_COEX_PRIORITY、1);

    3.构建项目并将映像加载到 launchpad。  启动后、GPIO CONFIG_RF_COEX_REQUEST 和 CONFIG_RF_COEX_PRIORITYT 的电平仍然为低电平

    4.在 smple_peripheral.syscfg 中禁用共存并启用 PTM

    5. 在 main.c 的 Marco PTM 内的步骤2中添加相同的代码

    6.  编译工程并将映像加载到 launchpad。   启动后、GPIO CONFIG_RF_COEX_REQUEST 和 CONFIG_RF_COEX_PRIORITYT 的级别为高电平

    上面的测试说明 了如果启用了兼容性、GPIO_write()将不起作用。由于共存在 PTM 模式下不起作用、 GPIO CONFIG_RF_COEX_REQUEST 和 CONFIG_RF_COEX_PRIORITYT 应在 PTM 模式下由 GPIO_write()控制、尽管共存已启用。

    事实上、我之所以想实现这个目标、是因为需要在 PTM 模式下检测硬件性能的共存性。

    BR、

    任芳

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

    任芳、您好!

    "问题"是、当射频驱动器被初始化时、用于共存 的引脚将被多路复用为射频内核数据输出信号、而不是 GPIO 信号。 请参阅 SysConfig 生成的文件 ti_drivers_config.c 中 rfDriverCallbackCoex 中对 GPIO_setMux 的调用

    在调用  GPIO_setConfig 后、射频驱动器会初始化、因此 一旦射频驱动器初始化、GPIO_setConfig 完成的配置将被覆盖。  

    请记住、如果   启用了共存 、射频驱动程序拥有与共存关联的引脚、并且在启用共存时、应用程序不应尝试控制共存引脚。  


    另请注意、在较新的 SDK (v6.20)中 、HCI 测试命令在启用时使用 Coex 引脚。 请在此处查看发行说明 :https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_6_20_00_29/docs/ble5stack/release_notes_ble5stack_2_02_06_00.html 

    此致、
    尼古拉伊