版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Project:SimpleBLEPeripheral1. 主机改写特征值后,从机的调用执行过程。1) .先是在simpleBLEPeripheral.c的SimpleBLEPeripheral_Init()调用下面的API进行初始化。2) .读写特征值回调函数的注册:(simpleGATTprofile.c)3) .参数simpleProfileCBs的定义为:4) .函数simpleProfile_WriteAttrCB调用回调函数的API。5) .结构体simpleProfile_APPCBs的赋值为:6) .在SimpleBLEPeripheral_Init()中进行赋值初始化,注册回
2、调函数:7) .参数simpleBLEPeripheral_SimpleProfileCBs赋值如下:8) .最后真正执行特征值被改变时,判断具体哪个特征值被改变,并对应执行应用编程。9) .Project:SimpleBELCentral2. 按键的执行过程。1) .main函数中进行key初始化。HalDriverInit()调用HalKeyInit()按键GPIO驱动初始化;InitBoard()调用HalKeyConfig()进行按键key配置。包含回调函数OnBoard_KeyCallback.2) .当按键有按下时,进入外部中断入口,发出HAL_KEY_EVENT事件.3) .OS
3、AL循环判断,进入HAL层,执行Hal_ProcessEvent()任务.然后调用检测按键函数HalKeyPoll().4) .函数HalKeyPoll()的详细内容,HalKeyPoll函数进行按键判断,分析哪个按键按下。然后会调用pHalKeyProcessFunction函数。pHalKeyProcessFunction函数即是OnBoard_KeyCallback函数,在InitBoard函数进行初始化时调用HalKeyConfig函数配置时有对pHalKeyProcessFunction变量进行赋值。5) .函数OnBoard_KeyCallback调用OnBoard_SendKey
4、s函数Send "Key Pressed" message to application。6) .变量registeredKeysTaskID在RegisterForKeys()函数中被赋值,而RegisterForKeys()在SimpleBLECentral_Init()中被调用。7) .执行函数osal_msg_send( registeredKeysTaskID, (uint8 *)msgPtr )之后,OSAL任务查询时会跳转到应用层APP:SimpleBLECentral_ProcessEvent函数。8) .函数simpleBLECentral_HandleK
5、eys就是应用层按键处理函数。9) .Project:SimpleBLEPeripheral3. 从机服务端发起广播的过程。1) .直接调用GAP层的API函数GAPRole_SetParameter( GAPROLE_ADVERT_ENABLED, sizeof( uint8 ), &initial_advertising_enable ),对应的参数很重要。2) .GAPRole_SetParameter在GAPROLE_ADVERT_ENABLED这个变量下会进行判断当前的状态进行调用对应的API。3) .OSAL循环查询任务时,进入到gapRole_TaskID对应的任务GAP
6、Role_ProcessEvent。在函数GAPRole_ProcessEvent里对对应的START_ADVERTISING_EVT进行相关的广播设置。最后调用GAP_MakeDiscoverable()函数API进行广播。4) .机构体pGapRoles_AppCGs在应用层任务中进行初始化。5) .变量simpleBLEPeripheral_PeripheralCBs的初始化.6) .7) .Project:SimpleBELCentral4. 开机自动扫描并发起连接的执行过程。1) .在应用层任务初始化SimpleBLECentral_Init时,发出启动设备事件。2) .在OSAL中
7、循环查询应用层任务并执行,判断events为START_DEVICE_EVT时执行发起扫描任务。3) .函数API:GAPCentralRole_StartDiscovery()具体设置扫描参数和调用如下:4) .连接connect:是在simpleBLECentralEventCB函数中判断是否为扫描事件,并判断被发现设备的数目。5) .发起连接函数:6) .跟踪simpleBLECentralEventCB()函数的被调用:<1>.定义simpleBLERoleCB变量时使用simpleBLECentralEventCB进行赋值。<2>.simpleBLERoleCB作为参数传递给函数GAPCentralRole_StartDevice().<3>.跟踪pGapCentra
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026 宿舍逃生条件评估内部评估报告
- 2026 检测方法验证测算内部测算报告
- 2026 保密考核未纳入绩效复盘内部复盘报告
- 2025年中国复合表面膜行业市场前景预测及投资价值评估分析报告
- 2026年电汽车基础题库及答案
- 《导游业务》期末考试试题与答案
- 合规风险识别:义务清单、控制映射、证据缺口三步法(义务提取、控制映射、缺口分析)
- 2026无导游证领队全真冲刺试题及答案
- 2024年通信工程师考试模拟题库:高、中级(通信专业实务交换技术)能力提高训练题及答案
- 2026年砌筑工职业技能鉴定试卷(砌筑施工验收)
- 护理安全隐患及防范措施
- 国有六大行《EPI(行测)》考试1000题
- EIA-481-1 中文版(8-12mm 贴片元器件穿孔载带包装标准 2025 版)
- 2026融资面试题目及答案详解
- 土建工程专业分包合同
- 2025年共享工厂模式:中小微企业集群化生产资源整合
- 2026年中国人民保险集团招聘笔试综合能力测试题库
- SLT 336-2025水土保持工程全套表格
- 2026受限空间作业安全培训课件
- 2026年安全工程高级工程师专业实践考试题集
- 广东省惠州市惠州中学2026届高三上英语期末学业质量监测试题含解析
评论
0/150
提交评论