




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
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)對(duì)協(xié)議棧進(jìn)行管理
根據(jù)不同的應(yīng)用,可以分為消息管理任務(wù)同步時(shí)間管理中斷管理任務(wù)管理內(nèi)存管理電源管理非易失存儲(chǔ)管理OSAL的應(yīng)用編程接口一些API函數(shù)及主要功能函數(shù)名稱功能描述voidosal_nv_init()初始化FLASH存儲(chǔ)器uint8osal_init_system()初始化操作系統(tǒng)voidosal_mem_init()初始化內(nèi)存分配系統(tǒng)voidosalTimerInit()初始化定時(shí)器voidosalInitTasks()初始化系統(tǒng)任務(wù)voidosal_start_system()進(jìn)入操作系統(tǒng)voidosal_run_system()運(yùn)行操作系統(tǒng)voidosalTimeUpdate()操作系統(tǒng)時(shí)間更新voidHal_ProcessPoll()硬件層檢查OSAL的應(yīng)用編程接口*
2.編程接口函數(shù)介紹無線組網(wǎng)技術(shù)OSAL的應(yīng)用編程接口消息管理
負(fù)責(zé)消息緩存分配、釋放、接收、發(fā)送等uint8*osal_msg_allocate(uint16len)申請(qǐng)消息緩存區(qū),該函數(shù)調(diào)用void*osal_mem_alloc(uint16size)函數(shù)實(shí)現(xiàn),從堆中申請(qǐng)存儲(chǔ)空間
uint8osal_msg_deallocate(uint8*msg_ptr)接收到消息的任務(wù)處理完成后釋放消息緩存空間
uint8osal_msg_send(uint8destination_task,uint8*msg_ptr)發(fā)送消息到指定任務(wù),將消息放入隊(duì)列,并把任務(wù)的相應(yīng)事件標(biāo)志置位
uint8*osal_msg_receive(uint8task_id)消息接收,在任務(wù)處理完消息后,必修釋放消息的存儲(chǔ)空間。該函數(shù)查找消息隊(duì)列,如果消息隊(duì)列中有多個(gè)發(fā)送給該任務(wù)的消息,保持事件標(biāo)志位
osal_event_hdr_t*osal_msg_find(uint8task_id,uint8event)尋找消息:發(fā)送給具有某個(gè)事件的任務(wù)的消息OSAL的應(yīng)用編程接口任務(wù)同步
負(fù)責(zé)任務(wù)間的時(shí)間同步,允許一個(gè)任務(wù)等待一個(gè)事件的發(fā)生uint8osal_set_event(uint8task_id,uint16event_flag)設(shè)置任務(wù)的事件標(biāo)志。event_flag為16位,只有一個(gè)系統(tǒng)事件SYS_EVENT_MSG,其余的事件都是用戶定義的事件。OSAL的應(yīng)用編程接口時(shí)間管理
允許內(nèi)部任務(wù)以及應(yīng)用層任務(wù)使用定時(shí)器,函數(shù)提供了啟動(dòng)和停止定時(shí)器的功能,定時(shí)器最小增量為1毫秒。uint8osal_start_timerEx(uint8taskID,uint16event_id,uint16timeout_value)為某個(gè)任務(wù)啟動(dòng)一個(gè)定時(shí)器,taskID為任務(wù)ID,event_id為用戶指定的事件標(biāo)志位,timeout_value為超時(shí)時(shí)間,以ms為單位
uint8osal_start_reload_timer(uint8taskID,uint16event_id,uint16timeout_value)啟動(dòng)定時(shí)器,與上一個(gè)函數(shù)不同的是該函數(shù)設(shè)置的定時(shí)器超時(shí)后被重新裝載
uint8osal_stop_timerEx(uint8task_id,uint16event_id)停止一個(gè)已經(jīng)開始的定時(shí)器
uint32osal_GetSystemClock(void)獲取系統(tǒng)時(shí)間,返回值以ms為單位OSAL的應(yīng)用編程接口中斷管理
負(fù)責(zé)外部中斷的開啟和停止uint8osal_int_enable(uint8interrupt_id)允許某個(gè)中斷
uint8osal_int_disable(uint8interrupt_id)禁止某個(gè)中斷OSAL的應(yīng)用編程接口任務(wù)管理
負(fù)責(zé)對(duì)OSAL的任務(wù)進(jìn)行管理osal_init_system()該函數(shù)初始化OSAL系統(tǒng)。該函數(shù)必須在啟動(dòng)任何一個(gè)OSAL函數(shù)之前被調(diào)用
osal_start_system()這個(gè)函數(shù)是系統(tǒng)任務(wù)的主循環(huán)函數(shù),在循環(huán)里面將遍歷所有的任務(wù)事件,為觸發(fā)事件的任務(wù)調(diào)用任務(wù)事件處理函數(shù)。如果一個(gè)特定任務(wù)有事件發(fā)送,那么該函數(shù)就將調(diào)用該任務(wù)的事件處理函數(shù)。當(dāng)事件處理完之后,將返回主循環(huán)。繼續(xù)查找其他的任務(wù)事件。如果沒有事件,函數(shù)將把處理器轉(zhuǎn)到睡眠模式OSAL的應(yīng)用編程接口內(nèi)存管理
負(fù)責(zé)對(duì)內(nèi)存進(jìn)行管理
osal_mem_alloc()內(nèi)存分配函數(shù),如果成功則返回一個(gè)緩沖區(qū)的指針osal_mem_free()釋放已分配的內(nèi)存來重新使用。只有當(dāng)內(nèi)存已使用osal_mem_alloc()分配過才可以工作OSAL的應(yīng)用編程接口電源管理
負(fù)責(zé)對(duì)電源進(jìn)行管理voidosal_pwrmgr_init(void)初始化電源管理模塊的變量,被osal_init_system()調(diào)用
voidosal_pwrmgr_powerconserve(void)使系統(tǒng)進(jìn)入節(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)用編程接口非易失性存儲(chǔ)器管理
非易失性存儲(chǔ)器(Non-VolatileMemory:NV)的操作耗時(shí)費(fèi)電,并且將暫時(shí)關(guān)閉中斷,最好在收發(fā)器關(guān)閉的時(shí)候調(diào)用這些函數(shù)
uint8osal_nv_item_init(uint16id,uint16len,void*buf)初始化一個(gè)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等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 增資協(xié)議之解除協(xié)議書
- 資質(zhì)過戶協(xié)議書
- 民事協(xié)議書調(diào)解協(xié)議書
- 肉羊養(yǎng)殖協(xié)議書
- 豆類供貨協(xié)議書
- 村委會(huì)土地分配協(xié)議書
- 板材廠轉(zhuǎn)讓設(shè)備協(xié)議書
- 生產(chǎn)線轉(zhuǎn)讓合同協(xié)議書
- 組團(tuán)購房協(xié)議書
- 退換產(chǎn)品協(xié)議書
- 幼兒園大班科學(xué)《痕跡》
- 靜脈用藥安全輸注藥護(hù)專家指引
- DB61T1755-2023放心消費(fèi)示范創(chuàng)建認(rèn)定與管理規(guī)范
- 企業(yè)借款申請(qǐng)書
- 乙醇管施工方案
- 項(xiàng)目七 信息素養(yǎng)與社會(huì)責(zé)任
- 電氣施工安全技術(shù)交底記錄范本
- 說課稿【全國(guó)一等獎(jiǎng)】
- 急性扁桃體炎臨床診療指南
- 第七講 社會(huì)主義現(xiàn)代化建設(shè)的教育科技人才戰(zhàn)略PPT習(xí)概論2023優(yōu)化版教學(xué)課件
- 室間質(zhì)評(píng)記錄表
評(píng)論
0/150
提交評(píng)論