HCI初始化流程(重点)

十七、初始化流程

1、HCI_Reset    初始化的第一步

2、确定bt chip支持的command、feature、地址等

HCI_Read_Local_Version_Information

HCI_Read_Local_Supported_Commands

HCI_Read_Local_Supported_Features

HCI_Read_Local_Extended_Features

HCI_Read_BD_ADDR

3、设置接收哪些event

HCI_Set_Event_Mask

4、如果支持controller to host的流控(一般不用)

HCI_Set_Controller_To_Host_Flow_Control

HCI_Host_Buffer_Size

5、如果支持host to controller的流控(一般不用)

HCI_Read_Buffer_Size

6、设置Link key相关(一般用HCI_Delete_Stored_Link_Key,不用bt chip存储link key)

HCI_Read_Stored_Link_Key

HCI_Write_Stored_Link_Key

HCI_Delete_Stored_Link_Key

7、设置本地设备名

HCI_Write_Local_Name

7、设置SCO的配置

HCI_Write_Voice_Setting

8、设置cod

HCI_Write_Class_of_Device

9、设置IAC(一般不用)

HCI_Write_Current_IAC_LAP

10、设置是否可被搜索是否可被连接

HCI_Write_Scan_Enable

11、设置搜索相关

HCI_Write_Inquiry_Scan_Type 设置隔行/逐行扫描

HCI_Write_Inquiry_Mode  设置标准搜索/RSSI搜索/RSSI和eir搜索

HCI_Write_Extended_Inquiry_Response 设置eir

12、设置page相关

HCI_Write_Page_Timeout     设置page timeout

HCI_Write_Page_Scan_Type    设置逐行/隔行 page scan

13、设置是否需要认证

HCI_Write_Authentication_Enable 设置authentication enable

HCI_Write_Simple_Pairing_Mode   设置是否支持bt2.1

HCI_Write_Secure_Connections_Host_Support 设置是否支持secure connection

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
蓝牙HCI(Host Controller Interface)扫描是指通过扫描器在蓝牙设备之间进行信息交换的过程。它的流程如下: 首先,蓝牙设备需要进入扫描模式。扫描模式分为主动扫描和被动扫描。主动扫描是指设备主动发送请求,被动扫描是指设备被动等待被其他设备发现。 进入扫描模式后,扫描器会发送IDLE命令到控制器,通知其开始扫描蓝牙设备。控制器会以指定的参数(如扫描类型、扫描窗口、扫描间隔等)来执行扫描操作。 接下来,控制器会发送命令给链路管理器,告知其进入扫描状态。链路管理器会根据控制器提供的参数来设置扫描窗口,并等待扫描结果的返回。 同时,链路管理器还会启动定时器来跟踪扫描窗口的时间。在扫描窗口期间,链路管理器会监听和接收其他蓝牙设备发送的广播信号。 当有其他蓝牙设备发送广播信号时,链路管理器会读取收到的数据,并通过命令返回给控制器。控制器再将扫描结果返回给扫描器,扫描器再将结果传递给上层应用程序。 扫描器会将扫描结果进行处理,如显示设备名称、设备地址等信息,供用户选择连接或交互。 最后,扫描过程会在设定的扫描间隔后自动结束,并返回到IDLE状态。 总结来说,蓝牙HCI扫描的流程是:设备进入扫描模式 -> 控制器发送扫描命令给链路管理器 -> 链路管理器监听和接收其他设备的广播信号 -> 控制器返回扫描结果给扫描器 -> 扫描器处理并显示扫描结果 -> 扫描过程结束。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值