1. 程式人生 > >【Zigbee精華教程03】Z-Stack協議棧中OSAL層常用API函式

【Zigbee精華教程03】Z-Stack協議棧中OSAL層常用API函式

【1】osal_msg_allocate():分配訊息快取。

    uint8 * osal_msg_allocate( uint16 len );

【2】osal_msg_deallocate():回收訊息快取。

    uint8 osal_msg_deallocate( uint8 *msg_ptr );

【3】osal_msg_send():傳送訊息。

    uint8 osal_msg_send( uint8 destination_task, uint8 *msg_ptr );

【4】osal_msg_receive():接收訊息。

    uint8 *osal_msg_receive( uint8 task_id );

【5】osal_msg_find():查詢訊息。

    osal_event_hdr_t *osal_msg_find(uint8 task_id, uint8 event);

【6】osal_set_event():設定事件。

    uint8 osal_set_event( uint8 task_id, uint16 event_flag );

【7】osal_clear_event():清除事件。

    uint8 osal_clear_event( uint8 task_id, uint16 event_flag );

【8】osal_start_timerEx()

:開啟定時器計時。

    uint8 osal_start_timerEx( uint8 task_id, uint16 event_id, uint16 timeout_value );

【9】osal_stop_timerEx():停止定時器計時。

    uint8 osal_stop_timerEx( uint8 task_id, uint16 event_id );

【10】osal_start_reload_timer():自動載入時間點和超時值。

    uint8 osal_start_reload_timer( uint8 taskID, uint16 event_id, uint16 timeout_value );

【11】osal_int_enable():中斷使能。

    uint8 osal_int_enable( uint8 interrupt_id );

【12】osal_int_disable():中斷禁止。

    uint8 osal_int_disable( uint8 interrupt_id );

【13】osal_init_system():系統初始化。

    uint8 osal_init_system( void );

【14】osal_start_system():開啟OSAL系統。

    void osal_start_system( void );

【15】osal_run_system():執行OSAL系統。

    void osal_run_system( void );

【16】osal_nv_item_init():初始化NV。

    uint8 osal_nv_item_init( uint16 id, uint16 len, void *buf );

【17】osal_nv_read():讀取NV。

    uint8 osal_nv_read( uint16 id, uint16 offset, uint16 len, void *buf );

【18】osal_nv_write():寫入NV。

    uint8 osal_nv_write( uint16 id, uint16 offset, uint16 len, void *buf );

【19】osal_nv_delete():刪除NV。

    uint8 osal_nv_delete( uint16 id, uint16 len );

【20】osalInitTasks():初始化系統任務。

     void osalInitTasks( void );

【廣東職業技術學院  歐浩源 <小蜜蜂老師>  [email protected]

相關推薦

Zigbee精華教程03Z-Stack協議OSAL常用API函式

【1】osal_msg_allocate():分配訊息快取。     uint8 * osal_msg_allocate( uint16 len ); 【2】osal_msg_deallocate():回收訊息快取。     uint8 osal_msg_dealloc

ZIGBEE-Z-stack協議

