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.

[参考译文] CC1310:CC1310 Simple Link 远距离模式杂散发射

Guru**** 1807890 points
Other Parts Discussed in Thread: CC1310, CC1101, CC2500
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1414567/cc1310-cc1310-simple-link-long-range-mode-spurious-emissions

器件型号:CC1310
Thread 中讨论的其他器件: CC1101CC2500

工具与软件:

我们为模块实施了远距离模式(5kbps、SimpleLink 远距离)固件。

我们无法在920MHz 处通过 ARIB ST -108。 峰值发射改善。

当我们将 SmartRFStudio 2.31.0用于连续 Tx (调制)时、相同模块、相同的射频参数看起来正常。

当我们使用我的固件时、它会失败。

当我们使用100kbps、2-GFSK、50kHz 偏差时、我们的固件和 SmartRFStudio 之间的 Tx 波形看起来是相同的。

当我们使用 5kbps SimpleLink 远距离技术时、 固件和 SmartRFStudio 之间的 Tx 波形看起来有所不同。

RF 参数(RF_cmdPropRadioDivSetup、pOverrides、RF_cmdTestTx)是从 SmartRFStudio 2.31.0复制的。

RF 并行信息是从 simplelink_cc13x0_sdk_4_20_02_07复制而来的

是否还有任何其他参数、我们需要更改?

