0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

解读QCC512x sink工程如何获取手机端的蓝牙名称

蓝牙 来源:蓝牙 作者:蓝牙 2021-04-19 10:29 次阅读

内容简介

本文介绍在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事件处添加获取代码:

a92ede8a-9ff0-11eb-8b86-12bb97331649.png

#ifdefTEST_READ_REMOTE_NAME

ConnectionReadRemoteName(&theSink.task, &(conncfm->bd_addr));

#endif

ConnectionReadRemoteName函数执行后,在获取到remote端的name后,会有一个CL_DM_REMOTE_NAME_COMPLETE事件被触发。

所以在handleCLMessage函数中添加该事件的处理函数,这里主要就打印一下获取到的设备名称:

a9702cfa-9ff0-11eb-8b86-12bb97331649.png

#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,然后测试。

测试结果:

a9b00532-9ff0-11eb-8b86-12bb97331649.png

测试完毕。

总结:从测试过程看很简单,其实就是一个接口函数ConnectionReadRemoteName的调用,获取到对方设备名称数据后,底层直接上报一个CL_DM_REMOTE_NAME_COMPLETE,从这个事件传入的消息中就包含了设备名称信息

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 蓝牙
    +关注

    关注

    112

    文章

    5428

    浏览量

    165646
  • 函数
    +关注

    关注

    3

    文章

    3868

    浏览量

    61308

原文标题:QCC512x sink工程如何获取手机端的蓝牙名称

文章出处:【微信号:TalkBT,微信公众号:蓝牙】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何通过蓝牙获取手机时间同步时钟RTC万年历走ble或者edr经典蓝牙

    KT6368A支持连接手机获取手机的时间信息,可以同步时钟 无需安装任何app,直接使用系统蓝牙即可实现 走的就是edr的经典蓝牙
    的头像 发表于 03-17 19:30 112次阅读
    如何通过<b class='flag-5'>蓝牙</b><b class='flag-5'>获取</b><b class='flag-5'>手机</b>时间同步时钟RTC万年历走ble或者edr经典<b class='flag-5'>蓝牙</b>

    CYBT-343026蓝牙串口连接不稳定的原因?怎么解决?

    ,大多数时候模块用它做广告没问题。 但是,我确实看到有时候当手机扫描友好名称时,它会以某种方式被损坏。 2. 模块 CAN 配对连接。 连接似乎不是很稳定,在移动,我 CAN 看到它显示连接丢失,并且
    发表于 03-01 13:11

    Type-C pd sink取电协议芯片介绍

    前言:在如今快节奏生活不断蔓延的背景下,人们对各种事情的处理也渐渐地开始要求在保证质量的情况下,不断加快。手机快充就是一个典型的例子,从开始的18W,30W快充,到现在已经有240W的超级快充出现
    的头像 发表于 02-24 19:04 1302次阅读
    Type-C pd <b class='flag-5'>sink</b>取电协议芯片介绍

    AD5560 force正电压时,可以sink电流吗?

    如题,请教一下,AD5560 的 HCAVDD1,HCAVDD2, 10V供电,AVDD 12V供电, AVSS, HCAVss1,HCAVss2 ,均为负5V供电。当AD5560force一个正电压时,可以用来sink电流吗? 比如 对于AD5560 来说,上面用法是否可行?
    发表于 01-05 07:30

    USB-C科普 | PD sink,LDR6328Q

    诱骗取电、SINK、PD SINK
    的头像 发表于 11-27 09:30 238次阅读
    USB-C科普 | PD <b class='flag-5'>sink</b>,LDR6328Q

    关于音频数据的获取

    请问CST92F42KEV7HI-EVB的板子没有音频功能那我获取mic数据的方式是什么呢那块板子上没有耳机插孔 所以边录边播的方法不行只能通过蓝牙透传给手机 透传给手机的数据是音频数
    发表于 11-24 10:07

    SDCardUtils封装类应用:设备信息获取实现方法

    一、 获取手机基本信息(厂商、型号等参数) 二、设备信息获取实现图 三、 获取手机设备 宽、高、IMEI 信息 四、
    的头像 发表于 11-13 09:40 311次阅读
    SDCardUtils封装类应用:设备信息<b class='flag-5'>获取</b>实现方法

    蓝牙控制的手机APP怎么弄?

    蓝牙控制的手机APP怎么弄
    发表于 10-23 07:19

    ardiuno单片机蓝牙小车的蓝牙手机检测不到是怎么回事呢?

    ardiuno单片机蓝牙小车的蓝牙手机检测不到是怎么回事?
    发表于 10-18 07:17

    Linux C语言获取当前程序名称的三种方式

    如果需要在程序内部获取当前运行程序的名称,可以使用如下 4 种方式:
    发表于 08-24 16:03 836次阅读
    Linux C语言<b class='flag-5'>获取</b>当前程序<b class='flag-5'>名称</b>的三种方式

    筋膜枪专用取电芯片,USB Type-C PD取电(诱骗,诱电,SINK)芯片

    这几年,Type-c接口的强大功能,造就了Type-C接口的大量普及,随处可见消费者在使用支持Type-c接口的电子产品,如手机,笔记本,筋膜枪,蓝牙音箱等等。那么,像筋膜枪,蓝牙音箱,无人机,小风
    的头像 发表于 07-04 18:18 626次阅读
    筋膜枪专用取电芯片,USB Type-C PD取电(诱骗,诱电,<b class='flag-5'>SINK</b>)芯片

    使用BleuIO获取蓝牙设备距离

    电子发烧友网站提供《使用BleuIO获取蓝牙设备距离.zip》资料免费下载
    发表于 06-15 11:00 0次下载
    使用BleuIO<b class='flag-5'>获取</b><b class='flag-5'>蓝牙</b>设备距离

    QCC5125蓝牙电路图

    采用QCC5125蓝牙芯片蓝牙模组,APTX HD高清解码电路图
    发表于 06-05 09:37 13次下载

    yolov5训练的tflite模型进行对象检测不适用于NNStreamer 2.2.0-r0?

    :480 option5=320:320 !视频/x-raw,宽度=640,高度=480,格式=RGBA!混合。吨。!队列最大大小缓冲区=2!imxcompositor_g2d 名称=mix sink_0:: zorder=2
    发表于 05-17 12:44

    【沁恒 CH32V208 开发板免费试用】手机蓝牙调试助手控制板LED的HalLedBlink

    ,HAL_LED_MODE_TOGGLE); 每发一次0x03,led进行toggle 这个LED代码同时可以控制4个LED灯,大家可自行测试。 2、手机下载蓝牙调试助手,打开软件搜索设备广播出来的
    发表于 05-07 17:20