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:修改简单的 BLE 观测器以捕获 Eddystone 信标数据和 RSSI 值

Guru**** 2609955 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1285901/cc2640r2f-modifying-simple-ble-observer-to-capture-eddystone-beacon-data-and-rssi-values

器件型号:CC2640R2F

我使用 simple_observer 的示例代码创建一个程序。 但是、无需任何器件即可获取扫描数据和 RSSI 值。
我必须通过 eddystone 信标的 InstanceID、命名空间和 RSSI 值通过观测器进行通知。

我如何修改它、以便在观测器示例中读取该值
如果有好方法、请建议

 

静态空 SimpleObserver_processRoleEvent (gapObserverRoleEvent_t * pEvent)
{
switch ( pEvent->gap.opcode )
{
案例 GAP_DEVICE_INIT_DONE_EVENT:
{
Display_print0 (dispHandle、1、0、Util_convertBdAddr2Str (pEvent->initDone.devAddr));)
display_print0 (dispHandle、2、0、"initialized");

//提示用户开始扫描。
Display_print0 (dispHandle、5、0、"Discover ->");

中断;

案例 GAP_DEVICE_INFO_EVENT:
{
SimpleObserver_addDeviceInfo (pEvent->deviceInfo.addr、
pEvent->deviceInfo.addrType);

中断;

案例 GAP_DEVICE_DISCOVERY_EVENT:
{
if (pEvent->GAP.HDR.STATUS ==成功)
{
//发现完成。
扫描= false;

if (ENABLE_UNLIMITE_SCAN_RES == false)
{
//复制结果。
scanRes = pEvent->discCmpl.numDevs;
memcpy (devList、pEvent->discCmpl.pDevList、
(sizeof (gapDevRec_t)* pEvent->discCmpl.numDevs);

Display_Print1 (dispHandle、2、0、"Devices found %d"、scanRes);

如果( scanRes >0)
{
Display_print0 (dispHandle、3、0、"<- to Select");

//初始化扫描索引。
scanIdx =-1;

//提示用户可以在此状态下重新执行扫描。
Display_print0 (dispHandle、5、0、"Discover ->");

否则
{
if (pEvent->GAP.HDR.STATUS == GAP_LLERROR_INVALID_PARAMETERS)
{
display_print0 (dispHandle、3、0、"invalid parameters");

否则为(pEvent->GAP.HDR.STATUS == GAP_LLERROR_COMMAND_DISAVLED)
{
display_print0 (dispHandle、3、0、"命令被禁止");

否则
{
display_print0 (dispHandle、3、0、"error");



中断;

默认值:
中断;

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

    您好!

    感谢您与我们联系。

    广播器和数据的 RSSI 通过 GAP_DEVICE_INFO_EVENT 事件传递给应用。 收到此类事件时、 会将 gapDeviceInfoEvent_t 结构传递给应用。

    我希望这将有所帮助、

    此致、