您的位置:首页 > 移动开发 > Android开发

Android 耳机检测原理介绍

2013-11-06 14:39 465 查看
前言
         欢迎大家我分享和推荐好用的代码段~~
声明
         欢迎转载,但请保留文章原始出处:

         CSDN:
http://www.csdn.net

         雨季o莫忧离:http://blog.csdn.net/luckkof

正文

  

 

Feature Phone主要有三种耳机检测方式:
(1) EINT+AuxADC
   【检测原理】 
(1)   耳机检测方式为EINT+AuxADC。
(2)   EINT HISR为AUX_EINT_HISR,在aux_task_main中注册中断。插入耳机,若是高电平触发中断,需要保证AUX_EINT_STATE为1,否则为0。
(3)   hook key的检测采用ADC。当耳机plug
in,trigger AUX_EINT_HISR,此时turn on micbias, double check plug in state后,再发送msg AUX_ID_EARPHONE给UEM。
       然后turn off micbias。当aux收到来电消息,也会turn on micbias,检测SENDKEY ADC,直到挂断电话,才turn off micbias。
   【软件配置】ACCDET_SUPPORT=FALSE
   【典型平台】MT6236,MT6252
 
(2) ACCDET
   【检测原理】  
(1)   耳机检测方式为ACCDET only。

(2)   HISR为ACCDET_HISR,在ACCDET_INIT注册。

(3)   hook key的检测采用ACCDET。

(4)   耳机状态与accdet处的电压对应关系如下表:

                              表(一)

Earphone state

Accdet voltage

Comparator AB state

Plug out

1.9V

A=1,B=1

Plug in

0.4V~1.7V

A=0,B=1

Hook key pressed

0V

A=0,B=0

[align=center] [/align]
  【软件配置】ACCDET_SUPPORT=TRUE
  【典型平台】MT6276,MT6250D/MT6250
 

(3) EINT_ACCDET
       【检测原理】

(1)   耳机检测方式为EINT+ACCDET。

(2)   EINT HISR为AUX_EINT2_HISR,在ACCDET_INIT注册。插入耳机,若是高电平触发中断,需要将AUX_EINT_STATE置为1,否则置为0。

(3)   hook key的检测采用accdet。

(4)   耳机状态与accdet处的电压对应关系同表(一)。

(5)   耳机插入,触发eint之后,enable ACCDET,耳机拔出之后会disable ACCDET。

   【软件配置】ACCDET_SUPPORT=EINT_ACCDET
   【典型平台】MT6255,MT6250/MT6250D
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android csdn app