ZigBee協議棧淺顯解讀(一)

2021-07-27 03:59:41 字數 1128 閱讀 5558

目前zigbee開發主要用的是ti的cc2530。cc2530內部整合看增強型的51所以對於只學過51的小白入門不成問題。

本篇文章我只會介紹zigbee的協議棧。

我們開啟zigbee協議棧後可以加看到這樣的介面

上面的各個層的基礎知識你們自己查去。

我們點開zmain.c 熟悉一下zigbee的協議棧的流程

main()函式主要就做兩件事

一是系統初始化。二是開始執行函式osal_start_system(),進入查詢式作業系統

int main( void )

在main()的函式中只有兩重要的函式需要留意。分別為

osal_init_system(); //初始化作業系統

osal_start_system(); //進入輪轉查詢式作業系統事件處理的死迴圈

首先我們來看看osal_init_system(); //初始化作業系統

uint8 osal_init_system( void )

在osal_init_system()的這個函式中 我們重點看的是

osalinittasks(); //初始化系統任務

我們進入osalinittasks();看看

void osalinittasks( void ) //任務的初始化

為什麼我們要給每一層分配任務id?

首先我們來看看zigbee的系統

zigbee的作業系統是輪轉查詢式的作業系統

下面是其流程圖

系統開始執行後,就開始不斷根據我們分配的taskid,從優先順序高的層的任務優先處理。

優先順序高的任務處理後,再次從新回到原點,重新查詢,從優先順序高的層的任務處理。如果優先順序高的任務不需要處理,查詢下一級的任務,如果任務沒有處理,開始處理任務。處理結束後,回到起點,重新從最高優先順序的層查詢。

zigbee協議棧 端點

端點的意義 從應用角度看,通訊的本質就是端點到端點的連線 例如,乙個帶開關元件的裝置與帶乙個或多個燈元件的遠端裝置進行通訊,目的是將這些燈點亮 端點的實現 端點之間的通訊是通過稱之為簇的資料結構實現的。這些簇是應用物件之間共享資訊所需的全部屬性的容器,在特殊應用中使用的簇在模板中有定義。所有端點都使...

ZigBee協議棧解析

zigbee技術是物聯網領域最常用的無線技術之一,如果我們要做基於zigbee技術的物聯網應用,最好對zigbee協議棧有乙個基本的了解。這篇文章對zigbee協議棧做乙個簡單明瞭的介紹。概述本文準備介紹的zigbee協議棧是zigbee2007,也是目前業界最常用的標準版本,對於zigbee協議棧...

ZigBee模組 zigbee協議棧網路管理

zigbee協議棧網路管理 一 補充基礎知識 每個cc2530晶元出廠時候都有乙個全球唯一的32位 mac位址,當裝置連入網路的時候,每個裝置都能獲得由協調器分配的 16位短位址,協調器預設位址 0x0000 很多時候網路就是通過短位址進行管理。二 實驗現象 路由器 裝置終端傳送自己定義的裝置號給協...