请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:LAUNCHXL-CC1352R1 工具与软件:
您好!
我想使用低级射频命令 在通道37、38和39上发送 ADV_NONCONN_IND 数据包、并在除之外的任何通道上发送特定于制造商的有效载荷。 但是、我们只能在通道37上看到正在传输的任何数据包。
我们选择了使用低级射频命令来实现周期性广播、因为我们还使用 专有射频模式来同时传输其他数据包。
我们命令序列的一些伪代码:
rfc_bleAdvPar_t adv_params = (rfc_bleAdvPar_t){
.advLen = 16,
.pAdvData = my_adv_data_len_16,
}
rfc_CMD_FS_t setup_chan_37_cmd = (rfc_CMD_FS_t){
.commandNo = 0x0803,
.frequency = 2402,
.condition.rule = COND_STOP_ON_FALSE,
.pNextOp = &adv_chan37_cmd
}
rfc_CMD_BLE5_ADV_NC_t adv_chan37_cmd = (rfc_CMD_BLE5_ADV_NC_t){
.commandNo = 0x182D,
.channel = 37,
.pParams = &adv_params,
.condition.rule = COND_STOP_ON_FALSE,
.pNextOp = &setup_chan_38_cmd
}
rfc_CMD_FS_t setup_chan_38_cmd = (rfc_CMD_FS_t){
.commandNo = 0x0803,
.frequency = 2426,
.condition.rule = COND_STOP_ON_FALSE,
.pNextOp = &adv_chan38_cmd
}
rfc_CMD_BLE5_ADV_NC_t adv_chan38_cmd = (rfc_CMD_BLE5_ADV_NC_t){
.commandNo = 0x182D,
.channel = 38,
.pParams = &adv_params,
.condition.rule = COND_STOP_ON_FALSE,
.pNextOp = NULL
}
RF_Mode myBLEMode = (RF_Mode){
.rfMode = RF_MODE_MULTIPLE,
.cpePatchFxn = rf_patch_cpe_multi_protocol,
}
...
handle = RF_open(&myBLEObject, &myBLEMode, &myBLESetup, &myBLEParams);
...
// Able to see packet on channel 37 only
RF_scheduleCmd(handle, &setup_chan_37_cmd, &defaultScheduleParams, txCompleteCb, RF_EventLastCmdDone);
// Not able to see ANY packets if starting from `setup_chan_38_cmd`
// RF_scheduleCmd(handle, &setup_chan_38_cmd, &defaultScheduleParams, txCompleteCb, RF_EventLastCmdDone);
我们是否使用预期的射频命令序列来实现此目的? 需要哪些其他信息来帮助进行调试?
我正在使用 TI SimpleLink CC13xx_CC26xx SDK 版本 6.30.00.x
谢谢!
Adam