TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2674P10: 下载的SDK没有相关例程,且无法配置2440MHz频率

Part Number:CC2674P10Other Parts Discussed in Thread:CC1354P10, , SYSCONFIG

目前下载了官方最新固件simplelink_cc13xx_cc26xx_sdk_7_10_01_24,安装后发现里面没有CC2674P10这个型号,之后选择LP_EM_CC1354P10_1的串口例程,修改了targetConfigs文件,将型号改成了CC2674P10

之后通过编译烧录,可以正常使用串口功能。

接着在smart RF strudio 7里面找到了CC2674P10型号,并进行了通信,说明模块无异常

之后下载CC1354P10的例程rfPacketTx以及rfPacketRx,烧录到两个板子发现不能通信,体现在rx回调函数没反应,接着检查syscfg配置,发现只能配置779-930频段,因此,说明不能用此例程

问题:我应该选择哪一个型号,或者哪一个例程,才能用于CC2674P10进行通信。如果一个个试的话,会加长开发周期。

Alex Zhang:

您好,已经跟进您的问题,这需要一些时间

,

?? ?:

我在syscfg里面吧之前的Proprietary删了,改成了BLE

但是主函数会在发送的时候卡住,我把/RF_cmdBle5AdvAux_bt5le1m_0.pParams->pAdvPkt这个注释掉之后,可以跑,同时频谱仪也能出功率,

但是对于这个参数,我需要自己定义我的广播数据,同时让接收例程能够收到我自己的数据,因为我在这个结构体内,没有发现对于数据长度的相关说明,也没有相关例程来参考这个如何设置

,

Alex Zhang:

?? ? said:问题:我应该选择哪一个型号,或者哪一个例程,才能用于CC2674P10进行通信。如果一个个试的话,会加长开发周期。

您这边CC1354P10的sdk可以进行参考。

https://dev.ti.com/tirex/explore/content/simplelink_cc13xx_cc26xx_sdk_7_10_01_24/docs/thread/html/cc13xx_cc26xx/software-on-cc13x4-26×4.html

您参考这个迁移指南

,

?? ?:

我昨天已经按照这个迁移指南迁移过了,但这并不是我目前遇到的问题,现在的问题如我上面回复的一致,当我迁移过去之后,我的Syscfg文件里面可以选择的Custom只有BLE 和IEEE 802

我已经在smart RF 7上面验证过当我使用BLE是可以正常通信的,但是当我在工程里将其设置为BLE之后,我发现例程里面的一些初始化的内容是需要修改的,部分结构体参数差别,在我上一个回复中可以提现出来。而当我注释掉旧参数并将其修改为新参数后,我的接收模块能触发callback函数,但事件e的参数值为2,不匹配接收完成。

目前我需要的解决方法是,是否有途径能找到关于一个例程,是关于将Syscfg文件里面的Custom修改为BLE 1Mbps LE 1M之后,射频的通信例程或初始化参考。

,

Alex Zhang:

我想问一下您这边的sysconfig版本是哪个?

,

?? ?:

版本是1.16.2

,

Alex Zhang:

我这边刚刚尝试去进行迁移,跟您显示的结果不太一样呢

,

?? ?:

这边是已经转过来了的,按照教程来的

,

Alex Zhang:

您好,请您现在总结一下您的问题,以及需求,我这边收集进行升级到e2e,等待工程师的回复。

,

?? ?:

主要现在我转来后,需要一个例程告诉我下面图片里面的应该怎么做

因为,现在有个问题是,我把syscfg里面把射频改成BLE,之后,这些配置参数的结构体变了,导致我不知道我应该如何初始化我的这些参数,才能正常通信,就像那个callback函数,当我rx工程接收到了tx发过来的数据,但我无法和RF_EventRxEntryDone匹配,也可能里面的函数不能用现在截图中的。

,

Alex Zhang:

这个里面的内容您这边阅读了吗

,

?? ?:

总结一下,我现在的问题就是,我已经将工程变成了CC2674P10的工程,我现在需要一个针对于BLE这个Custom的例程,包括Tx、Rx的初始化参数配置,以及callback函数如何获取射频数据。

