内容简介
本文介绍在QCC512x的sink工程下,如何获取对方设备的蓝牙设备名称。
测试工具
MDE:MDE_WIN_2.3.2.126
Toolkit:NULL
QACT:NULL
Hardware:QCC5127
Software:ADK_QCC512X_ROM_V21_WIN_6.4.2.21,sink
代码修改
在默认sink工程的main.c中依次添加以下代码。
找一个连接建立后触发读取事件的地方,比如在handleUEMessage函数的HFP_SLC_CONNECT_CFM事件处添加获取代码:
#ifdefTEST_READ_REMOTE_NAME
ConnectionReadRemoteName(&theSink.task, &(conncfm->bd_addr));
#endif
ConnectionReadRemoteName函数执行后,在获取到remote端的name后,会有一个CL_DM_REMOTE_NAME_COMPLETE事件被触发。
所以在handleCLMessage函数中添加该事件的处理函数,这里主要就打印一下获取到的设备名称:
#ifdefTEST_READ_REMOTE_NAME
case CL_DM_REMOTE_NAME_COMPLETE:
PRINT(("=================>CL_DM_REMOTE_NAME_COMPLETE "));
PRINT(("=================>remotename = "));
for(uint8 i = 0;i<((CL_DM_REMOTE_NAME_COMPLETE_T *)message)->size_remote_name; i++)
{
PRINT(("%c",((CL_DM_REMOTE_NAME_COMPLETE_T*)message)->remote_name[i]));
}
PRINT((" "));
break;
#endif
最后记得打开宏定义TEST_READ_REMOTE_NAME,然后测试。
测试结果:
测试完毕。
总结:从测试过程看很简单,其实就是一个接口函数ConnectionReadRemoteName的调用,获取到对方设备名称数据后,底层直接上报一个CL_DM_REMOTE_NAME_COMPLETE,从这个事件传入的消息中就包含了设备名称信息。
编辑:jq
-
蓝牙
+关注
关注
116文章
6100浏览量
174786 -
函数
+关注
关注
3文章
4388浏览量
65316
原文标题:QCC512x sink工程如何获取手机端的蓝牙名称
文章出处:【微信号:TalkBT,微信公众号:蓝牙】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
【HZ-RK3568开发板免费体验】--蓝牙通讯
FS312A USB电源传输接收SINK端控制器芯片数据手册
FS8024A USB PD协议SINK端诱骗取电芯片数据手册
FS8024A USB PD协议SINK端诱骗取电芯片中文资料
KT6368A通过蓝牙芯片获取手机时间详细说明,对应串口指令举例

从蓝牙音频模块中了解I2S的主端和从端功能应用

鸿蒙应用元服务开发-Account Kit获取手机号
QCC3040蓝牙5.2音频主端发射模组在玩具中的应用

QCC3040蓝牙模块助力跑步机功能升级

QCC74xM RISC-V 架构可编程连接模组
QCC74xM 解读高通第一款RISC-V 芯片

评论