论坛» DIY与开源设计» 电子DIY

功放DIY焊接调试说明,加入源代码

高工
2015-02-10 17:26 1楼

1,焊接

因为是多数是贴片元件,对于刚拿到析子,很多人都是喜欢先把好焊的插件元件焊上,这样感觉焊起的会快,似乎只要再焊这几个小元件就完成了一样。这是一个不好的习惯,焊接顺序最好是先焊最不容易焊的,比如IC,再焊焊费时的,就是那些数量最多的贴片元件,最后焊那些插接件连接器之类,假如析子上有怕静电的元件,这些元件可以考虑放到最后再焊,比如一些mosfet,蓝色LED,砷化镓工艺的射频IC等,这些都是比较怕静电的,200V的静电都可以让这些元件失效半失效,人体可以感知的静电差不多在2500-3000V左右。这些元件都是在不知不觉中损坏的。此处略10000.......

言归正传,如果是新手,功放板最好先把两个两个IC焊接,LM4811脚比较密,先把PCB上的焊盘上锡,再把板子上的锡拖平整,把IC放正位置,小心方向别反了,一边用锡固定上,焊另外一边,并把锡慢慢拖干净,完了再拖固定脚位的那一边。

位号图

元件位号图 高清pdf下PCB位号图.zip

功放空板

开始焊接几个料

元件

TPA3110D2这个芯片是面是有散热焊盘的,一般这种焊盘一定要用热风枪才能搞定。不过这个板子,没有热风枪也不怕,这个散热焊盘下留一个大孔,还是先焊IC的两边的脚,然后反过来在板子的另一面再焊中间那个焊盘,因为这个焊盘散热的铜面积比较大,这个时候烙铁温度可以调得高一些。

焊完

还有四个电感,也可以先焊。两个电解电容调试时可以先不焊,不影响调试。

注意:这个板子的所有插件元件封装为了焊接时少偏移,元件孔尺寸都不太大,焊上去是很难再取下来了。

2,调试

焊好后,单片机没有程序是不会出声音的,Q3导通时TPA3110D2输出是静音的。可以编程让它单片机P1.4输出低,Q3不导通,TPA3110D2输出打开。最快的方法就是把Q3 be极短接。

静音

这个有一个写好的hex程序,参考代码看第4点。可以烧到单片机中,这个程序当插入耳机后,单片机就会打开TPA3110D2的输出。如果焊接没问题,接上喇叭,播放音频,就会有声音出来。

下载 TEST.zip

音频输入,是采用3.5耳机输入,另这一端最好也是用3.5耳机插头,可以用两个废耳机接在一起,这样可以做手机和电脑功放。如果是接机顶盒或DVD之类,可能就要用到3.5耳机和莲花插头转接线或转接头。

连花线耳机线


关于输出喇叭的接法,是不可以用3.5耳机转莲花插头这样的转接线的,这是BTL输出的,喇叭线和电源是不共地的,两个喇叭要四根线,没有公共极,3.5耳机头是三线的,有一个公共的极子,通常是电源负极。所以两个喇叭输出口,只能老老实实的用两个电气上独立的莲花头接喇叭。

连花线双头

喇叭正确的接法应该是酱紫的

正确的错误的


3,功放改进

待续。。

4,参考代码

