基于单片机和RTL8019AS芯片的音频峰值采集系统设计

2021-06-21 17:43 来源:电子说

广播信号最终是通过节目制作与播出、信号传输与传输这几个环节在听者端听到的,各个环节的工作状态会对最终的广播质量产生影响。为了全面监控广播信号广播过程中多链路的信号质量,监控高频信号和低频信号(音频基带信号)的音频峰值,音频峰值监控终端需要监控广播端、发射端和解调后的音频信号。一般电台的制作、播出、发射、监控控制终端不在一个地方。以上海为例:虹桥路广播大厦制作播出;发射端在东方明珠电视塔内;监控中心位于北京路外滩。最好的监控方法是从不同的地方采集数据,然后将采集到的数据通过内部局域网传输到监控中心进行集中分析处理。

1原理框图

C8051F020是美国硅实验室生产的8051系列全集成混合信号ISP Flash微控制器。

基于C805lF020的音频峰值采集终端输入平衡的音频信号,通过减法电路、增益调节电路、负波形反相电路、检测电路、射极跟随器电路和分压器电路,利用单片机内部的8位和12位A/D转换器,可以一次采集16路音频峰值数据。C8051F020单片机将峰值数据和GPS(全球定位系统)时间打包成应用层数据,最后通过UDP层、ip层和以太网层协议打包成以太网数据包,通过以太网接口芯片RTL8019AS发送到局域网。原理框图如图1所示。

基于微控制器和RTL8019AS芯片实现音频峰值采集系统的设计

2峰值采集电路分析

音频峰值采集电路的输入部分是减法电路,如图2所示。输入信号可以是平衡的音频信号:

三级运算放大器电路是负波形反相电路。当信号正相时,D1导通,电路为电压跟随电路:V3=V2,其中V2是V2信号的正相电压部分。

当信号为负相时,D2导通,电路表现出反比放大电路的特性。假设R9=R10=10 k:

其中V2是V2信号的负相电压部分。

因此,在第三级运算放大器之后:V3=V2-V2-1

二极管D3采用检测二极管,与电容C5构成检测电路;电阻器R12、R13和R14是电压调零网络;由R15和R16组成的分压电路将信号范围调整到c 8051 f 020 a/d转换的电压范围。模数转换子程序如下:

void ADC0_and_ADCl(无符号char xdata*adc0,无符号

char xdata*adcl){

无符号字符I;

ADOINT=0:

ADClCN=ADClCN0xDF:

for(I=0;I《8;i ){

AMXOSL=I;//选择ADC0/ADCl的输入端口

AMXlSL=i:

ADOBUSY=1:

ADClCN=A13(21CN 10x10:

while((ADClCN &0x 20)==O);//等待ADCl数据转换完成

ADClCN=ADClCN&0xDF:

adcl=ADCl

while(阿道nt==O);//等待ADC0数据转换完成

ADOINT=0;

adc0=ADCOH

}

}

3网络传输技术要点

网络传输部分主要负责将采样的音频峰值信息和采集时间通过以太网发送到目标PC进行数据处理。表1列出了应用层协议。

应用层协议调用UDP。c将应用层数据打包成UDP包,绑定到目标地址发送。UDP传输的使用主要基于以下考虑:

(1) TCP需要目标连接

,方式复杂,会消耗单片机大量时间资源。以往的经验表明会出现连接不可靠或断开的情况。

②有大量的、实时的、长时间的音频峰值数据发送,UDP方式更适合这种应用。

一般指定的目标地址为IP地址,要得到目标机器的以太网地址,需要ARP协议(地址解析协议)的支持。以下是接收到ARP包后的处理程序:

void arp_rcve(UCHAR xdata*inbuf){

//是否收到有效的ARP包

//查看是否有已收到的IP地址,如果有则更新入口和重

//启时间

if(arp一》dest_ipaddr!=my_ipaddr)return;//目标地址

//不指向自己,返回

//找空白的IP地址储存条目。没有找到空白的lP地址

//储存条目,找到最旧的条目并替换。找不到最旧的条

//目,不替换

if(arp一》message_type==ARP_RESPONSE){//收到

//ARP回应包

//如果本机处于等待ARP回应状态,回应的IP是要等待

//的IP地址

if((waiting_for_arp)&&(wait.ipaddr==arp一》

Source_ipaddr)){

waiting_for_arp=FALSE;//清除等待标志

ip_send(waic buf.wait.ipaddr,wait.pmto_id,wait.len);

}

}

else if(arp一》message_type==ARP_REQUEST){

arp_send(arp一》source_hwaddr,arp一》source_ipad—

dr,ARP_RESPONSE);

}//如果收到ARP请求包,发送ARP请求回应

ARP协议会定时访问ARP存储缓冲,如果缓冲中的条目生命时间到达,ARP协议会将该条目删除。为了保证数据发送目标地址的硬件地址不被移去,程序中硬性规定ARP缓冲中目的地址的ARP条目不会因为时间而移去。

void age arp_cache(void){

UCHARi;

for(i=0;i

//目的地址的ARP条目不会因为时间而移去

if(arp_cache.ipaddr!=udp_dest_ipaddr_rw){

if((arp_cache.ipaddr!=0)&&(arp_cache.

timer)){

arp cache.timer一一;

//生命时间到达.条目的IP地址项清零

if(arp_cache.timer==O)arp_

cache.ipaddr=01

}

}

}

}

网络传送的硬件部分由C8051F020和RTL8019AS组成,构成10M以太网接口。以太网和IP地址可通过串口配置保存在Flash中,C8051F010上电后将以太网地址传送给RTL8019AS。RTL8019AS初始化后完成以太网层数据包的接收和发送。

4 结 语

基于C8051F020单片机的音频峰值采集终端具有高稳定性和网络传输的特点,满足了广播监测网络中长时间、不间断和远距离的要求,目前已成功应用到广播监测网络中。

责任编辑:gt

延伸 · 阅读