chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【EsDA應(yīng)用】藍(lán)牙客戶端節(jié)點詳解

ZLG致遠(yuǎn)電子 ? 2023-05-12 10:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

藍(lán)牙作為一種近距離無線通信技術(shù),被廣泛使用在汽車,智能家居和醫(yī)療等領(lǐng)域中。本文主要介紹如何通過EsDA開發(fā)套件,快速實現(xiàn)藍(lán)牙客戶端的訂閱以及讀寫等操作。82e0f6f4-ef9f-11ed-ba01-dac502259ad0.jpg 簡介

藍(lán)牙是一種近距離無線通信技術(shù),可以免費運行在2.4G頻段,所以通常廣泛使用在物聯(lián)網(wǎng),移動終端和智能家居等行業(yè)中。我們EsDA大家族里面自然也有對藍(lán)牙功能的實現(xiàn),且只需要很短的時間就可實現(xiàn)藍(lán)牙通信,功能好用簡單又便捷。

本文主要基于MPC-ZC1的開發(fā)板,以及可將節(jié)點進(jìn)行拖拽連接的圖形化設(shè)計工具AWFlow Designer,著重對UIS8910DM平臺的板載藍(lán)牙的配套節(jié)點以及示例進(jìn)行講解。藍(lán)牙節(jié)點一共分為配置節(jié)點類型ble_server,ble_client2個,客戶端節(jié)點類型ble_client_in,ble_client_out,ble_client_subscribe3個以及服務(wù)端節(jié)點類型ble_server_adv,ble_server_service2個;因本文篇幅的原因所以主要圍繞著客戶端節(jié)點的使用,以下進(jìn)行詳細(xì)介紹。

82e0f6f4-ef9f-11ed-ba01-dac502259ad0.jpg ?節(jié)點簡介1. 配置節(jié)點1.1 ble_client節(jié)點1.1.1 屬性8302886e-ef9f-11ed-ba01-dac502259ad0.png

掃描類型:啟動掃描時需要的掃描類型配置:

值為0表示被動掃描(僅僅接收廣播,不會發(fā)送掃描請求);

值為1時表示主動掃描(發(fā)送掃描請求數(shù)據(jù)給廣播的服務(wù)端,服務(wù)端收到后會返回掃描響應(yīng)數(shù)據(jù))。

  • 掃描窗口的時間:掃描窗口時間的配置;
  • 掃描間隔的時間:掃描間隔時間的配置;

注意:掃描窗口時間必須小于掃描間隔時間。

掃描過濾策略:掃描過濾策略的配置:

1表示只處理地址在白名單中的數(shù)據(jù)包,以及發(fā)給自己的可連接定向廣播;

2表示處理所有非定向廣播和可解析私有地址以及發(fā)給自己的可連接定向廣播;

3表示處理地址在白名單中和可解析私有地址以及發(fā)給自己的可連接定向廣播。

  • 目標(biāo)服務(wù)端設(shè)備名稱:目標(biāo)服務(wù)端設(shè)備本地名稱;

SMP配對模式與參數(shù):

SMP配對模式

參數(shù)

安全等級排名

SECURE_CONNECTION_PASSKEY

KEYBOARD_DISP

最高

SECURE_CONNECTION_JUSTWORK

NOIN_NOOUT

次之

LEGACY_PASSKEY

KEYBOARD_DISP

第三

LEGACY_JUSTWORK

NOIN_NOOUT

最低

  • 掃描超時時間:表示持續(xù)掃描,直到與指定服務(wù)端建立連接。如果值不為0,則開啟掃描后使能掃描定時器,超時后如果仍未與指定服務(wù)端建立連接,則掃描停止。單位ms

配置節(jié)點無輸入輸出

2. 客戶端節(jié)點

2.1 ble_client_in節(jié)點

2.1.1 屬性

