




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
OSAL的應(yīng)用編程接口無線組網(wǎng)技術(shù)*CONTENTSPAGE目錄頁1編程接口函數(shù)分類編程接口函數(shù)介紹2目錄無線組網(wǎng)技術(shù)*
1.編程接口函數(shù)分類OSAL的應(yīng)用編程接口無線組網(wǎng)技術(shù)編程接口函數(shù)分類OSAL提供了API(ApplicationProgrammingInterface)對協(xié)議棧進行管理
根據(jù)不同的應(yīng)用,可以分為消息管理任務(wù)同步時間管理中斷管理任務(wù)管理內(nèi)存管理電源管理非易失存儲管理OSAL的應(yīng)用編程接口一些API函數(shù)及主要功能函數(shù)名稱功能描述voidosal_nv_init()初始化FLASH存儲器uint8osal_init_system()初始化操作系統(tǒng)voidosal_mem_init()初始化內(nèi)存分配系統(tǒng)voidosalTimerInit()初始化定時器voidosalInitTasks()初始化系統(tǒng)任務(wù)voidosal_start_system()進入操作系統(tǒng)voidosal_run_system()運行操作系統(tǒng)voidosalTimeUpdate()操作系統(tǒng)時間更新voidHal_ProcessPoll()硬件層檢查OSAL的應(yīng)用編程接口*
2.編程接口函數(shù)介紹無線組網(wǎng)技術(shù)OSAL的應(yīng)用編程接口消息管理
負責消息緩存分配、釋放、接收、發(fā)送等uint8*osal_msg_allocate(uint16len)申請消息緩存區(qū),該函數(shù)調(diào)用void*osal_mem_alloc(uint16size)函數(shù)實現(xiàn),從堆中申請存儲空間
uint8osal_msg_deallocate(uint8*msg_ptr)接收到消息的任務(wù)處理完成后釋放消息緩存空間
uint8osal_msg_send(uint8destination_task,uint8*msg_ptr)發(fā)送消息到指定任務(wù),將消息放入隊列,并把任務(wù)的相應(yīng)事件標志置位
uint8*osal_msg_receive(uint8task_id)消息接收,在任務(wù)處理完消息后,必修釋放消息的存儲空間。該函數(shù)查找消息隊列,如果消息隊列中有多個發(fā)送給該任務(wù)的消息,保持事件標志位
osal_event_hdr_t*osal_msg_find(uint8task_id,uint8event)尋找消息:發(fā)送給具有某個事件的任務(wù)的消息OSAL的應(yīng)用編程接口任務(wù)同步
負責任務(wù)間的時間同步,允許一個任務(wù)等待一個事件的發(fā)生uint8osal_set_event(uint8task_id,uint16event_flag)設(shè)置任務(wù)的事件標志。event_flag為16位,只有一個系統(tǒng)事件SYS_EVENT_MSG,其余的事件都是用戶定義的事件。OSAL的應(yīng)用編程接口時間管理
允許內(nèi)部任務(wù)以及應(yīng)用層任務(wù)使用定時器,函數(shù)提供了啟動和停止定時器的功能,定時器最小增量為1毫秒。uint8osal_start_timerEx(uint8taskID,uint16event_id,uint16timeout_value)為某個任務(wù)啟動一個定時器,taskID為任務(wù)ID,event_id為用戶指定的事件標志位,timeout_value為超時時間,以ms為單位
uint8osal_start_reload_timer(uint8taskID,uint16event_id,uint16timeout_value)啟動定時器,與上一個函數(shù)不同的是該函數(shù)設(shè)置的定時器超時后被重新裝載
uint8osal_stop_timerEx(uint8task_id,uint16event_id)停止一個已經(jīng)開始的定時器
uint32osal_GetSystemClock(void)獲取系統(tǒng)時間,返回值以ms為單位OSAL的應(yīng)用編程接口中斷管理
負責外部中斷的開啟和停止uint8osal_int_enable(uint8interrupt_id)允許某個中斷
uint8osal_int_disable(uint8interrupt_id)禁止某個中斷OSAL的應(yīng)用編程接口任務(wù)管理
負責對OSAL的任務(wù)進行管理osal_init_system()該函數(shù)初始化OSAL系統(tǒng)。該函數(shù)必須在啟動任何一個OSAL函數(shù)之前被調(diào)用
osal_start_system()這個函數(shù)是系統(tǒng)任務(wù)的主循環(huán)函數(shù),在循環(huán)里面將遍歷所有的任務(wù)事件,為觸發(fā)事件的任務(wù)調(diào)用任務(wù)事件處理函數(shù)。如果一個特定任務(wù)有事件發(fā)送,那么該函數(shù)就將調(diào)用該任務(wù)的事件處理函數(shù)。當事件處理完之后,將返回主循環(huán)。繼續(xù)查找其他的任務(wù)事件。如果沒有事件,函數(shù)將把處理器轉(zhuǎn)到睡眠模式OSAL的應(yīng)用編程接口內(nèi)存管理
負責對內(nèi)存進行管理
osal_mem_alloc()內(nèi)存分配函數(shù),如果成功則返回一個緩沖區(qū)的指針osal_mem_free()釋放已分配的內(nèi)存來重新使用。只有當內(nèi)存已使用osal_mem_alloc()分配過才可以工作OSAL的應(yīng)用編程接口電源管理
負責對電源進行管理voidosal_pwrmgr_init(void)初始化電源管理模塊的變量,被osal_init_system()調(diào)用
voidosal_pwrmgr_powerconserve(void)使系統(tǒng)進入節(jié)電模式,已經(jīng)在系統(tǒng)的主循環(huán)中被調(diào)用,不能調(diào)用
voidosal_pwrmgr_device(uint8pwrmgr_device)全局設(shè)備電源的開關(guān)
uint8osal_pwrmgr_task_state(uint8task_id,uint8state)控制任務(wù)節(jié)電狀態(tài)OSAL的應(yīng)用編程接口非易失性存儲器管理
非易失性存儲器(Non-VolatileMemory:NV)的操作耗時費電,并且將暫時關(guān)閉中斷,最好在收發(fā)器關(guān)閉的時候調(diào)用這些函數(shù)
uint8osal_nv_item_init(uint16id,uint16len,void*buf)初始化一個NVitemuint8osal_nv_read(uint16id,uint16offset,uint16len,void*buf)讀取NVuint8osal_nv_write(uint16id,uint16offset,uint16len,void*buf)寫入NV
osal_
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)村建房土地合同范本
- 供油月結(jié)合同范本
- 公務(wù)勞動分工合同范本
- 2025年海洋臺站儀器項目規(guī)劃申請報告
- 2025年門系統(tǒng)配件項目規(guī)劃申請報告模稿
- 2025年高質(zhì)量轎車用深沖鋼板項目提案報告模范
- 2025年H酸項目提案報告模范
- 2024湖南懷化會同縣供水有限責任公司招聘9人筆試參考題庫附帶答案詳解
- 2024湖北恩施州宣恩縣園投人力資源服務(wù)有限公司招聘2人筆試參考題庫附帶答案詳解
- 集中注意力 課件- 高中心理健康
- 兒科學教學課件腎病綜合征
- 成都市建筑消防設(shè)施及電氣防火檢測規(guī)范DB510100T
- 2023高中物理步步高大一輪 第四章 專題強化七 圓周運動的臨界問題
- delta-臺達dvp eh系列plc使用說明書ehs
- Q∕GDW 12152-2021 輸變電工程建設(shè)施工安全風險管理規(guī)程
- 集團權(quán)屬公司管理制度
- 五金沖壓件作業(yè)指導書
- 食品工業(yè)企業(yè)誠信管理體系建立及實施
- 汽車吊車吊裝施工方案
- 《植物保護學通論》PPT課件.ppt
評論
0/150
提交評論