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.

[参考译文] TI-RTOS-MCU:TI-RTOS:CC1310:设置 TX 功率(V2.21与 v3.10)

Guru**** 2522770 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/904549/ti-rtos-mcu-ti-rtos-cc1310-set-tx-power-v2-21-vs-v3-10

器件型号:TI-RTOS-MCU

您好!

我们使用两个不同版本的 TI-RTOS (V2.21和 v3.10)。

现在、我发现在运行时设置 TX 功率有问题。 设置 TX 功率后的第一个帧将使用新的 TX 功率发送。 但接下来的帧将使用旧的 TX 功率发送。

我使用以下函数打开射频驱动器:

m_RF_Handle = RF_open (&m_RF_object、&m_RF_prop、(RF_RadioSetup*)和 m_RF_cmd_prop_radio_div_setup、&RF_params);

在  m_rf_cmd_prop_radio_div_setup.txPower 中、默认的 TX 功率。 该函数在启动时调用一次。

 

在运行时、我使用以下函数设置 TX 功率:

*(((uint16_t *)&m_rf_cmd_set_tx_power.txPower)= power_TO_set;
rf_runImmediateCmd (m_rf_handle,(uint32_t*)&m_rf_cmd_set_tx_power);

但是、如上所述、新的 TX 功率将仅用于设置后的第一个帧。

仅当射频控制器同时断电时才会出现问题(如果射频控制器始终处于 RX 或 TX 模式、则新的 TX 功率也将用于后续帧。)

为了解决此问题、我使用以下函数(而不是上面的函数):

RF_TxPowerTable_Value 功率;
power.rawValue = power_TO_set;
power.__dummy = 0;
power.paType = RF_TxPowerTable_DefaultPA;
rf_setTxPower (m_rf_handle、power);

但 TI-RTOS V2.21中不提供此函数。

使用 RF_setTxPower()和  RF_runImmediateCmd ()有何区别

RF_runImmedateCmd  ()为何不存储新的 TX 功率?

谢谢、致以诚挚的问候

Heiko

 

 

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

    嗨、Heiko、

    首先、我将根据您列出的版本假设一个是"TI-RTOS 2.21"、另一个是"SimpleLink CC13x0 3.10 SDK"。 如果正确,您应该知道独立的 TI-RTOS 安装不再受这些器件的支持(不再支持),TI-RTOS 下载页面上提供了有关此方面的信息。 您应该考虑迁移到所有软件的最新 SimpleLink SDK、以免错过重要的内核和驱动程序修复。

    至于您的问题、区别在于射频驱动程序 API 使用新的 TX 功率更新设置命令、以便在重新为无线电供电时、它仍然存在。 基本上、您还需要确保更新绑定到句柄的 setup 命令的"txPower"字段。 "rf_runImmediateCmd ()"将仅在此时配置无线电、在断电期间不会保留无线电。