是否有任何使用 simplelink 远距离模式的示例代码?

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

    您好!

    您能否 分享 smartRFStudio 传输时和固件使用时的频谱图?

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

    大家好、TK、

    将此问题向前推进:

    • 请共享 SmartRF Studio 设置(按预期执行)-它们是否与默认设置相同?
    • 请详细说明如何在 SDK 中使用导出的 SmartRF Studio 设置。

    此致、
    Zack

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

    我们已经为 GFSK 提供了 FW。
    我们仅更改了射频设置和贴片以使用远距离模式。
    我们的固件使用 driverlib.lib。
    我们调用以下 API 进行设置
    RFC_selectRadioMode
    RFC_enableRadio
    RFC_setupRadio(RFC_radioOp_t*)&RF_cmdPropRadioDivSetup);
    RFC_sendRadioOp ((RFC_RADIOP_t*)&RF_cmdFs);
    然后针对启动 Tx 调用以下 API。
    RFC_sendRadioOp_nB ((RFC_radioOp_t*)&RF_cmdTxTest、NULL);

    这是 SmartRF Studio 中的设置。
    将"频率"更改为920.6MHz、将" TX 功率"更改为12.5dBm。
    我们使用这些参数。

    //
    //由 SmartRF Studio 版本2.31.0生成(BUILD#400)
    //应用的模板与 CC13x0 SDK 版本2.10.xx.xx 或更高版本兼容。
    //器件:CC1310 Rev. B (2.1)。
    //
    //


    //
    //参数摘要
    // RX 地址0:0xAA
    // RX 地址1:0xBB
    // RX 地址模式:无地址检查
    //频率:920.60001 MHz
    // Data Format (数据格式):串行模式禁用
    //偏差:5.000kHz
    //数据包长度配置:变量
    //最大数据包长度:255
    //数据包长度:20
    //数据包数据:255
    // RX 滤波器 BW:49.0kHz
    //符号速率:19.99969 kBaud
    //同步字长:32位
    // TX 功率:12.5dBm
    // Whitening:CC1101/CC2500兼容

    #include "smartrf_settings.h"

    #include DeviceFamily_structPath (rf_patches/rf_patch_cpe_sl_longrange.h)
    #include DeviceFamily_structPath (rf_patches/rf_patch_rfe_sl_longrange.h)
    #include DeviceFamily_structPath (rf_patches/rf_patch_mce_sl_longrange.h)

    // TI-RTOS RF 模式对象
    RF_Mode RF_PROP =

    rfMode = RF_MODE_PROPERIOD_SUB_1
    .cpePatchFxn =&rf_patch_cpe_sl_longrange、
    .mcePatchFxn =&RF_PATCH_MCE_SL_LONGGE、
    .rfePatchFxn =&rf_patch_rfe_sl_longrange
    };


    //覆盖 CMD_PROP_RADIO_DIV_SETUP
    uint32_t pOverrides[]=

    // override_use_patch_simplelink_long_range.xml
    // Phy:使用 MCE RAM 补丁、RFE RAM 补丁
    MCE_RFE_OVERRIDE (1、0、0、1、0)、
    // override_synth_prop_863_930_div5_lbw60k.xml
    //合成:将建议的 RTRIM 设置为7
    HW_REG_OVERRIDE (0x4038、0x0037)、
    //合成:将 Fref 设置为4 MHz
    (uint32_t) 0x000684A3、
    //合成:配置精细校准设置
    HW_REG_OVERRIDE (0x4020、0x7F00)、
    //合成:配置精细校准设置
    HW_REG_OVERRIDE (0x4064、0x0040)、
    //合成:配置精细校准设置
    (uint32_t) 0xB1070503、
    //合成:配置精细校准设置
    (uint32_t) 0x05330523、
    //合成:将锁定后的环路带宽设置为60 kHz
    (uint32_t) 0x40410583、
    //合成:将锁定后的环路带宽设置为60 kHz
    (uint32_t) 0x32CC0603、
    //合成:将锁定后的环路带宽设置为60 kHz
    (uint32_t) 0x00010623、
    //合成:配置 VCO LDO (在 ADI1中、设置 VCOLDOCFG=0x9F 以使用电压输入基准)
    ADI_REG_OVERRIDE (1、4、0x9F)、
    //合成:配置合成 LDO (在 ADI1中、设置 SLDOCTL0.COMP_CAP=1)
    ADI_HALFREG_OVERRIDE (1、7、0x4、0x4)、
    //合成:使用24 MHz XOSC 作为同步时钟、启用额外的 PLL 滤波
    (uint32_t) 0x02010403、
    //合成:配置额外的 PLL 过滤
    (uint32_t) 0x00108463、
    //合成:增加合成编程超时(0x04B0 RAT 节拍数= 300us)
    (uint32_t) 0x04B00243、
    // override_synth_disable_bias_div5.xml
    //合成:将分频器偏置设置为禁用
    HW32_array_override (0x405C、1)、
    //合成:将分频器偏置设置为禁用(特定于 loDivider=5)
    (uint32_t) 0x18000200、
    // override_phy_rx_aaf_bw_0xd.xml
    // Rx:将抗混叠滤波器带宽设置为0xD (在 ADI0中、设置 IFAMPCTL3[7:4]=0xD)
    ADI_HALFREG_OVERRIDE (0、61、0xF、0xD)、
    // override_phy_gfsk_rx.xml
    // Rx:将 LNA 偏置电流修整偏移设置为3
    (uint32_t) 0x00038883、
    // Rx:在找到同步事件时冻结 RSSI
    HW_REG_OVERRIDE (0x6084、0x35F1)、
    // override_phy_gfsk_pa_ramp_agc_reflevel_0x14.xml
    // Tx:配置 PA 斜升设置(0x41)。 Rx:将 AGC 基准电平设定为0x14。
    HW_REG_OVERRIDE (0x6088、0x4114)、
    // Tx:配置 PA 斜升设置
    HW_REG_OVERRIDE (0x608C、0x8213)、
    // override_phy_long_range_dsss2.xml
    // phy:配置 DSSS SF=2
    HW_REG_OVERRIDE (0x505C、0x0100)、
    // override_phy_rx_rssi_offset_5db.xml
    // Rx:设置 RSSI 偏移以将报告的 RSSI 调整+5dB (默认值:0)、针对外部偏置和差分配置进行修整
    (uint32_t) 0x00FB88A3、
    (uint32_t) 0xFFFFFFFF
    };


    // CMD_PROP_RADIO_DIV_SETUP
    //针对所有频段的专有模式无线电设置命令
    RFC_CMD_PROP_RADIO_DIV_SETUP_t RF_cmdPropRadioDivSetup =

    .commandNo = 0x3807、
    .status = 0x0000、
    .pNextOp = 0、//插入适用的指针:(uint8_t*)&xxx
    .StartTime = 0x00000000、
    startTrigger.triggerType = 0x0、
    startTrigger.bEnaCmd = 0x0、
    startTrigger.triggerNo = 0x0、
    startTrigger.pastTrig = 0x0、
    .condition.rule = 0x1、
    .condition.nSkip = 0x0、
    .dmodulation .modType = 0x1、
    .modulation.deviation = 0x14、
    .symbolRate.prescale = 0xF、
    .symbolRate.rateWord = 0x3333、
    .symbolRate.decimMode = 0x0、
    .rxBw = 0x21、
    .PreamConf.nPreamBytes = 0x2、
    .前置 放大器 Conf.前置 放大器模式= 0x0、
    .formatConf.nSwBits = 0x20、
    .formatConf.bBitReversal = 0x0、
    .formatConf.bMsbFirst = 0x0、
    .formatConf.fecMode = 0x8、
    .formatConf.whitenMode = 0x1、
    .config.frontEndMode = 0x0、
    .CONFIG.BIASMode = 0x1、
    .config.analogCfgMode = 0x0、
    .config.bNoFsPowerUp = 0x0、
    .txPower = 0xA63F、
    .pRegOverride = pOverrides、
    .centerFreq = 0x0398、
    .intFreq = 0x8000、
    .loDivider = 0x05
    };


    // CMD_FS
    //频率合成器编程命令
    RFC_CMD_FS_t RF_cmdFS =

    .commandNo = 0x0803、
    .status = 0x0000、
    .pNextOp = 0、//插入适用的指针:(uint8_t*)&xxx
    .StartTime = 0x00000000、
    startTrigger.triggerType = 0x0、
    startTrigger.bEnaCmd = 0x0、
    startTrigger.triggerNo = 0x0、
    startTrigger.pastTrig = 0x0、
    .condition.rule = 0x1、
    .condition.nSkip = 0x0、
    .frequency = 0x0398、
    .fractFreq = 0x999A、
    synthConf.bTxMode = 0x0、
    synthConf.refFreq = 0x0、
    .__dummy0 = 0x00、
    .__dummy1 = 0x00、
    .__dummy2 = 0x00、
    .__dummy3 = 0x0000
    };


    // CMD_TX_TEST
    //发送器测试命令
    RFC_CMD_TX_TEST_t RF_cmdTxTest =

    .commandNo = 0x0808、
    .status = 0x0000、
    .pNextOp = 0、//插入适用的指针:(uint8_t*)&xxx
    .StartTime = 0x00000000、
    startTrigger.triggerType = 0x0、
    startTrigger.bEnaCmd = 0x0、
    startTrigger.triggerNo = 0x0、
    startTrigger.pastTrig = 0x0、
    .condition.rule = 0x1、
    .condition.nSkip = 0x0、
    .config.bUseCw = 0x0、
    .config.bFsOff = 0x1、
    .config.whitenMode = 0x2、
    .__dummy0 = 0x00、
    .txWord = 0xAAAA、
    .__dummy1 = 0x00、
    .endTrigger.triggerType = 0x1、
    .endTrigger.bEnaCmd = 0x0;
    .endTrigger.triggerNo = 0x0、
    .endTrigger.pastTrig = 0x0、
    syncWord = 0x00000000、
    .EndTime = 0x00000000
    };

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

    您好!

    对延误深表歉意;这一点尚未被忘记、我们本周将继续跟进。 我已在一位软件同事那里获取有关固件实施的输入。

    此致、

    Zack

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

    您好!

    我看到您在固件中使用以下 txPower:

    而 SmartRF Studio 7默认提供以下功能:

    这意味着您的固件将以12.5 dBm 的功率输出、这是预期结果吗?

    此致、

    Arthur

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

    是、我们使用12.5dBm。

    在920 MHz 处、ARIB ST -108的 Tx 功率必须小于13dBm

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

    您好!

    我们将尝试复制您在实验室中看到的内容。 预计周五的结果。

    此致、

    Arthur

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

    大家好、TK、

    同时,您还可以使用我们的 rfCarrierWave 示例和您的设置运行您的测试吗?

    此致、

    Arthur

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

    您好!

    使用 rfCarrierWave 示例和 SmartRF Studio 7中的设置时、频谱没有区别。

    请使用射频驱动程序(rf.h)和我们的示例进行开发和特性评估工作。

    #include

    此致、

    Arthur

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

    感谢您的反馈。

    我们将尝试 rfCarrierWave 示例并检查代码之间的区别。