泰凌微电子推出新的经典蓝牙和私有协议双模TWS SDK,和普通的TWS相比,除了经典蓝牙连接之外,还具备一路超低延迟私有协议的功能。支持双模同时在线,无需按键切换,由软件自动判断切换模式,使得在体积小巧的TWS耳机上,无需通过UI切换模式。在超低延迟模式下,音频延时仅30ms。
该TWS耳机方案支持单独私有协议连接,或者单独通过经典蓝牙连接到主设备进行通话或者音乐播放,也可以两路连接并存进行一路电话或音乐。在两路同时在线的情况下可将蓝牙电话和私有协议连接音频混音。其中支持最新的LC3编码,使得在低速率下也能提供较高质量的音频体验。
本文将讲解TWS双模SDK如何快速上手。
1
准备工作
01
B91开发板x3
B91开发板搭载TLSR9518 SoC,具有丰富的外设接口,可以用于实现各类物联网和无线音频设备的原型开发。用户可以通过在线购买或者联系泰凌获取该开发板。
购买链接:
https://shop321349797.taobao.com/?spm=2013.1.0.0.4f452b62OVOMzD
(图1:开发板)
02
Telink烧录器
可以通过在线购买或者联系泰凌获得该设备。(注:本文默认读者已熟悉用Telink烧录器给B91开发板烧录软件)
(图2:烧录器)
03
TWS双模SDK代码,RISC-V TDB
上位机工具及BDT烧录工具
(注:SDK代码和工具请联系泰凌获取)
(图3:SDK代码文件结构)
application:音频通路及usb audio相关。
boot:启动文件
codec:codec相关
common:编译调试相关代码
drivers:驱动相关
proj_lib:算法库
stack:bt及async协议栈相关代码
tlkapi:api层代码
vendor:存放build工程代码,目前包含_proj_boot_device_、 _proj_bt_tws_ 、_proj_cc_tws_、_proj_le_ll_dongle_四个工程编译选项。
(图4:RISC-V工具和BDT工具)
2
编译SDK及烧录软件
01
编译SDK
使用IDE打开SDK有 _proj_cc_tws_,_proj_cc_dongle_,_proj_bt_tws_ 三个工程。
(图5:工程名称)
本文使用_proj_cc_tws_和_proj_cc_dongle_两个工程即可,_proj_bt_tws 和_proj_cc_tws_ 区别为是否支持低延时音频,使用_proj_bt_tws则无法与dongle连接。
在_proj_cc_tws_工程目录下的app_config.h找到HEADSET_UI_EN这个宏定义,确认为0即可,因为本文使用的是 C1T213A30_V1.3开发板。
然后编译_proj_cc_tws_和_proj_cc_dongle_两个工程。
(图6:代码截图)
02
烧录软件
在编译好后可以得到_proj_cc_tws_工程的三个bin和_proj_cc_dongle_工程的一个bin,此处_proj_cc_tws_工程的三个bin都是一样的,只是文件名不同,烧哪个都可以。本文这里直接烧录_img_proj_cc_tws_.bin和_img_proj_cc_dongle_.bin
(图7:文件截图)
03
如何区分左右耳机
TWS耳机是通过一个io口上的电阻去区分左右耳机的,本文使用的B91开发板都是一样的,没有电阻去区分左右耳机,故需要用将宏定义HEADSET_UI_EN置为0,即B91开发板模式,这样即可通过软件中的USB ID来区分左右耳机。
(图8:代码截图)
此处可以从HEADSET_UI_EN这个宏定义看出,如果HEADSET_UI_EN是1,则须使用的是TWS demo板(本文暂无介绍demo板)。可以通过LEFT_RIGHT_INDENTIFY_PIN定义控制的pin脚上是否有连接电阻到地来区分左右耳机,由于是B91开发板则没有这个电阻区分,所以为0.
(图9:代码截图)
此处debug_init函数如果LEFT_RIGHT_INDENTIFY_PIN为0的情况下,是flash地址0xcfff0的位置读取一个flag来区分左右耳机,如果默认是0xff,则USB_ID就是0x120,为左耳,反之其他则为右耳。
综上所述,在烧录完软件后需要选择其中一个烧录过耳机软件的B91开发板往flash中地址为 0xcfff0处写0x21,一个字节。
(图10:工具截图)
使用BDT工具和Telink烧录器即可操作B91开发板的烧录,选中工具的Tool->Memory Access就可调出工具操作flash。
写成功后,打开软件RISC-V TDB目录下的01和02后就可以看见两个USB LOG软件可以看见调试信息输出,则表示成功。
(图11:文件截图)
(图11:工具截图)
因为在RISC-V TDB目录下的两个01和02的tl_riscv.ini文件下是有确定USB_ID的,如果USB_ID不正确是无法看见USB LOG的。
(图12:工具截图)
由于是空白的开发板,本文第一步需要将两个B91开发板组队,故在左右耳的USB工具下都输入11 0b 01,这个是无线组队命令。
(图13:工具截图)
然后在输入 11 01,看见的role信息变成04或者06 就表示组队成功了,没组队成功则是01,04表示主,06表示从。
(图14:工具截图)
此时拿出手机搜索蓝牙名为“Game headset”的设备,连接即可。
(图15:B91开发板照片)
04
连接Dongle
把烧录好dongle软件的开发板直接插在PC上,然后双击下K1按键。同时左右耳依然都输入11 0b 01 即可完成配对dongle。
(图16:B91开发板照片)
输入11 05 02 看见leconn为1则表示dongle连接成功。
(图17:工具截图)
在PC上播放音乐即可体验。
3
总结
目前Telink推出的TWS方案已经较为成熟,上手难度不高,配套开发工具齐全,足以快速上手,敏捷开发,同时相比传统TWS耳机方案,新增的私有超低延迟协议,为音频设备带来了全新的体验。
关 于 泰 凌
泰凌微电子致力于为客户提供一站式的低功耗高性能无线连接SoC芯片解决方案,包括经典蓝牙,蓝牙低功耗,蓝牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有协议等低功耗2.4GHz多协议无线连接系统级芯片和丰富的固件协议栈。公司产品广泛应用于智能照明,智能家居/楼宇,智能遥控,无线外设,智能零售,穿戴设备,无线音频,智能玩具,物流追踪,智慧城市等各类消费和商业应用场景中。
官网:www.telink-semi.com
微信公众号:telink-semi
泰凌开发者论坛:
https://developers.telink-semi.cn/
销售接洽:
中国大陆(华东、华北) :
+86-21-20281118-8213
中国大陆(华南、香港、音频) :
+86-0755-26614003
telinksales@telink-semi.com
原文标题:【技术专栏】泰凌微电子双模TWS SDK 快速上手指南
文章出处:【微信公众号:泰凌微电子】欢迎添加关注!文章转载请注明出处。
全部0条评论
快来发表一下你的评论吧 !