【音频系列】——MTK6735模块耳机通道外接功放的处理

一、MTK6735如何使用外部功放

      使用外部功放(MTK6735内部有自带功放,一般为D类功放,根据代码显示,可以配置成A、B类)一般推荐外接cpu的AU_HPL或AU_HPR上,中间通过33nF的电容即可。这两个引脚是耳机的输出接口,如果接到SPKP/N上实际接到了MTK内部功放输出上,这样也可以正常使用,只是增益被两个功放放大了,音量增益上有所变化,可能引起不适。

二、耳机通道外接功放(接在扬声器通道上不用修改),需要修改以下三个部分:

    1、 kernel config中,屏蔽掉CONFIG_MTK_SPEAKER,该定义即内部MTK功放的定义

    2、vendor/mediatek/proprietary/custom /xxxx(自己的项目)/ hal/audioflinger/audio/audio_custom_exp.h 

        该文件中的#define USING_CLASSD_AMP 修改成 USING_EXTAMP_HP  : 即将D类内部功放修改成外部功放

    3、要在dws 里面添加自己的功放控制引脚,将下述代码中的引脚号改为控制外部功放的实际引脚号(如果功放控制脚不由CPU控制,也可以不修改该处)

        AUD_pins_extamp_high: audexamphigh {

                pins_cmd_dat {

                        pins = ;

                                slew-rate = <1>;

                                output-high;

                };

        };

        AUD_pins_extamp_low: audexamplow {

                pins_cmd_dat {

                        pins = ;

                                slew-rate = <1>;

                                output-low;

                };

        };

        AUD_pins_extamp2_high: audexam2phigh {

                pins_cmd_dat {

                        pins = ;

                                slew-rate = <1>;

                                output-high;

                };

        };

        AUD_pins_extamp2_low: audexamp2low {

                pins_cmd_dat {

                        pins = ;

                                slew-rate = <1>;

三、所用MTK6735模块的特殊处理

     理论上扬声器与耳机的切换由系统自动识别:耳机插入自动切换到耳机,但是在本平台上,本SDK上,需要进行二、中几步的处理,声音才能从cpu的耳机接口出来,并且扬声器接口无声音输出(cpu上的接口,不是指扬声器,如果扬声器接在耳机通道上,也是可以有声音的)。这点可能因为我们所用的SDK有特殊处理或者模块电路上有处理(方案商提供的MT6735模块,模块含方案商自己设计的外围电路处理)

 

你可能感兴趣的:(*系统知识,*厂家平台)