首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于ARM9的嵌入式网络语音通信终端

基于ARM9的嵌入式网络语音通信终端

传统的语音通信是以公共交换电话网(PSTN)为语音系统进行话音交流,该系统以电路交换为通信基础,信道利用率低、通信资费较高。而随着通信技术和网络的快速发展,越来越多的用户采用IP网络进行语音通信与视频通话,该通信系统采用分组交换为基础,具有灵活的业务扩展能力和低廉的话费价格。从2013年开始到如今,工信部已经发放了两批虚拟运营商牌照,此举必然会进一步推动国内市场的网络语音发展。本文采用嵌入式处理器、以太网控制芯片、音频处理芯片设计出一款语音通信终端,该终端通过音频采集、播放语音、处理器进行数据处理,通过网卡进行数据传送与接收,从而实现终端的语音通信功能。1 硬件电路设计网络语音终端系统硬件由微处理器、以太网通信模块、音频处理模块、电源等模块组成。该终端系统各个模块之间进行数据交互的示意图如图1所示。
图1 系统模块数据交互图

网络语音终端启动音频模块后,从麦克风拾取语音进行A/D转换采集,把语音信号转换为数字信号,经I2S总线送给处理器处理,并通过以太网通信模块把数据发送到IP网络上;从IP网络上把数据取出,经处理器处理后,由I2S总线送给音频模块进行D/A转换,然后把语音信号送给扬声器播放语音。系统采用S3C2440微处理器实现数据处理,利用DM9000CEP以太网控制芯片来实现与IP网交互,并且采用UDA1341TS音频芯片进行语音采集及播放。其他接口电路比较常见,这里不再赘述。1.1 以太网通信模块主控芯片采用三星公司的S3C2440通用32位微处理器,该处理器采用ARM920内核,具有低功耗、处理计算能力强等特点。以太网控制芯片采用DAVICOM(联杰)公司的DM9000CEP芯片。该芯片支持16位数据传输,集成10/100M自适应收发器,可以自动协调功能将自动完成配置以最大限度地适合其线路带宽,且支持IEEE802.3x全双工流量控制。为实现DM9000CEP与S3C2440的连接,对两者间的数据、地址、控制三大总线进行连接和转换。由于S3C2440是32位微处理器,可寻址1G的地址空间,但其只有27根地址线,理论上只能寻址2的27次方(即128M)的地址范围。所以引出了8根BANK线(对应nGCS0~nGCS7),用这8根线来选通和关闭不同的存储器,实现1G地址空间的寻址。本文DM9000与S3C2440之间数据交换,是通过NGCS4线选择基址为0x2000 0000来实现的。图2给出了S3C2440与DM9000CEP的连接方法。
图2 DM9000CEP与S3C2440的接口图

1.2 音频处理模块音频处理芯片选用Philips公司的UDA1341TS音频芯片,该芯片内部集成了立体声的ADC、DAC,可以实现模拟信号和数字信号的相互转换,并可用可编程增益控制(PGA)和自动增益控制(AGC)来对模拟信号进行控制,该芯片还提供数字信号处理功能。微处理器通过L3总线接口对音频芯片进行控制。其与处理器连接图如图3所示。
图3 UDA1341TS与S3C2440的接口图

UDA1341TS音频芯片提供一组I2S总线接口和一组L3总线接口。其中,I2S总线接口包括音频系统时钟线(SYSCLK)、位时钟输入信号线(BCK)、字选择输入线(WS)、数据输出信号线(DATAO)、数据输入信号线(DATAI)。而L3总线接口由时钟线、数据线以及模式选择线组成。S3C 2440处理器通过这两组总线接口实现与UDA1341TS芯片之间的音频数据交互及控制。2 软件实现网络语音终端系统软件部分主要由系统初始化、语音采集播放模块、网络通信模块等部分构成。2.1 系统初始化使用UDA1341TS芯片与I)M9000CEP芯片之前,需要对芯片内部的寄存器进行初始化。DM9000CEP芯片的初始化设置工作方式:通过CMD与ADDR2引脚相连,高电平时为数据端口,低电平时为地址端口。CS与NGCS4引脚相连,选择DM9000CEP的端口基址为0x2000 0000,偏移300个单位。发送给DM9000的地址信息固定放在0x2000 0300上,把存放在该地址的数据放在0x2000 0304,采用此方式可对DM9000CEP内部的寄存器进行操作,如启动、复位、TX控制、RX控制以及MAC地址初始化等。其代码如下:
继承事业,薪火相传
返回列表