主题中讨论的其他部件:CC2500、 CC2510
工具/软件:TI-RTOS
我‘m CC2650来设计一 个"跳频接收"射频模块。 我已经完成了这些产品的使用 STM32 + CC2500。
但我想使用 CC2650替代该 组合。
该模块是 半双工通信、接收到正确的数据包后、我 需要将 cc2650更改为在 TX 模式下工作、如何将工作模块从 Rx 更改为 Tx 、从 Tx 更改为 Rx?
如何在接收到正确的数据包后更改 CC2650频率?
谢谢!
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
我‘m CC2650来设计一 个"跳频接收"射频模块。 我已经完成了这些产品的使用 STM32 + CC2500。
但我想使用 CC2650替代该 组合。
该模块是 半双工通信、接收到正确的数据包后、我 需要将 cc2650更改为在 TX 模式下工作、如何将工作模块从 Rx 更改为 Tx 、从 Tx 更改为 Rx?
如何在接收到正确的数据包后更改 CC2650频率?
谢谢!
您好!
必须在应用代码中使用 API 和射频驱动器命令实现从 TX 到 RX 的切换和频率变化。 TI RTOS 针对 CC2650发布了多个示例、可为构建应用提供良好的起点。 它们还提供了有关使用不同 API 在 RX 和 TX 模式下对器件进行编程的信息。 为了加快切换速度、可以考虑使用命令链接功能。 如果您对任何功能或命令的实施有任何具体问题、请告知我们。
此致、
谢谢 SVS。
当 CC2650接收到正确的数据包时、我使用通信以 TIMER_A interrupter:的形式更改频率
RF_cmdFs.frequency = HOP_Sequence_m[ NEW_f ];
rf_postCmd (prop_handle、(rf_Op*)&rf_cmdf、rf_PriorityNormal、NULL、0);
并使用命令将射频从 RX 更改为 TX:
RF_cmdPropTx.StartTime = 0;
rf_cmdPropTx.startTrigger.triggerType = trig_now;
rf_postCmd (prop_handle、(rf_Op*)&rf_cmdPropTx、rf_PriorityNormal、NULL、0);
使用 API 切换到 RX:
rf_postCmd (prop_handle、(rf_Op*)&rf_cmdPropTx、rf_PriorityNormal、&rf_callback、IRQ_RX_ENTRYDONE);
我发现了 一个奇怪的现象、如果先打开无线电、然后给 CC2650通电、它工作得很好、但是如果我打开 CC2650并打开无线电、它有时工作 正常、 有时 工作不良。
但它在 CC2500/CC2510上使用相同的代码正常工作。
请帮帮我。 我将 CCS 6.2与 TI-RTOS 2_20_00_06搭配使用。
您好!
这些示例出现在最新版本的 TI RTOS "tirtos_cc13xx_cc26xx_2_21_00_06"中、您使用"tirtos_cc13xx_cc26xx_2_20_00_06"版本是否有原因、或者您是否可以升级到最新版本(推荐)?
POST 中的命令序列看起来正常、但是、根据传输和接收操作的设置方式、如果在发出 net 命令时之前的命令执行未完成、对讲机可能无法按预期运行。 您可以使用 RF_pendCmd()来确保上一条命令已完成执行。
您能否详细说明"先打开无线电、然后为 CC2650供电"正在做什么? 您是否更改了功耗模式?
由于使用此函数调用接收命令、因此当完成 RX 输入时、执行会传输到回调。
rf_postCmd (prop_handle、(rf_Op*)&rf_cmdPropTx、rf_PriorityNormal、&rf_callback、IRQ_RX_ENTRYDONE);
此致、
您好!
我已将 RTOS 更新为2_21_00_06。
在使用 RF_postCmd ()之前,我调用 RF_flushCmd ()(与 RF_CANCEL ()相同);
1.我启用 RF 中断:
rf_postCmd (prop_handle、(rf_Op*)&rf_cmdPropRx、rf_PriorityNormal、&rf_callback、IRQ_RX_ENTRYDONE);
它在接收数据包后输入 rf_callback (),但我发现它将在 IRQ_RX_ENTRYDONE 中断后再次输入 rf_callback (),并且 RF_EventLastCmdDone 已设置。 但我从未启用中断 IRQ_LAST_COMMAND_DONE。
2.我在一个时间中断器(GPT_INT_Timout Every 3ms)回调中调用 RF_postCmd(),我想使用 RF_pendCmd(),但如果我使用 RF_pendCmd(),时间无法进入回调。
怎么了?请提供帮助!
谢谢!