8317ceea-ef9f-11ed-ba01-dac502259ad0.png

  • BLE客戶端配置:綁定一個ble_client藍(lán)牙客戶端的配置節(jié)點;
  • 服務(wù)UUID:需要讀的服務(wù)UUID。若服務(wù)UUID為自定義的16字節(jié)如0000 ff 11 0000 1000 800000 80 5f 9b 34 fb,則傳入第3、4兩個字節(jié)0xff11;

特征值UUID:需要讀的特征值UUID。若特征值UUID為自定義的16字節(jié)如0000 ff 01 0000 1000 800000 80 5f 9b 34 fb,則傳入第3、4兩個字節(jié)0xff01。

2.1.2 輸入

  • payload:可以使用“timer”節(jié)點作為前級節(jié)點,定時讀取數(shù)據(jù)。

2.1.3 輸出

  • characteristic_uuid:將讀取到的指定特征值的UUID輸出;
  • payload:將讀取到的指定特征值的數(shù)組指針輸出。類型為uint8_t類型的指針;
  • payloadLength:將讀取到的指定特征值的數(shù)據(jù)長度輸出;
  • desc_num:將讀取到的指定特征值的描述符個數(shù)輸出。如果存在多個描述符,則存在多個名稱為“desc_uuid_%d”、“desc_value_%d”和“desc_value_length_%d”的屬性,其中%d指代當(dāng)前是第幾個描述符;
  • 舉例:該特征存在2個描述符,則存在以下名稱的屬性:desc_uuid_0,desc_value_0,desc_value_length_0和desc_uuid_1,desc_value_1,desc_value_length_1,desc_uuid_0;
  • desc_uuid_0:第一個描述符的UUID,若為第二個描述符的UUID也可表示為desc_uuid_1。以此類推;
  • desc_value_0:第一個描述符的值指針,若為第二個描述符的值也可表示為desc_value_1。以此類推;
  • desc_value_length_0:第一個描述符的值的數(shù)據(jù)長度,若為第二個描述符的值的數(shù)據(jù)長度也可表示為desc_value_length_1。以此類推。

2.2 ble_client_out節(jié)點

2.2.1 屬性832bdb2e-ef9f-11ed-ba01-dac502259ad0.png

  • BLE客戶端配置:綁定一個ble_client藍(lán)牙客戶端的配置節(jié)點;
  • 服務(wù)UUID:需要讀的服務(wù)UUID。若服務(wù)UUID為自定義的16字節(jié)如0000 ff 11 0000 1000 800000 80 5f 9b 34 fb,則傳入第3、4兩個字節(jié)0xff11;
  • 特征值UUID:需要讀的特征值UUID。若特征值UUID為自定義的16字節(jié)如0000 ff 01 0000 1000 800000 80 5f 9b 34 fb,則傳入第3、4兩個字節(jié)0xff01。

2.2.2 輸入

payload:需要寫入的數(shù)據(jù),字符串類型??梢允褂胒script節(jié)點對payload進(jìn)行設(shè)置

payloadLength:需要寫入的數(shù)據(jù)長度。

sink類型節(jié)點沒有輸出功能

2.3 ble_client_subscribe節(jié)點

2.3.1 屬性

834144d2-ef9f-11ed-ba01-dac502259ad0.png

  • BLE客戶端配置:綁定一個ble_client藍(lán)牙客戶端的配置節(jié)點;
  • 服務(wù)UUID:需要讀的服務(wù)UUID。若服務(wù)UUID為自定義的16字節(jié)如0000 ff 11 0000 1000 800000 80 5f 9b 34 fb,則傳入第3、4兩個字節(jié)0xff11;
  • 特征值UUID:需要讀的特征值UUID。若特征值UUID為自定義的16字節(jié)如0000 ff 01 0000 1000 800000 80 5f 9b 34 fb,則傳入第3、4兩個字節(jié)0xff01;
  • 訂閱模式:值為0表示禁能通知和指示,值為1表示使能通知,值為2表示使能指示。