工程文档在最下面
几个使用到的IO的宏 //指示灯 sbit LED = P1^5; //红外 sbit IR_INT0 = P3^2; //调音按键 sbit KEY_SUB = P1^2; sbit KEY_ADD = P1^3; sbit KEY_MUTE = P1^1; //检测音频线有没有接入 sbit CHECK = P1^0; //功放静音 sbit MUTE = P1^4; //MCU调音量 sbit CLOCK = P3^3; sbit UPDOWN = P3^6; 还有几个全局变量,主要是存功放和按键状态的 unsigned char uup=0; //有连续按键时用 unsigned char IRtimer; unsigned char phonejack; //有没有音频线状态 unsigned char MUTEstate = 0; //MUTE状态 //配置功放关开IO,P1.4=1时是关功放,=0时是开功放 P1M1&=~(1<<4); //P1.4(MUTE)推挽 P1M0|=(1<<4); MUTE = 1; 音量控制是这样操作的 //控制音量加 void Volume_add(void) { UINT8 iadd = 5; UPDOWN = 1; while(--iadd) Delay1ms(); CLOCK = 0; iadd = 5; while(--iadd) Delay1ms(); CLOCK = 1; } // 控制音量减 void Volume_sub(void) { UINT8 isub = 5; UPDOWN = 0; while(--isub) Delay1ms(); CLOCK = 0; isub = 5; while(--isub) Delay1ms(); CLOCK = 1; } 功放静音控制只要 MUTE = 1; //静音 MUTE = 0; //不静音(开功放) 关于检测有没有插入3.5的音频头请参考下面代码 if(CHECK == 0) //没有音频线插入 { MUTE = 1; phonejack = 0; //没有音频线 } else //有耳机 { if(phonejack == 0) { flash_LED(20); } phonejack = 1; if(MUTEstate == 1) { MUTE = 1; } else { MUTE = 0; } } 关于按键,软件上一定要做延时处理 下面是给大家一个延时的方法,高手请略过; void Scan_key(void) { UINT16 loop; if(KEY_SUB == 0) {LED = 1; loop = 10; while((KEY_SUB == 0) && (loop >0)) {--loop;Delay1ms();} if(KEY_SUB == 0) { Volume_sub(); u_sstr("-1\n\r"); flash_LED(20);; loop = 1500; while((KEY_SUB == 0) && (loop >0)) {--loop;Delay1ms();} } while(KEY_SUB == 0) { Volume_sub(); u_sstr("-1\n\r"); flash_LED(20);; loop = 200; while((KEY_SUB == 0) && (loop >0)) {--loop;Delay1ms();} } } if(KEY_ADD == 0) {LED = 1; loop = 10; while((KEY_ADD == 0) && (loop >0)) {--loop;Delay1ms();} if(KEY_ADD == 0) { Volume_add(); u_sstr("+1\n\r"); flash_LED(20); loop = 1500; while((KEY_ADD == 0) && (loop >0)) {--loop;Delay1ms();} } while(KEY_ADD == 0) { Volume_add(); u_sstr("+1\n\r"); flash_LED(20); loop = 200; while((KEY_ADD == 0) && (loop >0)) {--loop;Delay1ms();} } } if(KEY_MUTE == 0) { LED = 1; loop = 10; while((KEY_MUTE == 0) && (loop >0)) {--loop;Delay1ms();} if(MUTEstate == 1) { MUTEstate = 0; // MUTE = 0; // u_sstr("MUTE\n\r"); } else { MUTEstate = 1; // MUTE = 1; // u_sstr("CLOSE MUTE\n\r"); } flash_LED(20); while(KEY_MUTE==0) { loop = 10; while(loop >0) {--loop;Delay1ms();} } } if(CHECK == 0) //没有耳机插入 { MUTE = 1; phonejack = 0; //没有耳机 } else //有耳机 { if(phonejack == 0) { flash_LED(20); } phonejack = 1; if(MUTEstate == 1) { MUTE = 1; } else { MUTE = 0; } } } 参考工程请参考请下载STC_ClassD(anjian).zip


菜鸟
2015-02-12 09:30 2楼

刚到货,现在才看看这个原理图之类的

菜鸟
2015-02-12 09:30 3楼

刚到货,现在才看看这个原理图之类的

院士
2015-02-12 23:13 4楼

数字跟模拟就是区别大,模拟电路焊装好了就有声音,特别是电子管的电路,数字的就要写入程序。学习了,谢谢。

菜鸟
2015-02-13 00:59 5楼

请问板子输入电压的范围是多少?是78M05的最大输入电压35V吗,还是TPA3110D2的8V到26V?

(家里没12V的电源

助工
2015-02-13 08:29 6楼
焊接。。。惨痛过的教训高高告诉我们:先保证电源部分没问题。。。。
工程师
2015-02-14 11:39 7楼
嘻嘻嘻 学习了 谢谢
工程师
2015-02-19 18:10 8楼

数字功放和模拟功放一样,装好了就可以正常工作,不需要所谓的程序。

这个DIY是耳放为前置音放、D类芯片为数字功放,按理说,安装好就可以工作了。不同的是一些音量、音色、声道、保护等等通常需要用各种开关、电位器等器件来实现,这里改用单片机了,当然就要写入程序才能工作了。

高工
2015-03-06 10:58 9楼
已加放参考源代码
菜鸟
2015-03-09 18:11 10楼
在等两天估计就能收到了 先看看资料 学习一下
共53条 1/6 1 2 3 4 5 6 ›| 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]