jasmine1

关于对MT6589平台耳机检测方式的支持说明

0
阅读(43) 评论(1)

1.关于对MT6589平台耳机检测方式的支持说明

1、MTK6589平台唯一建议使用的方式是EINT+ACCDET;

2、ACCDET only方式因为存在插拔有噪音、插拔容易出现误判和漏判等限制,在

MT6589上不再建议使用,内部也没有进行过测试和验证。如果贵司硬件上没有接

EINT,确实需要使用ACCDET only方式进行检查的话,需要进行如下更改:

accdet_custom.h文件:

1) 需要关掉如下三个宏定义:

// use accdet + EINT solution

#define ACCDET_EINT

// support multi_key feature

#define ACCDET_MULTI_KEY_FEATURE

// after 5s disable accdet

#define ACCDET_LOW_POWER

2) 修改cust_headset_settings的第一个和第二个参数:

Pwm_width = 0x400

Pwm_thresh = 0x3f0

2.MT6589中常用宏开关的作用 

在accdet.c和accdet_custome.h为了实现一些功能有用到很多宏开关,把目前相应的宏开关介绍如下:

1: ACCDET_EINT

是否启用了外部中断来侦测是否有耳机插入和拔出

2: ACCDET_MULTI_KEY_FEATURE

是否支持使用A/D来侦测key,这里要注意的是即使耳机只有一个key若是在MTK平台也需打开此宏开关

3: ACCDET_LOW_POWER

当插入三段耳机6s后自动关闭micbias,达到省电的目的

以上三个宏可以看成一个宏

4: ACCDET_28v_MODE

在我们内部有一个switch是针对外部耳机是用2.8还是1.9V的切换开关,美标的是2.8V, 国标的是1.9V

5: ACCDET_PIN_RECOGNIZATION

美标的插孔识别国标的耳机,国标的耳机识别美标的插孔,目前这个功能还没有实现,此宏不能打开

6: ACCDET_SHORT_PLUGOUT_DEBOUNCE

ACCDET_SHORT_PLUGOUT_DEBOUNCE_CN 25

拔出耳机后有时候图标会再弹出后在消失, 主要解决类似bug

7: ACCDET_PIN_SWAP

美标的插孔识别国标的耳机,这个时候需要借助accdet的一个上拉电阻,当有这种情形的时候AB一直为0,达到检测到的目的,当然也有误判的时候, 4段耳机按住按键插入后会有误判


  1. 对我的项目非常有用,谢谢