pump類型節(jié)點無輸入數(shù)據(jù)

2.3.2 輸出

  • payload:訂閱的特征值的數(shù)據(jù)內(nèi)容;
  • payloadLength:訂閱的特征值的數(shù)據(jù)長度;
  • characteristic_uuid:訂閱的特征值的UUID。

82e0f6f4-ef9f-11ed-ba01-dac502259ad0.jpg ?示例講解1. 硬件準(zhǔn)備

如下圖所示,準(zhǔn)備一塊MPC-ZC1開發(fā)板,并按照下圖所示連接好硬件。用于下載流圖的USB Type-C口另外一端接到PC機上。

83680838-ef9f-11ed-ba01-dac502259ad0.png

2. 軟件準(zhǔn)備

目前MPC-ZC1開發(fā)板作為客戶端,對BLE調(diào)試寶(手機app)服務(wù)端(外圍模式)提供的服務(wù)進(jìn)行訂閱、讀寫等操作,依下圖所示可根據(jù)用戶需求隨意設(shè)置服務(wù)UUID、特征值UUID、特征數(shù)據(jù)以及通知數(shù)據(jù),最后點擊開啟廣播,服務(wù)端BLE調(diào)試寶的配置就設(shè)置完成了。

83c71a1c-ef9f-11ed-ba01-dac502259ad0.png

隨之修改手機本地藍(lán)牙(服務(wù)端設(shè)備)名稱,后期此名稱用來配置ble_client節(jié)點的屬性參數(shù)目標(biāo)服務(wù)端設(shè)備名稱。

83e8033a-ef9f-11ed-ba01-dac502259ad0.png

3. EsDA業(yè)務(wù)開發(fā)本示例主要是將MPC-ZC1開發(fā)板作為藍(lán)牙客戶端,對BLE調(diào)試寶(藍(lán)牙服務(wù)端)指定服務(wù)下指定的特征值數(shù)據(jù)進(jìn)行讀寫以及訂閱的操作,具體實現(xiàn)如下圖。本例程只對服務(wù)端提供的一個服務(wù)的特征值進(jìn)行了訂閱和讀寫操作,根據(jù)實際需求,可支持對多個指定服務(wù)下的指定特征值進(jìn)行讀寫和訂閱的操作。

83ff28d0-ef9f-11ed-ba01-dac502259ad0.png

3.1 添加節(jié)點并繪制流圖添加timer,ble_client_in,ble_client_out,ble_client_subscribe,fscript節(jié)點如下圖所示。

84125ea0-ef9f-11ed-ba01-dac502259ad0.png

3.2 配置節(jié)點

周期性的去讀取藍(lán)牙服務(wù)端指定服務(wù)下指定的特征值的特征數(shù)據(jù)。

雙擊ble_client_in節(jié)點的前驅(qū)timer節(jié)點,打開屬性面板設(shè)置定時周期(ms),MPC-ZC1開發(fā)板周期性的去讀取BLE調(diào)試寶指定服務(wù)下指定的特征值數(shù)據(jù)。修改完后點擊右上角的完成即可保存屬性配置。

8427bb06-ef9f-11ed-ba01-dac502259ad0.png

雙擊ble_client_in節(jié)點中的BLE客戶端配置,本屬性配置在一份流圖上只需要配置一次即可,后面ble_client_out以及ble_client_subscribe節(jié)點的屬性BLE客戶端配置都會鏈接到同一個ble_server,不需再次重復(fù)配置所以后面不再贅述。這里可以只修改屬性值:目標(biāo)服務(wù)端設(shè)備名稱,需注意的是此處的參數(shù)與服務(wù)端提供的信息需一致。修改完后點擊右上角的更新即可保存屬性配置。843ddb8e-ef9f-11ed-ba01-dac502259ad0.png雙擊ble_client_in節(jié)點,修改需要讀取指定的服務(wù)UUID和特征值UUID。修改完后點擊右上角的完成即可保存屬性配置。84505656-ef9f-11ed-ba01-dac502259ad0.png

