基于8051F单片机的数字音频信号源的幅度控制
1 引言
音频模拟信号电路常需要在很大范围内调节电平,而高精度电路的调节范同达100 dB以上.相当于二进制线性数字18位,同时也要求具有较高的调节步进值。使用数字信号源直接改变幅值,一般只有几dB的分辨率。市面上很多音频衰减器的衰减量、衰减量步进值、特性阻抗都是特定的。但在实际应用中,需要音频衰减器具有不同的参数;而且在一些应用中还希望衰减量能够按照需要随意设计,并且可以随时调整。针对这些需求,介绍了一种基于单片机由电阻衰减器和模拟开关组成的音频控制系统。该系统可通过单片机及上位PC机设置音频信号的衰减量,控制衰减量的增减。该系统具有适用广泛,使用方便,移植性高等特点。
2 系统总体设计
基于805lF330的音频控制系统结构如图l所示,它主要由8051F330单片机、衰减器模块、控制模块等部分组成。单片机以中断方式向控制模块发送控制信号,通过控制模块改变衰减器衰减量,以产生所需衰减量的音频信号。衰减器模块是用于衰减音频信号,采用电阻衰减器网络进行设计;采用模拟开关CD4053来控制衰减量大小。上位PC机通过8051F330单片机控制衰减器模块的衰减量,以达到控制音频信号衰减量的目的。
2.1 音频衰减器模块
信号衰减器是一类用于传输系统降低信号电平,使其不产生显著畸变的无源网络,用于信号源去耦,调节电路的传输电平,或缓冲阻抗变换的影响,改善阻抗匹配。衰减器已广泛应用于无线电测试仪器、仪表、传输线、标准衰减器及邮电、通讯、信号载波、广播电视、计算机等系统中,工作频率可达到VHF(甚高频),适用于音频信号衰减。衰减器结构是根据电阻排列形式可分为T、H、π、L、O型,最常用的有T型与π型,其衰减器结构如图2所示。
图2中,zin、Zout分别为衰减器的输入、输出阻抗。在实际应用中,根据衰减器的输入、输出阻抗和所需衰减量计算电阻阻值。
2.2 控制模块设计
衰减电路控制模块如图3所示,根据若干组T型网络构成衰减器的基本单元,其衰减量可根据需要计算组合;使用开关电路以切换若干组基本单元,其控制由数字控制部分传送的二进制代码来实现。若控制A1接通,则表示R1部分被短路,总衰减量为R2+R3;同理,若控制B1接通,则表示R2部分被短路,总衰减量为Rl+R3。
控制模块中的开关电路选用三组二路模拟开关CD4053,其引脚配置如图4所示。图中,VDD与VEE为电源端,应保持VDD>VEE,且VCD-VEE等于5 V、10 V或15 V均能正常工作;VSS为接地端;INH为使能端,低有效;A、B、C为控制位;XO、Xl、Y0、Yl、ZO、Z1为输入端;X、Y、Z为输出端。当INH=O时,各引脚逻辑关系如表l所示。
2.3 音频信号源
C8051F330单片机内置一路10位电流数/模转换器,可将数字信号转化为模拟电流,输出电流由IDAC数据寄存器决定一音频信号采用DDS造波法生成,或读取预先存储在存储器内的音频信号,也可使用其他音频信号源,在此不作赘述。由于C8051F330输出的是电流信号,需要在输出端和地之间接入一只电阻R4来得到电压信号。
3 基于单片机的高精度音频控制系统实例
如图5所示,将R1~R7的7级T形电阻衰减器串联,组成基本音频衰减器通路,采用一组数控开关切换若干组基本单元接入音频通路或被短路接出,改变控制量。选用三组二路模拟开关CD4053作为数控开关切换各级衰减器接入音频通路或被短路接出,改变控制量。
以R7为例,当U5 CD413153的引脚A为高电平时,控制X引脚模拟接通X1引脚,控制节点h和g断开,R7接入音频通路产生相应衰减;U5 CD4053的A引脚为低电平时,X引脚模拟接通X0引脚,节点h和g接通短路,音频信号不经过R7衰减器。为节省单片机I/O口,利用8位串入并出移位寄存器74HCl64向CD4053输出控制信号实现集中多路输出。单片机给74LSl64输出QG~QA的控制信号,每位对应一级衰减器,若需接入某级衰减器,则对应位置为1;若不需接入该级衰减器,则该位置为0。
应用使用7级衰减器,设定衰减值:R1=1 dB、R2=2 dB、R3=4 dB、R4=8 dB、R5=16 dB、R6=32 dB,R7=40 dB,则可以满足O~103 dB,步进值为l的衰减需求。若要产生83 dB的衰减,则选接入Rl、R2、R4、R6、R7。相应地,电路中节点c和d短路,U3 CD4053的C引脚应为低电平,即QE=O,节点e与f短路,U4 CD4053的B引脚为低电平,即QC=0,对应控制信号为:0G~QA=llOl01l。若要产生29 dB的衰减,则选接入Rl、R3、R4、R5,衰减值为29 dB,对应控制信号为QG~QA=1011100。依次类推,可将O~103 dB范围内每1 dB值对应控制信号编写为数组,可预先存入C8051F330,使用时查表读出即可。
如果需要更大的衰减值,可采用更多级的衰减器。在软件设计上,可利用中断,待控制信号完全输出后,再接通主信号通路,以避免产生不必要的噪声,也避免程序跑飞。
- 自学单片机心得体会(06-17)
- 基于霍尔传感器的直流电机转速测量系统设计(11-14)
- 动态参数检测与虚拟仪器综合系统设计(11-26)
- 基于C8051F005单片机的小电阻测试仪(01-05)
- 基于MSP430F149的阻抗测量系统设计(01-15)
- 基于C8051F020单片机的多路压力测量仪(01-23)