|
请教下,tlv320aic3111 耳机检测 ?
描述:
1. 目前使用 查询 gpio1 口的方式实现 插入,拔出 耳机的检测,这个方法已经完美实现
2. 当检测到有耳机插入后就继续读取寄存器 page=0, reg=67 ,判断插入耳机的类型,这个地方就不准确了,
a. 如果在没有播放前插入耳机,可以检测到我插入的是不带 mic 功能的耳机(这个是正确的, 耳机使用的是不带 mic 功能的耳机)
b. 如果在没有播放前没有插入耳机,等待播放后再插入耳机,此时检测到的是 带 mic 功能的耳机(这个地方就不准确了,耳机使用的都是同一个不带 mic 功能的耳机)
3. 如果不需要判断耳机类型的话,那么检测就是没有问题的
4. 耳机启用配置:
/* HP Debounce Time Settings */
#define HP_DEBOUNCE_32_MS BIT2
#define HP_DEBOUNCE_64_MS BIT3
#define HP_DEBOUNCE_128_MS (BIT3 | BIT2)
#define HP_DEBOUNCE_256_MS BIT4
#define HP_DEBOUNCE_512_MS (BIT4 | BIT2)
/*HS DETECT ENABLE*/
#define HS_DETECT_EN BIT7
/*HS BUTTON PRESS TIME */
#define HS_BUTTON_PRESS_0_MS 0
#define HS_BUTTON_PRESS_8_MS BIT0
#define HS_BUTTON_PRESS_16_MS BIT1
#define HS_BUTTON_PRESS_32_MS (BIT1 | BIT0)
其中 reVal |= (HP_DEBOUNCE_128_MS | HS_DETECT_EN | HS_BUTTON_PRESS_16_MS); 这句 组合了多个,可结果都还是一样的
哪位大神指点指点迷津哟,先感谢感谢 了
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|