功放TAS5719耳机POP noise分析 对策
驱动功放时,遇到POP noise 是常见的问题,以前遇到此问题,首先想到的对策就是mute the output.本人一直来对此种解法感觉不爽,心里不快。最近遇到开机时耳机有很强的POP,决定好好研究一下产生的原因,一来想了结一下心中的不快,二来想找出根本的原因,以便以后遇到此类问题有个根本的对策。废话到此。
- 开机耳机POP noise 问题
本人遇到两种情况,其实就是两种不同的电路,然其解决思路基本相同。
情况一:IC(以下IC即指TAS5719)的A_SEL脚接电阻下地,并和HP_SD相连(HP_SD不受MCU控制)
- POP niose产生原因:IC上电复位后不能马上切到耳机,此时IC工作还没有稳定,大致在5-6s后再进行切换。
- 对策:当开机时,耳机已经插入。IC先进行复位,然后进行初始化设置,再写耳机和喇叭切换的寄存器值。从IC复位到写切耳机的寄存器的间隔时间需要5-6s。 即复位后5-6s才给0x05寄存器写入0x13切到耳机模式;
流程:IC上电复位后延时100ms-->IC初始化-->IC复位后5-6s,0x05寄存器写0x13(耳机模式,A_SEL设为输出),此时A_SEL脚为高
情况二:IC的A_SEL脚接磁珠下地(A_SEL始终为低),不和HP_SD相连,HP_SD(耳机使能)由MCU控制
- pop noise 产生原因:IC上电复位后不能马上切到耳机,此时IC工作还没有稳定,大致在5-6s后再进行切换。
- 对策:当开机时,耳机已经插入。IC先进行复位,然后进行初始化设置,再拉高耳机使能脚。从IC复位到拉高耳机使能脚的间隔时间需要5-6s。即IC初始化的时候0x05寄存器写入0x10,复位后5-6sMCU拉高HP_SD切到耳机模式;
流程: IC上电复位后延时100ms-->IC初始化,0x05寄存器写入0x10-->IC复位后5-6s,HP_SD拉高(耳机使能,A_SEL设为输出),A_SEL脚始终为低.
此电路下,插入耳机0x05寄存器写入0x10后要延时(实验为1S),再拉高HP_SD,此为避免插入耳机产生POP noise.
总结:
- 以上两种电路,开机时POP noise 产生的地方都是在IC初始化之后没有足够的延时就进行耳机和喇叭模式的切换导致的。
- 不论电路怎么设计,IC写寄存器之前要有至少100ms的延时,再有不论是寄存器进行耳机/喇叭使能切换还是使能引脚进行切换,都要在IC复位工作稳定后再做切换,这样才能避免noise的产生。
- 在耳机切换时,因耳机和喇叭的输出是有差别的,所以在耳机切换的时候要写入各自的当前音量。
以上仅为个人实践所得,如有不当或需更进之处请多多指教。
功放TAS5719耳机POP noise分析 对策的更多相关文章
- 杂音 & pop 音的解决方法
杂音 & pop 音的解决方法 1. 喇叭有严重的"吱吱"破音,绝大多数的原因有可能在于V(out)电压不稳定,所以最好测一下无负载时的输出电压.同时也可以测量 VCC – ...
- POP音原因
一,通话时调节音量,有POP音. POP音产生原因在于,音量变化太大导致有POP音,需要以淡入淡出的方式调节音量.请申请MOLY00108114 & MOLY00108143这两个Modem ...
- 【转】自定义iOS的Back按钮(backBarButtonItem)和pop交互手势(interactivepopgesturerecognizer) --- 不错
原文网址:http://blog.csdn.net/joonsheng/article/details/41362499 序 说到自定义UINavigetionController的返回按钮,iOS7 ...
- Netty源码分析第8章(高性能工具类FastThreadLocal和Recycler)---->第4节: recycler中获取对象
Netty源码分析第八章: 高性能工具类FastThreadLocal和Recycler 第四节: recycler中获取对象 这一小节剖析如何从对象回收站中获取对象: 我们回顾上一小节demo的ma ...
- 逆向与反汇编实战(一)--PEiD分析复现
1.准备 简介: PEiD(PE Identifier)是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳,其数量已超过470 种PE 文档 的加壳类型和签名. 整个过程需要测试文件成品:htt ...
- 一个无锁消息队列引发的血案(五)——RingQueue(中) 休眠的艺术
目录 (一)起因 (二)混合自旋锁 (三)q3.h 与 RingBuffer (四)RingQueue(上) 自旋锁 (五)RingQueue(中) 休眠的艺术 (六)RingQueue(中) 休眠的 ...
- kafka启动报java.net.UnknownHostException
kafka启动报java.net.UnknownHostException 参考资料: 1.https://blog.csdn.net/zdxiq000/article/details/6258765 ...
- 基于ARM的射频识别读卡器电路设计
http://tech.yktworld.com/201010/201010032128115666.html 来源:一卡通世界 作者:江小平,李中捷,余晓峰 2010-10-3 ...
- pop3密码嗅探
成品与代码可在 https://pan.baidu.com/s/1MPfU2T_6YN6mgxUL0wrZxw 下载 来说下pop协议, 英文版,https://tools.ietf.org/html ...
随机推荐
- javascript的DI
学习AngularJS的原因之一就是觉得他的DI很牛叉,为了更好的学习,在研究源码之前,想自己按照自己的思路先实现个DI,希望这个思路能够对学习源码有帮助. (function(){ var conf ...
- 15. Bypass 360主机卫士SQL注入防御(多姿势)
在服务器客户端领域,曾经出现过一款 360 主机卫士,目前已停止更新和维护,官网都打不开了,但服务器中依然经常可以看到它的身影. 从半年前的测试虚拟机里面,翻出了 360 主机卫士 Apache 版的 ...
- 【mysql存储引擎】
看你的mysql现在已提供什么存储引擎: mysql> show engines; 看你的mysql当前默认的存储引擎: mysql> show variables like '%st ...
- gitlab私服搭建
1.什么是gitlab: gitlab 是一个用于仓库管理系统的开源项目,它以git为代码管理工具,因此代码可以管到它上边来.搭建私服gitlab可以方便我们有条不紊的管理我们的代码.闲话不说,上代码 ...
- Unable to round-trip http request to upstream: EOF问题
Unable to round-trip http request to upstream: EOF, 今天我用的phpstudy环境中的网站页面忽然打不开了,报错“Unable to round-t ...
- 清橙 A1210. 光棱坦克
A1210. 光棱坦克 时间限制:1.0s 内存限制:512.0MB 总提交次数: AC次数: 平均分: 将本题分享到: 查看未格式化的试题 提交 试题讨论 ...
- 洛谷P1310 表达式的值
P1310 表达式的值 题目描述 对于1 位二进制变量定义两种运算: 运算的优先级是: 先计算括号内的,再计算括号外的. “× ”运算优先于“⊕”运算,即计算表达式时,先计算× 运算,再计算⊕运算.例 ...
- mongodb you can't add a second
问题信息: Due to limitations of the com.mongodb.BasicDBObject, you can't add a second 'createTime' expre ...
- 分析师分析业务维度,(个人制作分析思维导图Xmind)
个人在咨询公司做过分析师(分析师必须懂运营),该咨询公司主要针对电商,零售 结合公司的搭建的CRM系统及报表体系,列了个分析师分析维度,搭建公司自己的BI系统 个人经验:分析师的分析思维可以多看看艾瑞 ...
- python中深复制和浅复制区别
在python中,对象赋值实际上是对象的的引用,当创建一个对象,然后把它赋值给另外一个变量的时候,python没有拷贝这个对象,而只是拷贝了这个对象的引用,多以就出现了浅复制,即复制后原对象改变后,复 ...