星期三, 16 12月 2020 18:14

基于高通QCC3031 Class1之TWS蓝牙音箱设计方案

女作者
给本文评分
(0 投票)
QCC3031是一款入门级可程式设计蓝牙音讯SoC,专为优化的蓝牙音箱而设计。基于极低功耗架构,支援高通aptX™和aptX HD音讯、并可开启TWS功能将左右声道输出到两个QCC3031蓝牙音箱再配合高通独有可控制开启外部2.4 GHz TRANSMIT/RECEIVE射频芯片将输出功率加大、支援最高到1.8A的充电电流设计,更可以让音乐享受不受间断和距离的打扰。

QCC3031是一款入门级可程式设计蓝牙音讯SoC,专为优化的蓝牙音箱而设计。基于极低功耗架构,支援高通aptX™和aptX HD音讯、并可开启TWS功能将左右声道输出到两个QCC3031蓝牙音箱再配合高通独有可控制开启外部2.4 GHz TRANSMIT/RECEIVE射频芯片将输出功率加大、支援最高到1.8A的充电电流设计,更可以让音乐享受不受间断和距离的打扰。

QCC3031采用QFN封装,旨在为客户提供有助于缩短开发时间和成本的解决方案。除了高品质的Analogue Audio 输出界面之外,另可程式化的Digital audio 丰富音源输出,输入方面除了无线蓝牙之外,有线输入支援USB音源拨放,还可以设定成wire in的方式让你聆听音乐的方式不再受到限制。 

现在将透过硬体设计的规范、测试和软体的设定来帮助你如何快速设计高通QCC3031 Class 1 TWS蓝牙音箱。

硬体设计
在硬体线路设计方面,除了QCC3031基本线路之外,我们另外考虑外部线路,此次设计不用QCC3031原来的Analogue Audio 输出界面,而是另外设计Digital I2S界面,并留出控制外部2.4 GHz TRANSMIT/RECEIVE射频芯片开启脚位来达到无线输出大功率的设计。三个按键足以应付一般开关机,配对,大小声等基本功能,当然还可以触发TWS功能,开启、切换EQ等进阶功能应用。三个LED的设计也可以让你在使用蓝牙音箱时能时时刻刻知道现在蓝牙音箱的状态。

除了RF和Crystal下方不能有任何连接线经过之外,在传输线的四周和带通滤波器下方也尽量钻孔连接下方的大地层。

此外还需特别注意1.8V 和1.1V SMPS buck 线路,保持SMPS周边零件靠QCC3031 摆放除了可以避免PCB板的杂散电感而造成的电压杂讯,并可以限制EMI的产生。

当然其馀的滤波和稳压电容也是靠近QCC3031脚位摆放。

软体设定
在软体方面,高通除了Mutlicore Development Environment(MDE)开发环境之外,还有ADK Configuration tool 可以用来做按键触发和I2S,TWS功能设定、LED显示、音源输出设定,然后再搭配QCAT来调整cVc和Music EQ效果。

关于I2S输出设定,首先要在Project 内 Enable wire 的功能Properties/Project : ENABLE_WIRED

然后在fw_cfg_filesystem\common\subsys3_config1.htf 设定I2S的脚位。

