原发布者:wwwzhangbk
一、HCI在蓝牙软件协议模型位置的分析 1.通信方式的分析*链路控制命令;*链路政策和模式命令;*主机控制和基带命令;*信息命令;*状态命令;*测试命令。事件包也可分为三种类型:*通用事件,包括命令完成包(CommandComplete)和命令状态包(CommandStatus);*测试事件;*出错时发生的事件,如产生丢失(FlushOccured)和数据缓冲区溢出(DataBufferOverflow)。数据包则可分为ACL和SCO的数据包。包的格式如图4所示。在Inquiry命令中,OGF=0x01表示此命令属于链路控制命令,同时OCF=0x0001则表示此命令为链路控制命令中的Inquiry命令。OCF与OGF共占2字节,又由于底位字节在前,则它们在命令包为0x0104。在Inquiry命令中,参数ParameterLength为5。Inquiry命令带3个参数,第一个参数为LAP(lowaddresspart),它将用来产生Baseband中查询命令包的包头中的AccessCode。第二个参数为Inquiry_Length,它时表示在Inquiry命令停止前所定义的最大时间,超过此时间,Inquiry命令将终止。第三个参数为NUM_Response,它的值为0X00表示设备响应数不受限制,只为0x00-0xff则表示在Inquiry命令终止前最大的设备响应数。因此,若LAP=0x9e8b00,Inquiry_Length=0x05,NUM_Response=0x05,则协议上层调用Inquiry命令是HCI向基带发的明令包将为:0x010405008b9e0505。事件包:事件包的EventCode用来区分不同的事件包,ParameterLength表示所带参数的长度,以字节数为单位,随后