0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于C8051F020单片机与RTL8019AS的音频峰值采集终端设计

电子设计 来源:郭婷 作者:电子设计 2018-12-21 08:35 次阅读

广播信号经节目制作播出、信号传送、发射等环节,最终在听众用户端收听,其中各个环节的系统工作状态都会对最终的播出质量产生影响。为全面监测广播信号播出过程中多个环节的信号质量,同时对高周信号和低周信号(音频基带信号)的音频峰值进行监测,就要求音频峰值监测终端对广播信号播出端、发射端以及解调后的音频信号进行监测。一般电台的制作播出端、发射端、监测控制端不在同一地点。以上海为例:制作播出在虹桥路广播大厦;发射端在东方明珠电视塔;监测中心在北京路外滩。最好的监测方法就是各地点分别采集,再通过内部的局域网将采集的数据传送到监测中心集中分析处理。

1原理框图

C8051F020是美国Silicon Laboratories公司生产的8051系列完全集成的混合信号ISP Flash微控制器

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

基于C8051F020单片机与RTL8019AS的音频峰值采集终端设计

基于C8051F020单片机与RTL8019AS的音频峰值采集终端设计

2峰值采集电路分析

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

基于C8051F020单片机与RTL8019AS的音频峰值采集终端设计

将R2、R3、R4、R5取为相等阻值,则可以得到:

V1=V+—V-

二级运放电路为反相比例放大器,可以调整信号的增益:

基于C8051F020单片机与RTL8019AS的音频峰值采集终端设计

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

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

基于C8051F020单片机与RTL8019AS的音频峰值采集终端设计

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

所以经过第三级运放以后:V3=V2+一V2一

二极管D3采用检波二极管,与电容C5组成检波电路;电阻R12、R13和R14为电压调零网络;R15和R16组成的分压电路将信号范围调整进了C8051F020的A/D转换的电压范围。模数转换子程序如下:

void ADC0_and_ADCl(unsigned char xdata*adc0,unsigned

char xdata*adcl){

unsigned char i;

ADOINT=0:

ADClCN=ADClCN & 0xDF:

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

AMXOSL=i;//选择ADC0/ADCl的输人端口

AMXlSL=i:

ADOBUSY=1:

ADClCN=A13(21CN 1 0x10:

while((ADClCN&0x20)==O);//等待ADCl数据转换结束

ADClCN=ADClCN&0xDF:

adcl[i]=ADCl;

while(ADOlNT==O);//等待ADC0数据转换结束

ADOINT=0;

adc0[i]=ADCOH;

}

}

3网络传送技术要点

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

基于C8051F020单片机与RTL8019AS的音频峰值采集终端设计

应用层协议调用UDP.C将应用层数据打包成UDP包,并绑定目标地址发送。使用UDP传送方式主要基于以下考虑:

①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《 SPAN》

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

if(arp_cache[i].ipaddr!=udp_dest_ipaddr_rw){

if((arp_cache[i].ipaddr!=0)&&(arp_cache[i].

timer)){

arp cache[i].timer一一;

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

if(arp_cache[i].timer==O)arp_

cache[i].ipaddr=01

}

}

}

}

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

结 语

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    6734

    浏览量

    147371
  • 单片机
    +关注

    关注

    5991

    文章

    43904

    浏览量

    619626
  • 以太网
    +关注

    关注

    40

    文章

    5005

    浏览量

    165952
收藏 人收藏

    评论

    相关推荐

    用51单片机控制RTL8019AS实现以太网通讯

    ;gt;RTL8019AS的接口电路,实现的网络接口采用UTP(无屏蔽双绞线)RJ-45接口。图2给出了89C52单片机控制RTL8019AS.html">
    发表于 06-28 10:39

    关于c8051f020的一些问题

    我刚学c8051f020单片机,建立工程时,需要选择器件,找不到c8051f020这个器件。还有就是一个语句:***itp1=P1^0这种语句是用来定义端口的,我着了老半天找不到怎么定义这些引脚的方法的介绍,完全不懂,希望大哥们
    发表于 06-14 18:04

    单片机基于C8051F020的触摸屏驱动控制

    单片机基于C8051F020的触摸屏驱动控制
    发表于 08-17 21:01

    C8051F020单片机有人搞过吗?

    因为参加电子大赛,指导老师让我们用C8051f020单片机,有人用过这个单片机吗?求交流QQ:393370479
    发表于 07-01 19:26

    C8051F020单片机中文资料

    新华龙C8051F020单片机中文资料 有需要的来看看
    发表于 07-15 21:20

    C8051F31X、C8051F020系列单片机中英文数据手册

    C8051F31X、C8051F020系列单片机中英文数据手册
    发表于 03-27 16:53

    用51单片机控制RTL8019AS实现以太网通讯

    用51单片机控制RTL8019AS实现以太网通讯
    发表于 10-22 11:13

    以太网控制器RTL8019AS资料推荐

    以太网控制器RTL8019AS资料下载内容包括:RTL8019AS功能和特性RTL8019AS引脚功能
    发表于 03-30 06:37

    C8051F020单片MCU微处理器相关资料分享

    64个数字I/O 引脚。C8051F020单片机[8]是集成在一块芯片上的混合信号系统级单片机,芯片上有8个8位数字I/O 端口,其中四个与标准的8051的端口(P0、P1、P2、P3
    发表于 05-19 06:27

    如何用51单片机控制RTL8019AS实现以太网通讯?

    如何用51单片机控制RTL8019AS实现以太网通讯?
    发表于 05-27 07:14

    怎样去设计一种音频峰值采集终端系统?

    基于C8051F020单片机音频峰值采集终端有什么优点?怎样去设计一种基于
    发表于 06-04 06:59

    请教大神lpc2104和RTL8019AS的接口问题

    请教:lpc2104 和 RTL8019AS 的接口问题. 以前在 C8051F 上做,高低地址是固定的,容易接口,RTL8019 映射地址也容易算出.现在 lpc2104 是 32 位的,32 个
    发表于 04-19 16:51

    基于C8051F020单片机的多路压力测量仪

    介绍了一种基于C8051F020单片机的多路压力测量仪。该测量仪选用电阻应变式压力传感器采集压力信号,并经放大电路处理后送入C8051F020单片机
    发表于 12-21 10:21 118次下载

    混合信号系统级单片机C8051F020资料

    混合信号系统级单片机C8051F020资料 C8051F020/1/2/3 器件是完全集
    发表于 10-08 12:56 2651次阅读
    混合信号系统级<b class='flag-5'>单片机</b><b class='flag-5'>C8051F020</b>资料

    C8051F020单片机的直流稳压电源设计

    C8051F020单片机的直流稳压电源设计(现代电源技术试卷)-基于C8051F020单片机的直流稳压电源设计               
    发表于 09-18 13:15 21次下载
    <b class='flag-5'>C8051F020</b><b class='flag-5'>单片机</b>的直流稳压电源设计