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.

[参考译文] CC2640R2F:初始硬件启动

Guru**** 2624955 points

Other Parts Discussed in Thread: CC2640R2F

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1038592/cc2640r2f-initial-hardware-bringup

器件型号:CC2640R2F

我正在尝试在具有 CC2640R2F 和单端射频配置的定制板上执行初始硬件启动(原理图)。  

我已经在 LAUNCHXL.c 文件中完成了引脚端接、并将 LAUNCHXL.h 文件中的定义更改为 CC2650EM_4XS、如图所示。  加载应用后、我的 BLE 扫描应用中未显示任何外设。  我在这里缺少什么、还是需要所有这些?   

我能够使用 SmartRF Studio 发送和接收数据包、因此我不认为这是与硬件相关的问题。

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

    您好!

    查看这是否有助于:

    https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/406173/cc2640-how-to-config-cc2640-with-4x4-hw

    此致、

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

    不、这没有什么帮助。  我正在关注初始电路板调出文档、并已完成它对基本 simple_peripheral 应用的建议。

    当我首次尝试将 BLE 堆栈加载到电路板时、也会出现错误:

    我的印象是、在加载 simple_peripheral 应用之前、需要将其加载到电路板上。  

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

    您好、Morgan、

    为了澄清这一点、您尝试在器件上闪存的程序是否是未经修改的 simple_peripheral 工程? 您是否可以访问 CC2640R2 LaunchPad? 如果是、您能否尝试刷写相同的项目并确保器件按预期运行?

    此致、

    1月

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

    是的、1月  除了对电路板文件进行更改(如初始开机自检图片所示)、将电路板切换至4XS 和 PIN_Terminate 以禁用所有 GPIO 外、此操作未进行修改。  我只是尝试验证一个简单的软件应用是否能够在定制 BLE 板上正常运行、连接是否可靠、但我似乎无法在我的任何 BLE 扫描应用上将其显示为外设。

    初始电路板调出文档仅指修改 simple_peripheral 应用的这两个步骤、如果还有其他步骤、您能否概述这些步骤以使 simple_peripheral 应用与我的4x4自定义电路板(CC2640R2FRHBR)配合使用

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

    您好、Morgan、

    您是否曾使用简单外设刷写 CC2640R2F Launchpad 并验证其是否正常工作? 如果不是这样做、以熟悉相关内容。

    我在定制 CC2640R2F 4x4和5x5板方面拥有丰富的经验。 在 Launchpad 上运行的原始简单外设将与 CC2640R2F 定制板配合使用、并进行一些修改。

    您  所做的前2项修改是正确的。

    在 CC2640R2_LAUNCHL.c CC2640R2_LAUNCHXL_initGeneral()注释掉 Board_initHook();这将导致挂起。

    void CC2640R2_LAUNCHXL_initGeneral(void)
    {
        Power_init();
    
        if (PIN_init(BoardGpioInitTable) != PIN_SUCCESS) {
            /* Error with PIN_init */
            while (1);
        }
    
        /* Perform board-specific initialization */
        Board_initHook();
    }

    最后、您需要将修改后的简单外设刷写到您的定制板上、并对其进行调试、并确保其通过 Simple Peripheral Init。 验证它是否使用 IOS LightBlue 应用或 NRF Android Connect 应用进行广播

    板级配置文件。 在 Simple Peripheral 启动文件夹中、您可以删除 board.c 并将 board.h、CC2640R2_LAUNCHXL.h、CC2640R2_LAUNCHXL.c、 CC2640R2_LAUNCHXL_Fxns.c 复制粘贴到 startup 文件夹中。

    -kel

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

    谢谢你、Kel、这是一个非常详细的回答、我将尝试一下。  我想确认、在正确加载简单外设应用之前、您是否必须在 code composer 中刷写 BLE 堆栈库 prj?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="397270" URL"~/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1038592/cc2640r2f-initial-hardware-bringup/3841400 #3841400"]必须刷写 BLE 栈库 prj

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

    Kel、按照您的建议对 board_initHook 进行注释后、我发现了 SimpleBLEPeripheral、非常感谢。  但是、我在尝试连接时遇到错误:"询问外设的超时"。  这可能是由于射频前端设置不正确造成的?  前端设置只是通过将  LAUNCHXL.h 文件中的定义更改为 CC2650EM_4XS 来完成、对吧?  我的板使用5x5 CC2640R2FRHBR、因此要确保将其设置为4XS 是正确的选项吗?

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

    您好、Morgan、

    您需要根据射频配置设置该定义。 您似乎正在尝试执行单端射频内部偏置。 此定义不可用。 但是、根据我在论坛中阅读的内容 、CC2650EM_4XS define 也应该起作用。 回顾一下您的单端 射频内部偏置电路似乎是错误的。 但是、我不是射频电路的专家。 TI 工程师最好发表评论。

    -kel

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

    Kel、它是射频内部偏置的单端产品、我相信4XS 可以满足这一要求。  我只是想确认、该定义仅影响射频前端配置。  我最初发布的 RF 电路是内部偏置电路、右侧添加了 PI 网络以进行调优。  此设计已获得 TI 工程师的批准和调优。   很抱歉、我发布了错误的原理图、如下所示:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="397270" URL"~/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1038592/cc2640r2f-initial-hardware-bringup/3848686 #3848686"]我只想确认该定义仅影响射频前端配置

    是的。

    在使用单端射频内部偏置的其中一个项目中、我创建了一个定制定义。 我将检查我的代码文件并返回给您。

    -kel

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

    您好、Morgan、

    在 ble_user_config.h 上、我添加了用于定义 CC2650EM_4IS 的代码行。

    #if defined( CC26XX )
    
    #if defined( CC2650EM_7ID )
    
      #define RF_FE_MODE_AND_BIAS           ( RF_FE_DIFFERENTIAL |                 \
                                              RF_FE_INT_BIAS)
    
    #elif defined( CC2650EM_5XD ) || defined( CC2650EM_4XD ) || defined( CC2650M5A )
    
      #define RF_FE_MODE_AND_BIAS           ( RF_FE_DIFFERENTIAL |                 \
                                              RF_FE_EXT_BIAS)
    
    #elif defined( CC2650EM_4XS )
    
      #define RF_FE_MODE_AND_BIAS           ( RF_FE_SINGLE_ENDED_RFP |             \
                                              RF_FE_EXT_BIAS )
    
    #elif defined( CC2640R2EM_CXS )
    
      #define RF_FE_MODE_AND_BIAS           ( RF_FE_SINGLE_ENDED_RFN |             \
                                              RF_FE_EXT_BIAS )
    #elif defined( CC2650EM_4IS )
      #define RF_FE_MODE_AND_BIAS           ( RF_FE_SINGLE_ENDED_RFP |              \
                                              RF_FE_INT_BIAS )
    #else // unknown device package
    
      #error "***BLE USER CONFIG BUILD ERROR*** Unknown package type!"
    
    #endif // <board>

    在 CC2640R2_LAUNCHXL.h 上、我设置定义  CC2650EM_4IS

    /*
     *  ============================================================================
     *  RF Front End and Bias configuration symbols for TI reference designs and
     *  kits. This symbol sets the RF Front End configuration in ble_user_config.h
     *  and selects the appropriate PA table in ble_user_config.c.
     *  Other configurations can be used by editing these files.
     *
     *  Define only one symbol:
     *  CC2650EM_7ID    - Differential RF and internal biasing
                          (default for CC2640R2 LaunchPad)
     *  CC2650EM_5XD    – Differential RF and external biasing
     *  CC2650EM_4XS    – Single-ended RF on RF-P and external biasing
     *  CC2640R2DK_CXS  - WCSP: Single-ended RF on RF-N and external biasing
     *                    (Note that the WCSP is only tested and characterized for
     *                     single ended configuration, and it has a WCSP-specific
     *                     PA table)
     *
     *  Note: CC2650EM_xxx reference designs apply to all CC26xx devices.
     *  ==========================================================================
     */
    
    #define CC2650EM_4IS

    如果您设置了此定义错误、则会遇到射频问题。 我通过实验对此进行了测试。

    我不记得 CC2650EM_4XS define 是否也适用于单端射频内部偏置。

    -kel

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

    因此我进行了这些更改(从我已经读取的4XS 和4IS 都应该起作用)、但在尝试连接到外设时、我仍然收到"超时询问外设"。  

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

    您好、Morgan、

    我看到没有使用32kHz 晶体。 您需要修改代码以便使用内部32kHz RC 振荡器、或者您已经这么做了吗?

    -kel

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

    是的、默认情况下、在简单外设应用以及简单广播设备中已经完成了这项工作。  该器件正在显示并显示看起来是实心 RSSI 的内容、但当我尝试连接到 Launchpad 上的设备时、我会得到该超时错误。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="397270" URL"~/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1038592/cc2640r2f-initial-hardware-bringup/3849541 #3849541"]是一个默认情况下已在简单外设应用和简单广播设备中完成的操作。

    否、默认情况下不会执行此操作。 该示例程序可与具有外部32kHz 晶体的 Launchpad 配合使用。

    总之、以下是过程:

    1. 设置预定义符号 USE_RCOSC。
    2. 在应用文件夹中、右键单击 rcosc_calibration.c、然后取消选中 Exclude from Build。
    3. 在"Startup (启动)"文件夹中、右键单击 ccfg_app_ble.c 并选中"Exclude from Build (从编译中排除)"。
    4. 在"Startup (启动)"文件夹中、右键单击 ccfg_app_ble_rcosc.c、然后取消选中"Exclude from Build (从编译中排除)"。
    5. Rebuild-all

    -kel

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

    Kel、谢谢! 就是这样。  很抱歉、我在某些 TI 文档中看到已经为 RCOSC 设置了外设和广播设备应用。  无论如何、我现在可以连接到外设、感谢您的所有帮助!

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

    Kel、我切换为尝试使 simple_broadcaster 正常工作、由于某种原因、现在我无法将任何 BLE 应用加载到我的定制板上。  即使具有上述设置的 simple_peripheral 也不再执行任何操作、LightBlue 中的器件列表中甚至不会弹出该外设。  有什么想法导致了这种情况? 是否有可能使器件出现故障? 我已经尝试使用闪存编程器2擦除、但仍然无法将任何可擦除的应用程序加载到我的板上。

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

    您好、Morgan、

    要进行确认、您无法将任何图像刷写到您的板上? 如果您将电路板连接到 SmartRF Studio 或闪存编程器2、软件是否会识别它? 您是否收到任何错误消息? 如果是、您可以共享这些消息吗?  硬件或接线是否有任何变化?

    此致、

    1月

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

    您好、Morgan、

    上述步骤应该起作用。 现在、问题可能出在 IOS LightBlue 应用端。 在智能手机上关闭并打开蓝牙、然后重试。

    -kel