




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、ble學習應用筆記1osal 學習筆記1-osal.c * fn osal_strlen 計算字符串的長度。字符串必須空結尾。 * fn osal_memcpy 一般內存復制 * fn osal_revmemcpy /一般的顛倒內存復制。從資源緩存的最后開始,通過使用資源地址的指針移動len字節的,然后指針自減。 * fn osal_memdup /分配一個緩存(和osal_mem_alloc()),并復制這個資源緩存到剛分配好的控件. * fn osal_memcmp 一般內存比較 * fn osal_memset 設置內存緩存值 * fn osal_rand 產生隨機數 * fn osal
2、_msg_allocate 動態分配一個osal消息緩存 * fn osal_msg_deallocate 釋放一個osal消息緩存(接收任務調用) * fn osal_msg_send 為某個任務發送一個osal消息 * fn osal_msg_receive 檢索接收命令消息。 * fn osal_msg_find 發現 在一個osal消息匹配任務id和事件參數。 * fn osal_msg_extract * /從osal隊列中間 提取和移除 一個osal消息 * fn osal_set_event 為一個任務設置一個 osal 事件 * fn osal_clear_event 清除一個
3、任務的事件標志。 * fn osal_init_system osal 初始化,必須在主函數中被調用 * fn osal_start_system 開始運行osal 主循環 * fn osal_run_system 現至少一個等待事件的第一個任務。2-osal_bufmgr.c * fn osal_bm_alloc 分配器函數的實現 * fn osal_bm_free 取消分配器函數 的實現 * fn osal_bm_adjust_header 調整header * fn osal_bm_adjust_tail 調整tail3-osal_cbtimer.c * fn osal_cbtimeri
4、nit 初始化函數 * fn osal_cbtimerprocessevent/回調 定時器 任務事件處理函數 * fn osal_cbtimerstart/當定時器到期,注冊調用函數將被調用。 * fn osal_cbtimerupdate更新一個已經啟動的 消息定時器 * fn osal_cbtimerstop/停止一個已經啟動的定時器。4-osal_clockble.c * fn osaltimeupdate 更新 osal時間和定時器, * fn osalclockupdate /用 運行ms 更新osal時間表, * fn osal_setclock/設置新時間。 * fn osal
5、_getclock /得到當前時間。 * fn osal_convertutctime 轉換時間格式 * fn osal_convertutcsecs轉換時間格式5-osal_memory.c * fn osal_mem_init內存管理初始化 * fn osal_mem_kick /任務初始化 * fn osal_mem_alloc執行 osal 動態內存分配函數 * fn osal_mem_free /執行osal動態內存 釋放函數6-osal_pwrmgr.c * fn osal_pwrmgr_init /初始化 電源管理系統 * fn osal_pwrmgr_task_state/每一
6、個任務調用函數,來陳述是否這個任務要保存電源 * fn osal_pwrmgr_powerconserve /當沒有活動安排 這個函數從主循環被調用,不應該從別的地方被調用。7-osal_snv.c8-osal_timers.c * fn osaltimerinit 初始化osal定時器系統 * fn osaladdtimer增加一個定時器到定時器列表 * fn osalfindtimer 在定時器列表中發現一個定時器 * fn osaldeletetimer 從一個列表中刪除一個定時器 * fn osal_start_timerex /調用開始一個定時器在n ms內 * fn osal_st
7、op_timerex /停止一個已經啟動的定時器。 * fn osaltimerupdate更新 定時器結構 * fn osal_adjust_timers 更新已經過去的定時器結構 * fn osal_getsystemclock 讀取本地系統時鐘=以上是一個ble應用里的osal所用到的函數名字,及其功能,方便以后查詢。=app文件夾中(bloodpressure.c vs simpleblebroadcaster.c)ble學習應用筆記21.安裝 d:ti資料ble-stack 安裝目錄文件夾下c:texas instrumentsble-cc254x-1.2.1projectsble
8、下有應用列子程序。2.安裝iar軟件 安裝目錄d:ti資料iar embedded workbench3.安裝 smartrf flash programmer軟件smartrf packet sniffer smartrf studio 7 安裝目錄d:ti資料ti software4.閱讀文件夾ble-cc254x-1.2.1下的例子程序。5.app應用層 hal硬件驅動層 osal操作系統層 profiles配置文件層:ble協議棧的 結構和配置 在這一層設置。 gap 提供關于連接的服務 設置smp 安全管理 att 屬性結構 設置gatt 使用屬性協議發現,服務或其他關聯屬性之間分組
9、信息ble學習應用筆記3ble學習應用筆記31.搭建硬件:按接口連接好硬件:usb-小口usb-ccdebugger-dbg_connector-設備1或設備2(usb的插頭小塊向內/插電池的插頭小塊向外)2.搭建之前安裝軟件:smartrf studio和smartrf flash programmer.3.設備連接好后,電腦提示要求安裝驅動:選擇從指定位置安裝:c:program filestexas instrumentssmartrf toolsdriverscebalwin_32bit_x86 (默認位置)插入設備后還需安裝一個驅動:c:texas instrumentsble-cc
10、254x-1.2.1accessoriesdrivers。之后,重啟ccdebugger,綠燈亮后,即可正常調試。4.打開smartrf studio 軟件。“2.4ghz”下選擇“cc2540”5.下載程序:smartrf flash programmer,選擇“soc”,選擇所下載文件*.hex所在文件夾,“actions”中選擇“erase,program and verify”,下載點擊“perform actions”ble學習應用筆記41,連接好硬件,安裝好驅動,usb dongle小 是主設備。2.查看連接的com口。3.使用btool軟件:打開btool,位置在c:texas
11、instrumentsble-cc254x-1.2.1projectsbtool。選擇com口,其余默認(115200,cts/rts,none,one,8),然后ok。4.下載程序:flash programmer或者iarble學習應用筆記5osal中斷操作:1、 允許中斷uint8 osal_int_enable( uint8 interrupt_id )- interrupt_id:中斷標示符2、 禁止中斷uint8 osal_int_disable( uint8 interrupt_id )- interrupt_id:中斷標示符3、暫停中斷 hal_enter_critical_s
12、ection(x)4、重新啟用中斷 hal_exit_critical_section(x) osal內存操作:1、分配內存 void *osal_mem_alloc( uint16 size ) - size:分配緩沖區的大小2、釋放內存 void osal_mem_free( void *ptr ) - ptr:指向釋放的緩沖區osal消息傳遞:1、分配信息緩沖區 byte * osal_msg_allocate( uint16 len ) - len:信息的長度2、發送信息 byte osal_msg_send( byte destination_task, byte *msg_ptr
13、) - destination_task:接收信息任務的標示符 - msg_ptr:消息指針3、接收信息 byte *osal_msg_receive( byte task_id ) - task_id:接收信息的任務id4、釋放消息緩沖區 byte osal_msg_deallocate( byte *msg_ptr ) - msg_ptr:消息指針osal任務管理:1、任務初始化 byte osal_init_system( void ) -要創建的任務列表2、任務開始 void osal_start_system( void ) -系統任務的主循環函數3、獲取活動任務id byte os
14、al_self( void ) -中斷服務子程序中調用將會發生錯誤4、事件句柄的函數原型 (*ptaskeventhandlerfn)( unsigned char task_id, unsigned short event )osal定時器:1、啟動定時器 byte osal_start_timerex( byte taskid, uint16 event_id, uint16 timeout_value ) - taskid:定時器終止時事件任務的任務id - event_id:用戶定義的事件,時間終止時通知這個事件 -定時器設置前的時間量2、停止定時器 byte osal_stop_timerex( byte task_id, uint16
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年貢菜項目可行性研究報告
- 2025-2030中國淋浴房行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國沙灘褲行業市場深度調研及發展趨勢與投資價值評估研究報告
- 2025-2030中國水利與港口工程建筑行業市場發展分析及經營模式與投融資研究報告
- 2025-2030中國智能儲能系統行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國無氧高導熱率銅行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國提取行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國指甲護理工具行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國護膚品行業市場深度調研及競爭格局與投資前景研究報告
- 2025-2030中國微藻生物燃料行業市場深度調研及前景趨勢與投資研究報告
- 林則徐課件完整版
- 電力鐵塔基礎施工方案資料
- 人教版高中英語選擇性必修第三冊課件Unit 5 Poems
- 國家移民管理局直屬事業單位公開招考24名工作人員【共500題含答案解析】模擬檢測試卷
- 小白兔拔蘿卜課件
- 房樹人心理畫繪畫分析(附圖)-課件
- 2023年河南推拿職業學院單招考試面試模擬試題及答案解析
- 現代生物技術與人類健康課件
- 籃球裁判法(裁判手勢)課件
- 辭職報告辭職信
- 2021年新湘教版九年級數學中考總復習教案
評論
0/150
提交評論