BLE学习应用笔记整理

上传人:博****1 文档编号:459551184 上传时间:2023-01-22 格式:DOC 页数:6 大小:43KB
返回 下载 相关 举报
BLE学习应用笔记整理_第1页
第1页 / 共6页
BLE学习应用笔记整理_第2页
第2页 / 共6页
BLE学习应用笔记整理_第3页
第3页 / 共6页
BLE学习应用笔记整理_第4页
第4页 / 共6页
BLE学习应用笔记整理_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《BLE学习应用笔记整理》由会员分享,可在线阅读,更多相关《BLE学习应用笔记整理(6页珍藏版)》请在金锄头文库上搜索。

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 osal_self( void ) -中断服务子程

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号