请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:LAUNCHXL-CC2650 Thread 中讨论的其他器件:CC2650
您好!
我们将观测器与 CC2650 Launchpad 和具有 CC2650 5XD 的广播设备结合使用
广播设备以1秒广播间隔广播每个广播。
观测 器在每个 GAP_DEVICE_DISCOVERY 事件之后使用重复的 GAPObserverRole_StartDiscovery 持续扫描、但观测器不会每次捕获广播。有时会丢失广播。
default_scan_duration 为2000ms
我们喜欢在 Observer 上进行每一个广告宣传。 但它不会在我们的电路板中发生
这是我们的逻辑
案例 GAP_DEVICE_INFO_EVENT:
{
PIN_setOutputValue (hGpioPin、Board_RLED、Board_LED_ON);
PIN_setOutputValue (hGpioPin、Board_RLED、Board_LED_OFF);
uint8 * advdata;
SimpleBLEObserver addDeviceInfo (pEvent->deviceInfo.addr、
pEvent->deviceInfo.addrType);
advdata = pEvent->deviceInfo.pEvtData;
memcpy (AES1key、pEvent->deviceInfo.addr、6);
if (pEvent->deviceInfo.eventType!= 0x04)
{
找到= true;
memcpy (newbuffer、advdata、31);
}
否则
{
}
GAPObserverRole_CancelDiscovery();
// Util_startClock (wkupClock);
}
中断;
案例 GAP_DEVICE_DISCOVERING_EVENT:
{
//发现完成
扫描=错误;
//复制结果
scanRes = pEvent->disccmpl.numDevs;
memcpy (devList、pEvent->discCmpl.pDevList、
(sizeof (gapDevRec_t)* pEvent->discCmpl.numDevs));
PIN_setOutputValue (hGpioPin、Board_GLED、Board_LED_OFF);
如果(scanRes >0)
{
找到= true;
//Util_startClock (wkupClock);
}
Util_startClock (wkupClock);
// device_discovery();
}
中断;
Util_constructClock (wkupClock、objserverHandler、
1、0、false、WKUP_EVENT);
if (事件和 WKUP_EVENT) { if (found=true) { PIN_setOutputValue (hGpioPin、Relay1、0); PIN_setOutputValue (hGpioPin、Relay2、 0); //delay_ms (观测器_re_time*100); delay_ms (100); PIN_setOutputValue (hGpioPin、Relay1、 1); PIN_setOutputValue (hGpioPin、Relay2、1); } 找到=false; memset (newbuffer、0、31); device_discovery(); Events &=~WKUP_EVENT; }
谢谢、
Santhanaraynan