基于AT89C51的音量控制电路与程序设计

上传人:工**** 文档编号:431904176 上传时间:2023-07-29 格式:DOCX 页数:9 大小:560.02KB
返回 下载 相关 举报
基于AT89C51的音量控制电路与程序设计_第1页
第1页 / 共9页
基于AT89C51的音量控制电路与程序设计_第2页
第2页 / 共9页
基于AT89C51的音量控制电路与程序设计_第3页
第3页 / 共9页
基于AT89C51的音量控制电路与程序设计_第4页
第4页 / 共9页
基于AT89C51的音量控制电路与程序设计_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《基于AT89C51的音量控制电路与程序设计》由会员分享,可在线阅读,更多相关《基于AT89C51的音量控制电路与程序设计(9页珍藏版)》请在金锄头文库上搜索。

1、膈基于AT89C51的音量控制电路与程序设计蚆1引言本文介绍的音量控制IC为M62429,市面上有很多类似的产品,例如:FM62429、肄CD62429、CSC62429等。其实,掌握了一两种IC的编程方法,稍作改动就很容易移植到其它产品上。M62429是日本三菱公司的音量控制IC,音量调节范围是0-83dB,控制精度每步1dB,内部电路如图一(详见M62429的使用手册)。薁羈图一M62429内部电路蒃膃2硬件电路根据图一而设计的电路如图二。图二中已省略了单片机与功放连接的其他电路,只剩下AT89C52的晶振部分、与羀M62429相关的电路、控制音量必需的按键电路等,加上电源之后,该电路可以

2、独立工作。由于AT89C52真正的串口已用于其他用途,M62429的4脚(DATA)连至AT89C52音频信号从LH1输入,其中L通道信号经过C1耦合到M62429的1脚,被控制的P2.2,M62429的5脚(CLOCK)连到AT89C52的P2.1。由这两个引脚(P2.1、P2.2)作为模拟串口与M62429通信,控制音量的数据便由这个模拟串口发出。蚈之后从2脚输出,再经C2耦合到LH2输出到后级进行放大。R通道信号经C4耦合到M62429的8脚,被控制后从7脚输出。经C3耦合至LH2输出到后级进行放大。在LH1处输入合适的音源,从LH2处就可以监听音量控制的情况。SW1为音量增加按钮。SW

3、2为音量减小按钮,SW3为复位按钮。薅芁图二M62429与单片机的连接蒀3软件设计从M62429使用手册可知,送去M62429的控制数据DATA为11位。通常的用法葿如表一:蚆表一:M62429常用的11位数据(DATA)结构蚄衿二,表一中D2D8是根据音量的大小变化需要改变的数据,其中D2D6的编码如表腿表二M62429音量衰减值与D2D6的关系蒃从表二看出,D2D6控制步长为4dB,需加上D7、D8(见表三)才能达到控制步我们设计程序的思路是:根据开机预设衰减值,用查表法查出衰减数据,然后把数据螂艿,长为1dB的要求。例如最大音量时衰减值为0dB,查表二,D2D6数据为10101,查表三,

4、D7,D8为11,所以D2D8应为1010111,根据表一,D0D10这11位数据为10101011111。同理,衰减值为-1dB时的11位数据为10101010111。由于AT89C51系列单片机处理数据是8位,由P2.2、P2.1组成的模拟串口无法一次完成11位数据的发送工作。我们只好把这11位数据分为两次发送,我们可以用先发送6位、后发送5位的方法(当然也可以用其他方法)发送。例如衰减0dB的数据10101011111,先发送前6位101010,后发送5位11111。由于AT89C51系列单片机数据为8位,我们可以在这些数据后面加上“0”补足8位。那么,衰减0dB的一组数据就成为了101

5、01000和11111000。把这组数据用十六进制数来表示的话,就是A8H,F8H。用同样的方法,可得出各个衰减值的数据。羀发送出去,发送时先发第一个数据的前6位,再发送另一数据的前5位。由于M62429的控制范围是0dB-83dB。在这个范围内,数字越大,音量越小。要增加音量,就要减少用于查表那个数字(程序中R4的值)。框图如图三。蒅膄图三程序方框图羂莆薆芃根据上述思路设计的程序如下:ORG00HM429CKEQUP2.1;M62429时钟COLCKM429DAEQUP2.2;M62429数据DATA莁膆UPVOLEQUP1.0;音量增加按键DOWNVOLEQUP1.1;音量减少按键莄MOV

6、SP,#10H莁袁袇莅螃芀蚇蒆袂虿莇芄芄腿膈MOVR4,#20;开机预设衰减值M62429:MOVA,R4;预设衰减值送ARLA;乘2MOVDPTR,#TAB;衰减数据表首址送DPTRMOVCA,A+DPTR;查出衰减数据MOV9H,A;9H、R2为一组衰减数据的两个存放单元INCDPTR;指向下一个数据MOVA,R4RLA;乘2MOVCA,A+DPTR;查出另一个衰减数据MOVR2,ACLRM429CKMOVA,9HCALLIN6BYT;发送前6位数据MOVA,R2芅莃螂袈莆蒁节蕿膄袃蚁荿芅羂CALLIN5BYT;发送后5位数据UP:MOVC,UPVOL;检测音量增加按键JCDOWN;无按下

7、,转测音量减少键CALLDELAY;有按下,延时去抖MOVC,UPVOL;再测JCDOWNJBF0,EEE;音量已是最大转EEEDECR4;音量衰减值减1CLRCCJNER4,#0,M62429;与音量最大值衰减0dB比较,未达最大,转M62429SETBF0;己是最大,建立标志JMPM62429EEE:INCR4;音量衰减值增1CLRF0肀聿芇芄薀袀肄蒂罿芆膅薁莈肆膇JMPUPDOWN:MOVC,DOWNVOL;检测音量减小键JCUPCALLDELAYMOVC,DOWNVOL;再测JCUPINCR4;音量衰减值增1CLRCCJNER4,#83,BBB;与音量最小值衰减83dB比较LJMPM6

8、2429BBB:JCM62429;R483,需修正,保证r4里的值=83JMPM62429IN6BYT:MOVR3,#6;发送6位数据子程序本文创新点:1、程序中控制数据用查表法查得,使之控制方便,容易理解。袃2、软件硬件结合紧密。以下无正文仅供个人用于学习、研究;不得用于商业用途。,.Forpersonaluseonlyinstudyandresearch;notforcommercialuse.NurfrdenpersnlichenfrStudien,Forschung,zukommerziellenZweckenverwendetwerden.Pourltudeetlarechercheuniquementdesfinspersonnelles;pasdesfinscommerciales.

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 幼儿/小学教育 > 小学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号