計步器提供的特性有兩個
特徵值名稱 current_pedometer_measurement
uuid 0xfea1
許可權 read;indicate和notify二選一,也可都支援
是否必選 必選
說明 實時計步資訊,包括:步數,距離,卡路里
特徵值名稱
target
uuid
0xfea2
許可權read;write;indicate
是否必選
可選說明
運動目標
ble_gatts_char_handles_t write_char_handle;
ble_gatts_char_handles_t indicate_char_handle;
ble_gatts_char_handles_t notify_char_handle;
ble_gatts_char_handles_t read_char_handle;
ble_gatts_char_handles_t measurement_char_handle;
ble_gatts_char_handles_t target_char_handle;
特性current_pedometer_measure(簡稱measure)中的read\notify(這裡使用了notify特性)共用measurement_char_handle控制代碼。例如,measure特性中傳送資料時使用的是measurement_char_handle控制代碼:
hvx_params.handle = p_wcs->measurement_char_handle.value_handle;
hvx_params.p_data = data;
hvx_params.p_len = &chunk_len;
hvx_params.type = ble_gatt_hvx_notification;
err_code = sd_ble_gatts_hvx(p_wcs->conn_handle, &hvx_params);
在傳送資料前首先確認measurement_char_handle通道是否已經開啟,需要使用sd_ble_gatts_value_get介面,介面被封裝後再on_write中呼叫。target的通道也要做類似操作。
特性target中的read\write\indicate共用了target_chat_handle控制代碼。target中傳送資料使用target_char_handle:
hvx_params.handle = p_wcs->target_char_handle.value_handle;
hvx_params.p_data = data;
hvx_params.p_len = &chunk_len;
hvx_params.type = ble_gatt_hvx_indication;
err_code = sd_ble_gatts_hvx(p_wcs->conn_handle, &hvx_params);
target接收資料時也同樣使用target_char_hanlde控制代碼,如下:
else if(p_evt_write->handle == m_we_chat_service.target_char_handle.value_handle)
這部分**也是在on_write中實現。
資料組織過程中的問題:airsync的計步器特性定義了乙個uint24_t型別的資料,其實是乙個uint32_t型別的資料,但是直接t_htonl進行資料轉換時傳送過去的資料出現異常,因此採用了將乙個uint24_t型別的資料放入乙個3個成員的uint8_t陣列中。低位資料放在陣列前,高位資料放在陣列後。
以藍芽開發的視覺解讀微信Airsync協議
2.藍芽外設身份註冊 3.藍芽廣播 4.藍芽通訊 藍芽連線之後,自然是資料通訊的需求。對藍芽ble來說,資料通訊都是通過訪問某個characteristics來實現的。而characteristics需要支援以下場景 1.廣播 1 宣告自己的serviceuuid是0xfee7。2 在自定義廠商資料...
微信服務號 微信支付開發
統一下單。訂單查詢 退款等發起支付,須要統一下單的prepay id sortedmapparameters new treemap parameters.put mch id configutil.mch id parameters.put nonce str paycommonutil.crea...
微信計步器怎麼不計步 輕度脂肪肝該怎麼治療調理
近幾年,脂肪肝已不再是 中年油膩 的專屬。據上海 北京等地區的流行病學調查顯示 普通 b 超診斷脂肪肝的患病率 10 年期間從 15 增加到 31 以上。然而,也許正是因為過於常見,當體檢提示脂肪肝時很多人便習以為常,認為脂肪肝是乙個症狀不明顯疾病,對身體沒有太大的影響,繼續當前的生活方式。殊不知,...