【技术专栏】泰凌微电子双模TWS SDK 快速上手指南

描述

泰凌微电子推出新的经典蓝牙和私有协议双模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 快速上手指南

文章出处:【微信公众号:泰凌微电子】欢迎添加关注!文章转载请注明出处。


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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分