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.

[参考译文] CC2640:simple_peripheral_oad_onchip

Guru**** 2538950 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1223744/cc2640-simple_peripheral_oad_onchip

器件型号:CC2640

大家好。 如何将 GAPRole_StartDiscovery (DEFAULT_DISCOVERY_MODE、DEFAULT_DISCOVERY_ACTIVE_SCAN、DEFAULT_DISCOVERY_WHITY_LIST)添加到 simple_peripheral_OAD_onchip.c 中?

在 simple_peripheral_oad_onchip.c 中、我们添加了:
GAP_SetParamValue (TGAP_GEN_DISC_SCAN、DEFAULT_SCAN_DURATION);
GAP_SetParamValue (TGAP_LIM_DISK_SCAN、DEFAULT_SCAN_DURATION);
GAP_SetParamValue (TGAP_FILTER_ADV_REPORTS、false);
GAPRole_SetParameter (GAPROLE_MAX_SCAN_RES、sizeof (uint8_t)、&scanRes);
GAPRole_StartDiscovery (DEFAULT_DISCOVERY_MODE、DEFAULT_DISCOVERY_ACTIVE_SCAN、DEFAULT_DISCOVERY_WHITY_LIST);

在静态 uint8_t SimplePeripheral_processStackMsg (iCall_HDR * pMsg)中

...
Case GAP_MSG_EVENT:
role_processRoleEvent ((gapMultiRoleEvent_t *) pMsg);//角色事件处理函数
中断;
...

在 peripheral.c 中、我们添加了:
bStatus_t GAPRole_StartDiscovery (uint8_t mode、uint8_t activeScan、uint8_t 白名单)

GapDevDiscREQ_t 参数;
params.taskID = iCall_getLocalMsgEntityId (ICALL_SERVICE_CLASS_BLE_MSG、self实体);
params.mode =模式;
params.activeScan = activeScan;
params.whitelist =白名单;

返回 GAP_DeviceDiscoveryRequest (&params);
}

静态空 gapRole_processStackMsg (iCall_HDR * pMsg)

交换机(pMsg->event)

Case GAP_MSG_EVENT:
gapRole_processGAPMsg ((gapEventHdr_t *) pMsg);//扫描广告软件包时请勿在此处获取
中断;
...

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

    BUILD_CONFIG.OPT 显示了-DHOST_CONFIG=PERIPHERAL_CFG+Observer_CFG
    在 peripheral.c 中添加了 gapRole_profileRole = GAP_PROFILE_peripheral |
    GAP_PROFILE_Observer;

    现在广播数据包到达中的 peripheral.c
    静态空 gapRole_processStackMsg (iCall_HDR * pMsg)

    交换机(pMsg->event)

    GAP_MSG_EVENT 情况:
    gapRole_processGAPMsg ((gapEventHdr_t *) pMsg);//广播处理
    封装中
    中断;
    ...

    但在 simple_peripheral_oad_onchip.c 中、它们不会出现
    静态 uint8_t SimplePeripheral_processStackMsg (iCall_HDR * pMsg)

    ...
    GAP_MSG_EVENT 情况:
    role_processRoleEvent ((gapMultiRoleEvent_t *) pMsg);//未在此处获取
    中断;
    ...

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

    尊敬的 Alex:  

    感谢您联系我们、您能否指定您使用的是低频堆栈还是 ble5堆栈以及 SDK 版本。

    此致、

    Rogelio

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

    大家好。  
    BLE
    simplelink_cc2640r2_sdk_5_10_00_02

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

    有人遇到过这个问题吗?

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

    尊敬的 Alex:  

    您能进一步解释一下如何将  GAPRole_StartDiscovery () API 添加到 simple_peripheral 示例中。 当前 GAPRole_StartDiscovery()仅适用于多角色示例。 为了在 simple_peripheral 示例中使用该 API、您需要包含定义了该 API 的头文件。 它看起来也只是 gap.h 文件中 GAP_DeviceDiscoveryRequest 的包装器。

    参数如下所示

    dev.ti.com/.../group___g_a_p.html

    此致、

    Rogelio