本文评论了怎样优化 TPA2028D1 设置,使其能够更好的快速呼应智能手机等设备中的突发音,例如键盘音,提示音等信号。
1.介绍
TPA2028D1 是 TI 针对移动设备推出的高效率 D 类扩大器。所集成的 DRC 和 AGC 功用能够依据输入信号的巨细主动调整扩大器的增益,以到达避免功放削波失真的意图,并且有用的提高输出平均功率,然后改进音乐的回放作用。
TPA2028D1 具有灵敏的可装备性。规划者能够经过 I2C 拜访其寄存器,对扩大器使能,增益,呼应速度等多个参数进行装备,使其能够针对不同的使用场景进行优化。
因为 DRC 和 AGC 会依据信号巨细调理增益,针对接连的音乐信号需求设置必定的 Attack Time 和Release Time 来确保优秀的回放作用。可是关于突发音信号保持时刻过短,并且因为省电的需求,需求在播映前使能 TPA2028D1,并在播映完毕后将其封闭。因而一些规划中,在播映例如键盘音或摄影音的时分存在声响过小,或声响突变等现象。
本文经过对此现象的成因进行剖析,评论了怎么经过优化芯片参数的设置,处理类似问题的办法。
2.TP2028的两种封闭/使能方法
TPA2028能够经过硬件和软件两种方法进行封闭和使能。
- 经过芯片 EN管脚,硬件的使能封闭方法;
- 经过芯片寄存器 0x01 bit6 EN和 bit5 SWS,软件的使能封闭方法
2.1 硬件封闭/使能
封闭:
- EN管脚置低,芯片进入封闭状况,一切寄存器被铲除
使能:
- EN管脚置高,芯片进入使能状况,一切寄存器进入初始状况,如 Table 1。因为在初始状况寄存器 0x01 EN=1 SWS=0 ,功放部分使能,能够直接进行播映;
Table 1. TPA2028D1寄存器初始值
TPA2028D1的规划为,芯片使能后扩大器初始增益由 Fixed Gain决议。而 TPA2028D1 Fixed Gain寄存器 Reg5/bit5:0 初始值为 00110,即 6dB,因而在此状况下扩大器的增益初始值固定为 6dB。因为Max Gain寄存器 Reg7/bit7:4初始值为 30dB,因而此刻播映的信号以 Release time寄存器 Reg3/bit5:0的初始值 1.81秒/6dB的速度,从 6dB渐渐向 30dB添加。如 Figure 1所示。因而会形成显着的淡入作用,关于存在时刻过于时刻短的信号,则形成过小的现象。
Figure 1. 硬件使能 TPA2028D1增益递加
2.2软件封闭/使能
封闭:
- EN=0 (Reg1/bit6)或许 SWS=1 (Reg1/bit5)
使能:
- EN=1 (Reg1/bit6)或许 SWS=0 (Reg1/bit5)
EN 和 SWS 不会铲除寄存器的设定状况,一切寄存器值保持原先的设置,因而 TPA2028D1 在软件使能之后能够依照设定的 Fixed Gain和 Max Gain以及 Release Time进行改变。如 Figure 2所示。因而只需求设置适宜的 Fixed Gain, Max Gain 和 Release Time,就能够操控这种改变,然后消除 AGC和DRC带来的淡入淡出问题。
Figure 2. 硬件使能 TPA2028D1增益递加
值得注意的是,因为芯片内部状况的树立需求时刻,因而会发生必定的输出推迟。TPA2028 的推迟在 6ms 左右,因为这个时刻相对 Ramp up 的时刻相对时刻短,并且处理器播映突发音时普遍存在必定的推迟,所以在一般的规划中输出推迟能够疏忽。但如果在实践的使用中有处理器播映未加推迟的状况,则能够经过在处理器播映突发音文件前参加 6ms推迟来处理。
Figure 3. 输出推迟
3. 使用不同的使用形式挑选适宜的参数设置
依据上面临突发音淡入现象原因的剖析,为了处理 TPA2028D1 对突发音信号的呼应问题,处理问题的方法为:
- 用软件使能 TPA2028D1替代硬件使能;
- 缩小设置的 Fixed Gain和 Max Gain之间的不同。
但因为音乐播映等使用中,Fixed Gain和 Max Gain仍需求存在必定的不同。因而咱们能够经过:
- 找到一组中心参数能够平衡接连的音乐播映和突发音播映作用;
- 依据不同的使用判别是否存在突发音的播映,别离针对接连音乐的播映和突发音的播映设置两套不同的参数。因为在实践使用中,使能 TPA2028D1,播映突发音,再封闭,的使用都是在一些特定的使用下进行。例如播映摄影音时,设备一般处于摄影状况;键盘音,设备处于键盘输入状况。因而咱们能够依据不必的使用决议 TPA2028 参数的设置,使得在消除突发音淡入淡出作用时,不影响到音乐的播映作用。
因为现存的智能便携设备操作系统使用程序处于 UI层,而操控 TPA2028D1的驱动处于驱动层,因而需求经过驱动读取操作系统的相关 log文件关于使用程序进行判别。