ZigBee繫結細節

2021-09-08 17:17:05 字數 2123 閱讀 5857

zigbee中的繫結由aps層來管理,除了繫結表管理外,aps層還有組表管理、快速位址查詢等服務功能。應用層不能直接呼叫aps層中的資料服務來傳輸資料,只能通過af層封裝的ad_datarequest函式來實現資料傳輸。

看了許多相關的文件,裡面說及到,繫結服務在兩個不同節點的簡單描述符中,定義相同的簇id,且方向相反(乙個在輸出簇,乙個在輸入簇),才能成功建立繫結。

aps繫結表的大小受限於靜態ram的大小,由f8wconfig.cfg中的引數來指定。

預設配置中,有四個繫結表條目,每個條目中,可以有4個簇id。

要配置使用繫結表,需要定義reflector巨集(在f8wconfig.cfg中配)

對乙個表的操作,無非就是增刪改查。

1

. 增加乙個繫結表條目

函式原型:

bindingentry_t *bindaddentry( byte

srcepint,

zaddrtype_t *dstaddr, byte

dstepint,

byte numclusterids, uint16 *clusterids )

srcepint:源端點

dstaddr:目的位址

dstepint:目的端點

numclusterids:簇列表數目

clusterids:簇列表

成功返回指向新加入繫結表的指標,失敗返回null

2.移除乙個繫結表條目

函式原型:

byte bindremoveentry( bindingentry_t *pbind )

pbind:指向想要刪除的繫結表指標

成功返回true

3.移除繫結條目中的簇命令

函式原型:

byte bindremoveclusteridfromlist( bindingentry_t *entry, uint16 clusterid )

entry:繫結表的入口

clusterid:待刪除的簇id

成功返回trur,至少有乙個對於的簇id。如果沒有的話,返回false

4.增加繫結表條目中的簇

函式原型:

byte bindaddclusteridtolist( bindingentry_t *entry, uint16 clusterid )

entry:繫結表入口

clusterid:需要新增的簇id

成功返回true,失敗返回false

5.找到乙個已經存在的源端點到目的位址的繫結記錄

函式型別:

bindingentry_t *bindfindexisting( byte

srcepint,

zaddrtype_t *dstaddr, byte

dstepint )

srcepint:源端點

使用flash時,需要設定編譯選項nv_restore[f8wconfig.cfg],儲存繫結表,建議使用bindwritenv函式。

組用來將一系列節點集合到乙個單位址實體的方式,向這個位址傳送資料請求,請求能夠達到組中的每個節點。

第乙個結構體為組結構標書,第二個結構體為組鍊錶描述。

組操作函式有

將乙個端點加入乙個組:extern zstatus_t aps_addgroup( uint8 endpoint, aps_group_t *group );

使用方法:

初始化組資訊:

將端點加入乙個組:

從組表中根據端點和組id找到組索引

根據組id,移除其中的端點

aps提供函式用來快速位址轉換,在ieee和網路位址之間做轉換。

uint8 apsme_lookupextaddr( uint16 nwkaddr, uint8* extaddr ); 基於網路位址獲得ieee 位址

uint8 apsme_lookupnwkaddr( uint8* extaddr, uint16* nwkaddr ); 基於ieee位址獲得nwk位址

Zigbee學習系列 細節

由於我是從普通的51微控制器做過來的,對於cc2530微控制器還是不是特別熟悉,而且由於兩者相似,所以對於一些細節問題並不會特別在意,這就導致遇到的一些問題使得我感覺這款晶元甚至這zigbee協議特別難 伺候 然後把自己所遇到的這些問題彙總一下,希望對大家有所幫助!問題1 當我使用p1口的外部中斷的...

再談ZigBee中的繫結機制

這裡主要再討論一下繫結的機制,繫結是 zigbee 中應該是比較重要的乙個部分。前面的幾篇文章也對繫結有了具體的分析,主要分析了兩種繫結方式,介紹了繫結的流程,源 方面。這裡主要是理清整個繫結在組網中的概念。繫結是和 endpoint 緊密聯絡在一起的,其中很多是自己通過看資料,自己的一些理解,當中...

zigbee協議 zigbee技術介紹

zigbee作為用於個人網路的短距離無線通訊協議,已變得越來越知名。zigbee是一種適用於短距離無線通訊的低成本,低功耗,低速的新技術,可以嵌入各種電子裝置中。該技術主要設計用於低速通訊網路。它的最大特點是低功耗和聯網功能,尤其是具有路由功能的聯網功能。從理論上講,zigbee覆蓋的通訊領域可以無...