Z-stack--一個小作業系統。使用者通過 API 函式就可以輕易用 ZigBee。 協議棧主函式 ----Zmain.C /****************************************************************

Z-Stack協議學習筆記---修改PANID與通道選擇

PANID設定     一個zigbee網路的標誌就是PANID,PANID是一個16位變數,可以定義65535個不同PANID號的網路。我們可以使用PANID在相同的通道內區分不同的zigbee網路。PANID一般由coordinator決定,router與endDevic

spark 深入學習 03Spark RDD的蠻荒世界

解釋 不難 特性 bsp resid 易懂 優化 方式 序列 RDD真的是一個很晦澀的詞匯,他就是伯克利大學的博士們在論文中提出的一個概念,很抽象,很難懂;但是這是spark的核心概念,因此有必要spark rdd的知識點,用最簡單、淺顯易懂的詞匯描述。不想用學術話的語言來

CC2530入門教程-05CC2530的串行接口原理與應用

max blog 模式 指數 open != tab bre 就會 第5課 CC2530的串行接口原理與應用 廣東職業技術學院 歐浩源 一、並行通信與串行通信 微控制器與外設之間的數據通信,根據連線結構和傳送方式的不同,可以分為兩種:並行通信和串行通信。

OpenCV入門教程之一 OpenCV 2.4.8 +VS2010的開發環境配置

ctx 不能 tail 內存錯誤 mage lease 知識庫 我們 錯誤 目錄(?)[-] 因為讀研期間的研究方向是圖像處理所以淺墨這段時間閉門研究了很多OpenCV和圖像處理相關的知識與內容眼看自己積累到一定的程度了於是決定開始開設這個OpenCV系列專欄總結自己

面試算法題Java Stack 類的使用

obj har turn cte charat arch 默認 子類 size Java Stack 類棧是Vector的一個子類,它實現了一個標準的後進先出的棧。堆棧只定義了默認構造函數,用來創建一個空棧。 常用方法1 boolean empty() 測試堆棧是否為空

小問題集03-linux網路命令列-持續更新

1 網口ip配置及啟用【命令列】 sudo ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up 2 網口配置【配置檔案】 Linux裡面有兩套管理網路連線的方案: (1)/etc/network/interfac

Django2x 學習筆記 03建立path路由url(建立新路由URL,pathinfo模式多個傳參,GET模式多個傳參,返回json)

注意:Django2.1.3 下環境,Python3.7,基於最新的語言和框架的特性。 #1 已新建一個Django專案工程——mysite(假設:F = /django/mysite/ 目錄) django-admin startproject mysite #2&nbs

OpenCV入門教程之一 安裝OpenCV:OpenCV 3.0、OpenCV 2.4.8、OpenCV 2.4.9 +VS 開發環境配置

毛星雲,網路ID「淺墨」,90後,熱愛遊戲開發、遊戲引擎、計算機圖形、實時渲染等技術,就職於騰訊互娛。 微軟最有價值專家 著作《Windows遊戲程式設計之從零開始》、《OpenCV3程式設計入門》 碩士就讀於南京航空航天大學航天學院(2013級碩士研究生),已於2016年三月畢業。本科

solr基礎教程之一Solr相關知識點串講

Solr是Apache Lucene的一個子專案。Lucene為全文搜尋功能提供了完備的API,但它只作為一個API庫存在,而不能直接用於搜尋。因此,Solr基於Lucene構建了一個完整的搜尋引擎,它可以為搜尋引擎新增文件,對文件內容進行分析,併為使用者提供搜尋功能,在此基礎上提供了一個擴充套件功能,如

深度學習基礎-03決策樹演算法-熵如何計算舉例

目錄 0 機器學習中分類和預測演算法的評估: 1 什麼是決策樹/判定樹decision tree?  2 決策樹“買電腦”實際例子 3.1熵(entropy)概念: 4 決策樹歸納演算法(ID3) 4.1遞迴演算法: 5 其他演算法 0 機器學習中分類和

Lucene4.8教程之一使用Lucene4.8進行索引及搜尋的基本操作

在Lucene對文字進行處理的過程中,可以大致分為三大部分: 1、索引檔案:提取文件內容並分析,生成索引 2、搜尋內容:搜尋索引內容,根據搜尋關鍵字得出搜尋結果 3、分析內容:對搜尋詞彙進行分析,生成Quey物件。 注:事實上,除了最基本的完全匹配搜尋以外,其它都需要在

菜鳥教程筆記Python3 集合

集合set是一個無序不重複元素的序列。 可以使用{}或者set()函式建立集合。 要點:建立空集合只能使用set(),如果用{}會被認為是建立了空字典。 不同時包含於a和b的元素用a^b表示 注意:字串直接作為set的引數輸入,會認為字串中的每個字元是一個元素。

OpenCV入門教程之一 安裝OpenCV:OpenCV 3.0、OpenCV 2.4.8、OpenCV 2.4.9 +VS 開發環境配置

本系列文章由出品,轉載請註明出處。  寫作當前博文時配套使用的OpenCV版本: 2.4.8、2.4.9、3.0 ( 2014年4月28更新OpenCV 2.4.9的配置。 2014年9月12更新OpenCV 3.0的配置 2014年9月12日本文第

STM32小案例 03 實現DHT11,BH1750,GP2Y與0.96寸OLED的動態顯示

現在可以用DHT11採集溫溼度,BH1750採集光照,GP2Y採集PM2.5,再把資訊傳送至OLED螢幕和串列埠. 開發流程與思路: 1. 配置DHT11的TLL引腳通訊,因為DHT11的韌體庫都封

WebGL連載教程H5開發3D引擎:TS專案建立和hello_world(新)

在上一篇,我們已經準備好了開發環境(如果你沒有,請返回檢視上一篇)。現在我們來學習一步一步建立一個基於vscode的ts專案工程。(typeScript)vscode和一般的ide區別在於,它不是直接在選單裡新建一個工程。以下內容非常非常的詳細,從無到有,多圖實操,跟著一起做

VBS指令碼教程1:寫一個說話的語音程式

程式碼很簡單,兩行即可,可以用來送女朋友~ 程式碼 set objTTS = createobject("sapi.spvoice") objTTS.speak "您好,第一個語音程式"

Android程式碼片段03獲取對話方塊輸入的內容

//​點選按鈕出現對話方塊,輸入內容,並將內容獲取在全域性變數中 case R.id.card: final EditText filename = new EditText(this); filename.setInputType(Ed

tensorflow入門教程資料集製作:使用TFRecords製作資料集並使用inceptionv3進行訓練

這篇文章中,我們將探討深度學習中最基本的問題,影象分類中的資料集以及標籤的製作;以及使用Inceptionv3網路對其進行訓練。PS:文末附博文配套程式碼以及資料集原圖的下載。先上一張最後的訓練結果圖:17flowers資料集17flowers資料集包含有17種不同的花的圖片