# Select PIOs for I2S interface 0 and 1: SCK, WS, MCLK, SD_OUT, SD_IN.
PcmPioConfig = [ 10 11 ff 12 13 https://edit.wpgdadawant.com/uploads/news_file/program/2019/30416/tinymce/image_0905_005.jpg" alt="" style="box-sizing: border-box; border: 0px; vertical-align: middle; max-width: 100%; height: auto; display: inline-block; max-height: 624px;" />

Build All和Deploy All之后还要再进入ADK Configuration tool去做Channel Allocation的设定。这边须注意如果要看到I2S的选项一定要在前一步骤Enable-Wired之后才会出现。

我们在ADK Configuration tool 工具内Configuration Set > Audio > Output > Channel Allocation底下将Endpoint Hardware Type改成 I2S。

如果要开启TWS音箱的功能,也要在Properties/Project : enable_peer_device 选择ENABLE_PEER_TWS_PEER_AVRCP。
启动ADK configuration tool 关闭ShareMe的设定,Configuration Set > Peer Device Support > ShareMe
在Configuration Set > Peer Device Support > True Wireless Stereo设定TWS和Audio Source的来源。
以上完成软体的所有设定之后Write Device 接着就可以Disconnect form Device。

当HSP/HFP或A2DP 连接完成后,就可以看到I2S的输出,再搭配Stereo I2S Audio Amplifier即可以推动大瓦数的喇叭。

QCC3031本身提供aptX Classic + aptX-HD Decoders高音质较少损耗的无线音乐品质,除了喇叭单体和音箱结构设计来调整音质之外,另外可借由QACT(Qualcomm Audio Calibration Tool)来调试基于DSP的语音和音频后处理模块。使用QACT可以直接在线修改参数,让调试音乐变的直觉化、十分方便。在此我们要介绍并导入EQ的调整和参数写入,让蓝牙音箱有更多样且丰富的音乐享受。在使用调试EQ前必须先设定要开启EQ,关掉,切换EQ等按键动作,这部分也是透过ADK Configuration Tool来设定。

QACT针对QCC3031只支援在线修改参数,所以必需先建立A2DP连线, 打开QACT进入工具调试。

进入QACT的画面之后,点选上方DSP/Monitor Statistics。然后在右边视窗的Ovverride从PTHru改成Full才可以立即感受到音乐的即时变化。

点选Equalizer, 进入调整画面就可以编辑EQ, QCC03031支援最多10个stage的设计,可用按键切换高达7组的EQ。

待调整完成后、将存入的参数值填入user_ps_filesystem/subsys3_psflash.htft档案中即可。


Class 1 设计:

在开启控制外部Tx/Rx路径之前,我们必须利用高通MDE开发环境加入开启外部2.4 GHz TRANSMIT/RECEIVE射频芯片的设定指令,之后并设定控制发射和接收的GPIO脚位。硬体方面,这里选用2.4 GHz 2401C TRANSMIT/RECEIVE 射频前端芯片将输出功率放大到小于+20dBm。软体方面控制参数须放置在QCC3031专案内的路径 \dev-cfg_filesystem\subsys1_config2.htf的档案内。利用三行编码指定所需QCC3031硬体的TX(发射)和RX(接收) GPIO脚位来控制外部2.4GHz射频前端模组即可。待设定完之后再做软体烧录即完成软体设定动作。以下所有测试动作,设定使用QCC3031 GPIO20当接收控制脚位,GPIO21当发射控制脚位来测试。

PSKEY_TXRX_PIO_CONTROL = 1

PSKEY_TXRX_PIO_RX = 20

PSKEY_TXRX_PIO_TX = 21

设定好TX/RX 开启脚位后,如何验证其功能和效能就相对的重要。高通Bluetest3测试工具则提供蓝牙测试基本指令,透过Bluetest3我们可以用来观察GPIO的输出并设定开启的时间周期和封包来达到蓝牙测试规范的要求。另外在蓝牙射频测试规范中针对Class 1 的产品必须要加测RF/TRM/CA/BV-03-C [Power Controlhttps://edit.wpgdadawant.com/uploads/news_file/program/2019/30416/tinymce/image_0814_005.jpg" alt="" style="box-sizing: border-box; border: 0px; vertical-align: middle; max-width: 100%; height: auto; display: block; max-height: 624px; margin-left: auto; margin-right: auto;" />


根据蓝芽测试规范有关输出功率的测项Payload格式是PRBS9,在Bluetest3中的TXDATA1 Payload定义就是PRBS9。TXDATA1测试指令中,除了要输入要发射的频率外还要填入QCC512x 内部功率放大器的参数。功率放大器的参数包含了数位(Digital)和类比(Analog)增益(Gain)的设定值。类比增益值代表的是内部功率放大器的衰减值Attenuation (0 to 15),数位的增益包含了Magnitude (-8 to 7) 和Exponent (0 to 3) 这两个参数值,将这三个参数填入TXDATA1即可得到不同的输出功率。

当然在此步骤可以先用示波器先来确认TX的脚位是否有正常运作,从下图可以看到周期是我们所设定的6250us(6.25ms)。

另外调整Packet Type 和Packet Size也可以过测试仪器量得并显示相对应的封包格式。

在Class 1的测项中除了量得输出功率外还须测试power control(功率控制),在这里我们要利用以上面的步骤分别量得Basic Rate和Enhanced Data Rate七阶的输出功率,然后填入Power Table 并覆写入芯片当中(有关高通Power Table 的说明,请参考80-cf994-1_ae_qcc512x_bluetooth_power_table_optimization_application_note),要特别注意的是在这要确认功率控制每一阶(step size): 2dB< step size< 8 dB。


Output power

当完成Power Table 参数写入后,我们也可以透过Bluetest3\ ENABLE DUT MODE测试指令来测试Basic Rate和Enhanced Data Rate的输出功率,功率控制和增强型功率控制。或是利用Bluetest3 Tester Interface 来测试Bluetooth Low Energy的输出功率。

高通 QCC3031为制造商提供一种高效的设计方式,其软体开发环境MDE和配套的音频开发套件ADK Configuration tool,除了可支援开发TWS功能,并能满足蓝牙喇叭音箱的需求提供更高瓦数,更远距离和更大电池容量的蓝牙音箱设计方案。

查看 4803