雙擊ble_client_in節(jié)點的后繼fscript節(jié)點,主要內(nèi)容是對讀取的特征值UUID進(jìn)行輸出以及將服務(wù)端指定的服務(wù)UUID及特征值UUID下的特征內(nèi)容進(jìn)行輸出。

print("payloadLength is"+msg.payloadLength)print("characteristic_uuid is" + msg.characteristic_uuid);
rb = rbuffer_create(msg.payload, msg.payloadLength)print("length: "+ msg.payloadLength)
f = "recv ble server data is"for(var i=0; i1) { d = rbuffer_read_uint8(rb); f = join(",",f,d);}
msg.payload = fprint("data "+msg.payload)

周期性的去寫入藍(lán)牙服務(wù)端指定服務(wù)下指定的特征值的特征數(shù)據(jù)。

雙擊ble_client_out節(jié)點的前驅(qū)*2的timer節(jié)點,打開屬性面板設(shè)置定時周期(ms),MPC-ZC1開發(fā)板周期性的去寫入BLE調(diào)試寶指定服務(wù)下指定的特征值數(shù)據(jù)。修改完后點擊右上角的完成即可保存屬性配置。

84641fec-ef9f-11ed-ba01-dac502259ad0.png

因ble_client_out節(jié)點作為sink類型節(jié)點,所以fscript節(jié)點即為他的前驅(qū)節(jié)點。雙擊fscript,主要功能實現(xiàn)是設(shè)置ble_client_out節(jié)點的輸入數(shù)據(jù):payload(要寫入的數(shù)據(jù)),payloadLength(需要寫入的數(shù)據(jù)長度)。

msg.payload = "123456789"set(msg.payloadLength, u8("9"))

雙擊ble_client_out節(jié)點,配置需要寫入數(shù)據(jù)的服務(wù)UUID和特征值UUID。修改完后點擊右上角的完成即可保存屬性配置。84794b42-ef9f-11ed-ba01-dac502259ad0.png

對藍(lán)牙服務(wù)端指定服務(wù)下指定的特征值的訂閱數(shù)據(jù)進(jìn)行訂閱操作。

雙擊ble_client_subscribe節(jié)點,配置需要訂閱的服務(wù)UUID,特征值UUID以及訂閱模式。修改完后點擊右上角的完成即可保存屬性配置。848ad4b6-ef9f-11ed-ba01-dac502259ad0.png雙擊ble_client_subscribe的后繼節(jié)點fscript,主要功能是將接收到的訂閱數(shù)據(jù)進(jìn)行輸出打印。

rb = rbuffer_create(msg.payload, msg.payloadLength)print("length: "+ msg.payloadLength)
f = "recv subscribe data is"for(var i=0; i1) { d = rbuffer_read_uint8(rb); f = join(",",f,d);}
msg.payload = fprint("data "+msg.payload)