,

Alex Zhang:

好的,我将会跟进您的问题,有更新会立即回复您

,

?? ?:

我看过了,但是这个并不能解决我的问题,就像我说的,因为修改为BLE之后,我初始化函数的结构体发生了变化,例如Tx工程中,我原本的结构体包括了发送字节数和发送包地址两个参数,但是修改后,只有发送包地址,而没有字节数,这就意味着我并没有一个参考来让我分析,我到底是初始化阶段还是后面的回调函数出现的问题

,

Alex Zhang:

好的,明白了,我这边会跟进的,谢谢您的回复

,

Alex Zhang:

工程师这边提供了完成您正在寻找的功能的说明:

使用 rfPacketRX 示例的 rfPacketTX 作为起点,并执行以下步骤将其移植到正确的设备。

使用您想要使用的 BLE 设置构建项目(不会编译,因为您使用的是 BLE 设置,并且示例使用 prop 命令,但这并不重要)。

获取 sysConfig 生成的 ti_radio_config.c/h 并将它们手动添加到您的项目中,然后将它们从 sysConfig 中排除。

以 SmartRF Studio 为例,打开一个 prop 示例。使用使用正常 RX 和 TX 命令(不是高级)的设置,并且

将所需命令(CMD_PROP_TX 和 CMD_PROP_RX)复制到 ti_radio_config.c/h
重命名 CMD_FS
更改示例中请求访问无线电的方式:

/* Request access to the radio */
rfHandle = RF_open(&rfObject, &RF_prop_bt5le1m_0, (RF_RadioSetup*)&RF_cmdBle5RadioSetup_bt5le1mp10_1, &rfParams);
// CMD_PROP_TX
// Proprietary Mode Transmit Command
rfc_CMD_PROP_TX_t RF_cmdPropTx =
{.commandNo = 0x3801,.status = 0x0000,.pNextOp = 0, // INSERT APPLICABLE POINTER: (uint8_t*)&xxx.startTime = 0x00000000,.startTrigger.triggerType = 0x0,.startTrigger.bEnaCmd = 0x0,.startTrigger.triggerNo = 0x0,.startTrigger.pastTrig = 0x0,.condition.rule = 0x1,.condition.nSkip = 0x0,.pktConf.bFsOff = 0x0,.pktConf.bUseCrc = 0x1,.pktConf.bVarLen = 0x1,.pktLen = 0x14,.syncWord = 0x930B51DE,.pPkt = 0 // INSERT APPLICABLE POINTER: (uint8_t*)&xxx
};// CMD_PROP_RX
// Proprietary Mode Receive Command
rfc_CMD_PROP_RX_t RF_cmdPropRx =
{.commandNo = 0x3802,.status = 0x0000,.pNextOp = 0, // INSERT APPLICABLE POINTER: (uint8_t*)&xxx.startTime = 0x00000000,.startTrigger.triggerType = 0x0,.startTrigger.bEnaCmd = 0x0,.startTrigger.triggerNo = 0x0,.startTrigger.pastTrig = 0x0,.condition.rule = 0x1,.condition.nSkip = 0x0,.pktConf.bFsOff = 0x0,.pktConf.bRepeatOk = 0x0,.pktConf.bRepeatNok = 0x0,.pktConf.bUseCrc = 0x1,.pktConf.bVarLen = 0x1,.pktConf.bChkAddress = 0x0,.pktConf.endType = 0x0,.pktConf.filterOp = 0x0,.rxConf.bAutoFlushIgnored = 0x0,.rxConf.bAutoFlushCrcErr = 0x0,.rxConf.bIncludeHdr = 0x1,.rxConf.bIncludeCrc = 0x0,.rxConf.bAppendRssi = 0x0,.rxConf.bAppendTimestamp = 0x0,.rxConf.bAppendStatus = 0x1,.syncWord = 0x930B51DE,.maxPktLen = 0xFF,.address0 = 0xAA,.address1 = 0xBB,.endTrigger.triggerType = 0x1,.endTrigger.bEnaCmd = 0x0,.endTrigger.triggerNo = 0x0,.endTrigger.pastTrig = 0x0,.endTime = 0x00000000,.pQueue = 0, // INSERT APPLICABLE POINTER: (dataQueue_t*)&xxx.pOutput = 0 // INSERT APPLICABLE POINTER: (uint8_t*)&xxx
};
// CMD_FS
// Frequency Synthesizer Programming Command
rfc_CMD_FS_t RF_cmdFs =
{.commandNo = 0x0803,.status = 0x0000,.pNextOp = 0,.startTime = 0x00000000,.startTrigger.triggerType = 0x0,.startTrigger.bEnaCmd = 0x0,.startTrigger.triggerNo = 0x0,.startTrigger.pastTrig = 0x0,.condition.rule = 0x1,.condition.nSkip = 0x0,.frequency = 0x0988,.fractFreq = 0x0000,.synthConf.bTxMode = 0x0,.synthConf.refFreq = 0x0,.__dummy0 = 0x00,.__dummy1 = 0x00,.__dummy2 = 0x00,.__dummy3 = 0x0000
};#ifndef _TI_RADIO_CONFIG_H_
#define _TI_RADIO_CONFIG_H_#include <ti/devices/DeviceFamily.h>
#include DeviceFamily_constructPath(driverlib/rf_mailbox.h)
#include DeviceFamily_constructPath(driverlib/rf_common_cmd.h)
#include DeviceFamily_constructPath(driverlib/rf_ble_cmd.h)
#include DeviceFamily_constructPath(driverlib/rf_prop_cmd.h)
#include <ti/drivers/rf/RF.h>// TI-RTOS RF Mode object
extern RF_Mode RF_prop_bt5le1m_0;// RF Core API commands
extern rfc_CMD_BLE5_RADIO_SETUP_t RF_cmdBle5RadioSetup_bt5le1m_0;
extern rfc_CMD_FS_t RF_cmdFs;
extern rfc_CMD_BLE5_ADV_AUX_t RF_cmdBle5AdvAux_bt5le1m_0;
extern rfc_CMD_BLE5_GENERIC_RX_t RF_cmdBle5GenericRx_bt5le1m_0;
extern rfc_CMD_PROP_TX_t RF_cmdPropTx;
extern rfc_CMD_PROP_RX_t RF_cmdPropRx;// RF Core API overrides
extern uint32_t pOverrides_bt5le1m_0Common[];
extern uint32_t pOverrides_bt5le1m_01Mbps[];
extern uint32_t pOverrides_bt5le1m_02Mbps[];
extern uint32_t pOverrides_bt5le1m_0Coded[];#endif // _TI_RADIO_CONFIG_H_

