Thread 中讨论的其他器件:SysConfig
大家好、团队、
最近我采用了简单外设来演示一些共存问题、但意外发生了一些问题。希望你们能帮我解决
如果启用了共存选项、则无法在 PTM 模式下使用 GPIO_write()配置请求级别和优先级 GPIO。作为比较、如果禁用共存选项、则该方法有效。由于共存选项在 PTM 模式下不起作用、 请求级别 和优先级 GPIO 应完全由 GPIO_write()控制。
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.
大家好、团队、
最近我采用了简单外设来演示一些共存问题、但意外发生了一些问题。希望你们能帮我解决
如果启用了共存选项、则无法在 PTM 模式下使用 GPIO_write()配置请求级别和优先级 GPIO。作为比较、如果禁用共存选项、则该方法有效。由于共存选项在 PTM 模式下不起作用、 请求级别 和优先级 GPIO 应完全由 GPIO_write()控制。
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
此致、
尼古拉伊