3.3 下載驗證MPC-ZC1開發(fā)板調(diào)試口打印信息如下:849d602c-ef9f-11ed-ba01-dac502259ad0.pngBLE調(diào)試寶操作日志顯示如下:84af63d0-ef9f-11ed-ba01-dac502259ad0.png由操作日志可以看到,MPC-ZC1和手機藍(lán)牙建立連接成功、MPC-ZC1讀取特征值,開啟通知、接收MPC-ZC1寫入新的特征值數(shù)據(jù)、接收通知。至此示例實驗已完成。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6267

    瀏覽量

    139251
  • 藍(lán)牙
    +關(guān)注

    關(guān)注

    116

    文章

    6174

    瀏覽量

    176815
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    ESDA5WY車規(guī)級單向ESD保護(hù)器件技術(shù)解析與應(yīng)用指南

    STMicroelectronics ESDA5WY車用雙路單向ESD保護(hù)是一款車用單向瞬態(tài)電壓抑制器 (TVS),設(shè)計用于惡劣環(huán)境。TVS可保護(hù)敏感電子產(chǎn)品免受因電氣過應(yīng)力 (EOS)、雷電浪涌和ESD造成的損壞或閂鎖,而不會
    的頭像 發(fā)表于 10-17 18:27 ?465次閱讀
    <b class='flag-5'>ESDA</b>5WY車規(guī)級單向<b class='flag-5'>ESD</b>保護(hù)器件技術(shù)解析與應(yīng)用指南

    libmodbus庫問題:TCP模式下客戶端超時斷開后無法再次重連怎么解決?

    情況1 :用libmodbus的TCP demo,發(fā)現(xiàn)用客戶端軟件連接收發(fā)如果超時后在啟動連接就無法連接上libmodbus服務(wù)器了,聲明:客戶端此時不會主動斷開連接。 情況2:客戶端用短連接
    發(fā)表于 10-14 08:17

    智能音箱藍(lán)牙與WiFi模塊的ESD防護(hù)方案

    在智能音箱的日常使用中,高度依賴無線連接功能,其中WiFi與藍(lán)牙模塊是其實現(xiàn)遠(yuǎn)程操控、語音交互及多設(shè)備聯(lián)動的基礎(chǔ)。而這類高頻通信模塊對靜電放電(ESD)極為敏感,ESD可能直接導(dǎo)致無線模塊失效,引發(fā)連接中斷、數(shù)據(jù)傳輸出錯等問題。
    的頭像 發(fā)表于 09-24 14:55 ?2458次閱讀
    智能音箱<b class='flag-5'>藍(lán)牙</b>與WiFi模塊的<b class='flag-5'>ESD</b>防護(hù)方案

    藍(lán)牙 v5.4 概述 (PAwR, EAD, ESL, LE Gatt)

    基于標(biāo)準(zhǔn)的 ESL 和其他應(yīng)用方法 藍(lán)牙 v5.4 的兩項主要改進(jìn)是帶響應(yīng)的周期性廣播(PAwR)和加密廣播數(shù)據(jù)。它們共同實現(xiàn)了在星型拓?fù)浣Y(jié)構(gòu)中與數(shù)千個功耗極低的終端節(jié)點進(jìn)行無連接、雙向、安全通信
    發(fā)表于 08-31 21:25

    Python modbus-tk如何獲得客戶端信息?

    Python modbus-tk如何獲得客戶端信息
    發(fā)表于 08-07 06:01

    藍(lán)牙無線通訊-藍(lán)牙5.4概述

    藍(lán)牙5.4 是藍(lán)牙技術(shù)聯(lián)盟( Bluetooth SIG )于2023年發(fā)布的藍(lán)牙核心規(guī)范版本,主要針對物聯(lián)網(wǎng)設(shè)備優(yōu)化通信能力、安全性和效率,支持與數(shù)千個低功耗終端節(jié)點進(jìn)行雙向通信.
    發(fā)表于 07-31 15:58

    新一代PLC控制軟件平臺EsDA-AWStudio

    在工業(yè)自動化和智能制造領(lǐng)域,高效的軟件平臺是提升開發(fā)效率和系統(tǒng)性能的關(guān)鍵。ZLG致遠(yuǎn)電子推出的EsDA-AWStudio平臺,憑借其強大的功能和靈活的設(shè)計,為工業(yè)控制和物聯(lián)網(wǎng)應(yīng)用提供了全新的解決方案
    的頭像 發(fā)表于 07-28 11:33 ?293次閱讀
    新一代PLC控制軟件平臺<b class='flag-5'>EsDA</b>-AWStudio

    什么是藍(lán)牙BLE5.4

    優(yōu)勢,重點是增強了通信能力、安全性和效率。這些改進(jìn)尤其適用于涉及大量設(shè)備的應(yīng)用,如零售、資產(chǎn)跟蹤和智慧家居環(huán)境。 主要優(yōu)勢包括: 與數(shù)千個終端節(jié)點進(jìn)行雙向通信 帶響應(yīng)的周期性廣播 (PAwR) 加密廣播
    發(fā)表于 07-21 14:56

    是否可以將客戶端控件與CYW920706WCDEVAL一起使用?

    是否可以將客戶端控件與CYW920706WCDEVAL一起使用? 我想用它來發(fā)現(xiàn)藍(lán)牙 BR/EDR,然后將其與其他設(shè)備配對。 有客戶端控制的下載鏈接或文檔嗎? 另外,你有 AIROC Connect
    發(fā)表于 07-04 07:50

    Modbus TCP連接多個客戶端解決方法-深圳市振鑫通信科技

    ZP-MBS008多主站模塊是實現(xiàn)Modbus-TCP連接多個客戶端或者服務(wù)器通訊設(shè)備
    的頭像 發(fā)表于 06-25 11:07 ?1030次閱讀
    Modbus TCP連接多個<b class='flag-5'>客戶端</b>解決方法-深圳市振鑫通信科技

    請問Phy DLE Max TX Octets 由客戶端還是服務(wù)器控制?

    Phy DLE Max TX Octets 由客戶端還是服務(wù)器控制?
    發(fā)表于 06-25 08:28

    MKW45B41Z客戶端無法從服務(wù)器獲取服務(wù)是為什么?

    。MKW45B41Z (自定義板) 充當(dāng)中央設(shè)備客戶端角色。MKW45 客戶端掃描外圍設(shè)備(NRF 連接)設(shè)備并連接到外圍設(shè)備(NRF 連接)設(shè)備。連接 MKW45(自定義板卡)后,客戶端無法從服務(wù)器端獲取服務(wù)(NRF 連接)
    發(fā)表于 03-28 07:40

    如何構(gòu)建MCP客戶端

    Anthropic開源了一套MCP協(xié)議,它為連接AI系統(tǒng)與數(shù)據(jù)源提供了一個通用的、開放的標(biāo)準(zhǔn),用單一協(xié)議取代了碎片化的集成方式。本文教你從零打造一個MCP客戶端
    的頭像 發(fā)表于 03-20 09:32 ?2016次閱讀
    如何構(gòu)建MCP<b class='flag-5'>客戶端</b>

    通過Skyvia Connect SQL終端節(jié)點訪問任何數(shù)據(jù)

    通過 Skyvia Connect SQL 終端節(jié)點訪問任何數(shù)據(jù) ? 通過 Skyvia Connect SQL 終端節(jié)點訪問任何數(shù)據(jù)ADO.NET 數(shù)據(jù)網(wǎng)關(guān) 使用 Skyvia Connect
    的頭像 發(fā)表于 01-02 09:31 ?546次閱讀
    通過Skyvia Connect SQL終<b class='flag-5'>端節(jié)點</b>訪問任何數(shù)據(jù)

    邁威通信工業(yè)無線客戶端:智能制造的高效連接新解法

    隨著智能制造的興起,企業(yè)越來越依賴自動化和數(shù)字化技術(shù)來提高生產(chǎn)效率和靈活性。工業(yè)無線客戶端作為連接各個設(shè)備和系統(tǒng)的橋梁,其重要性日益凸顯。通過工業(yè)無線客戶端,可以實現(xiàn)設(shè)備間的實時數(shù)據(jù)交換和遠(yuǎn)程監(jiān)控,從而進(jìn)一步提升生產(chǎn)過程的智能化水平。
    的頭像 發(fā)表于 11-22 16:10 ?702次閱讀
    邁威通信工業(yè)無線<b class='flag-5'>客戶端</b>:智能制造的高效連接新解法