我能够成功使用 CC1345P10-6 rfPacketTx 项目将 BLE RF 数据包发送到自定义 CC2674P10 LaunchPad rfPacketRx 项目。

,

?? ?:

是否可以理解为,打开射频的时候选择BLE模式,即RF_open()这个API选择RF_cmdBle5RadioSetup_bt5le1mp10_1,同时RF_prop也被RF_prop_bt5le1m_0替换,只是后面的Tx,Rx模式就不选择RF_cmdBle5AdvAux_bt5le1m_0以及RF_cmdBle5GenericRx_bt5le1m_0这两个结构体,而选择

RF_cmdPropTx还有RF_cmdPropRx结构体

,

Alex Zhang:

您好,   已经跟进您的问题,有更新会立即回复您,谢谢。

,

?? ?:

我现在用你们提供的方法,Rx可以接收到Tx发来的消息,但是现在我有个疑问就是,我必须在callback里面再次post一次Rx,才能触发callback函数,否则就只能触发第一次,请问这是什么原因呢?

,

Alex Zhang:

您好,   已经跟进您的问题,有更新会立即回复您,谢谢。

,

Alex Zhang:

使用RF_runCmd时,我没有观察到类似的行为,我建议您查看 RF 驱动程序命令差异,如无线电软件包 (rflib) API中所述。

赞(0)
未经允许不得转载:TI中文支持网 » CC2674P10: 下载的SDK没有相关例程,且无法配置2440MHz频率
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1