CH579的HeartRate例程中,什么時候自動發(fā)送NOTIFY

手機運行WCH_BLE2U助手,與Name是“Heart Rate Sensor”,有下面的一個服務(wù),但進入并使能“接收通知數(shù)據(jù)”,無數(shù)據(jù)顯示。點擊“讀取”能返回“14”。

請問,這個NOTIFY的屬性,為什么不自動返回數(shù)據(jù)?如何才能實現(xiàn)自動返回數(shù)據(jù)?

1111.jpg


熱門產(chǎn)品 : USB3.0 HUB控制器:CH634

你換BLE調(diào)試助手app試試,你這個app可能是沒有打開從機的通知使能。


WCH_BLE2U助手是可以收到其他例程的notify,應(yīng)該和手機APP沒有關(guān)系。我沒有看懂例程,它發(fā)送notify,是不是有什么前提條件。
謝謝,再幫忙看看。

剛剛實驗了10多分鐘,只收到1次notify。





bStatus_t HeartRate_MeasNotify(uint16_t connHandle, attHandleValueNoti_t *pNoti)
{
??? uint16_t value = GATTServApp_ReadCharCfg(connHandle, heartRateMeasClientCharCfg);

??? // If notifications enabled
??? if(value & GATT_CLIENT_CFG_NOTIFY)
??? {
??????? // Set the handle
??????? pNoti->handle = heartRateAttrTbl[HEARTRATE_MEAS_VALUE_POS].handle;

??????? // Send the notification
??????? return GATT_Notification(connHandle, pNoti, FALSE);
??? }

??? return bleIncorrectMode;
}

你把這個判斷屏蔽掉,就可以不用管主機是否開啟了通知



收到,謝謝。問題的截圖是Battery level,按你的思路,也是可行的。

其實是想知道為什么進行判斷if(level< battLevle)

? level = battMeasure();


? // If level has gone down

? if (level < battLevel)

? {

? ? // Update level

? ? battLevel = level;


? ? // Send a notification

? ? battNotifyLevel();

? }



只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频