murphy.he 发表于 2013-8-30 21:53

刚做了个单片机控制的数字音量前级+音源选择 电路板

本帖最后由 murphy.he 于 2013-8-30 22:06 编辑

先来无事,突发奇想,用数字电位器做个数字音量前级如何
于是查找发现TI有一颗这样的IC,PGA4311,还是4声道,音量增益-95.5dB到+31.5dB,256级可调
失真度很低,具体数值请参看SPEC。
于是申请样片,画板,洗板,焊接,写代码,测试,基本功能已经测试完毕,下步装箱整体再测试并调整一下软件
设计为3声道后级使用,这样一台可以做2.1也可以做中置环绕,方便组合
两组输入,使用3个继电器切换,另外增加一个外部低通滤波电路板的信号接口(输出左右声道,输入低音信号,方便接笔记本电脑类的没有低音输出的设备),
使用编码开关,带按的,就是那种类似示波器旋钮的。
接1602字符型液晶,发现信息量不够大,又买了个2402的还在路上,反正接口是兼容的。
另外还加了个18B20测温度的,可以测散热片的温度,还有一个控制风扇的电路输出,是经过三极管驱动的。
操作是默认模式下三个声道音量同时加减,也可以通过按下编码开关实现两声道和低音通道的音量单独控制,以及音源选择



murphy.he 发表于 2013-8-30 21:57

顺便无聊还做了个ADC测量主电源电压的功能。
目前是跳线到了板子的供电端上的,显示为12V
整个板子采用了12V供电,使用7805给单片机和其它芯片供电,使用一个DC-DC隔离模块提供-5V电源给PGA4311
继电器没吸合的情况下整板耗电120ma左右,

murphy.he 发表于 2013-8-30 22:01

由于使用的是12V继电器,如果使用5V继电器的话,可以省去7805
7805目前电流120mA,有点烫手,加个小散热器比较好点,由于画板时觉得电流这么小应该不会怎么烫,所以没留散热器的空间,
只能找个小散热器加上了。
前天有同事建议我加个遥控,可是淘宝上没有找到合适形状的遥控器,所以就没搞,不过板子上也有接口可以接遥控接收头,加些代码就可以实现遥控控制所有功能了
哪位兄弟有兴趣的话,可以和我联系,我这还有几片空板,可以一起玩玩

wzr200408 发表于 2013-8-31 00:00

jesonaqq 发表于 2013-8-31 00:31

不错啊。我也在搞这个东东,但是还没有出来:)

murphy.he 发表于 2013-8-31 18:34

jesonaqq 发表于 2013-8-31 00:31 static/image/common/back.gif
不错啊。我也在搞这个东东,但是还没有出来

你要是需要我的帮忙,所有资料度可以免费提供,哈哈

jesonaqq 发表于 2013-8-31 18:41

murphy.he 发表于 2013-8-31 18:34 static/image/common/back.gif
你要是需要我的帮忙,所有资料度可以免费提供,哈哈

先谢谢你:handshake。
我的第一版早做出来了,现在在做改良后的第二版。

hifidiy_user 发表于 2013-9-2 19:29

我也想去申请样品!结果TI那个电话只能填写6个数字,我晕,难道要我买啊

wzr200408 发表于 2013-9-2 21:13

youhaowaishe 发表于 2013-9-2 21:44

我也做了一个实验板 用的pga2311 目前是用独立按键控制,旋转编码器部分不是很清楚 楼主能否指点下,谢谢!

murphy.he 发表于 2013-9-3 08:36

hifidiy_user 发表于 2013-9-2 19:29 static/image/common/back.gif
我也想去申请样品!结果TI那个电话只能填写6个数字,我晕,难道要我买啊

电话是要填的,那是人家的流程,能点击免费样品的地方就是可以申请免费样品的

murphy.he 发表于 2013-9-3 08:38

youhaowaishe 发表于 2013-9-2 21:44 static/image/common/back.gif
我也做了一个实验板 用的pga2311 目前是用独立按键控制,旋转编码器部分不是很清楚 楼主能否指点下,谢谢!

旋转编码是两个引脚,其中一个接外部中断,下降沿触发,进入中断服务程序去读另外一个脚的高低,高和低就是对应左右两个方向的旋转。

murphy.he 发表于 2013-9-5 22:05

这几天买了个2402,接上去,发现效果还不错,红色的字。
已经装机调试了,没有引入可闻噪声,整体感觉挺个性的

tsyg99 发表于 2013-9-6 00:41

murphy.he 发表于 2013-9-6 13:00

tsyg99 发表于 2013-9-6 00:41 static/image/common/back.gif
很懊恼,还是不明白为什么旋转会产生高或低

看波形吧,网上有不少图片,编码开关内部的结构我也不太清楚,你可以拆开研究一下

hifidiy_user 发表于 2013-12-14 17:38

可是写不了我的手机号啊!随便写一个吗?

hifidiy_user 发表于 2013-12-17 08:52

老兄,昨天晚上去试着申请,已经死功申请了Pga2310 ,但不知能不能通过审核

aibtel 发表于 2014-10-12 21:39

学习了!

steven.ning 发表于 2014-10-12 21:57

murphy.he 发表于 2013-9-3 08:38 static/image/common/back.gif
旋转编码是两个引脚,其中一个接外部中断,下降沿触发,进入中断服务程序去读另外一个脚的高低,高和低就 ...

bit idata Last_SWA;
void ProcessSW()
{       
   if(Last_SWA&&(!SWA))
        {
                if(!SWB)
                {
                功能语句;
                }
        }
        else
                {
           功能语句;;
                }
        }
        Last_SWA=SWA;
不用接中断,用普通IO也行。SWA/SWB是接在编码器里的两个IO定义.

chrysler 发表于 2014-11-2 23:10

steven.ning 发表于 2014-10-12 21:57 static/image/common/back.gif
bit idata Last_SWA;
void ProcessSW()
{       


不用中断会丢步的吧
页: [1] 2
查看完整版本: 刚做了个单片机控制的数字音量前级+音源选择 电路板