引言
尽管WLAN手机价格相对昂贵,语音通信质量也不高,同时还缺乏漫游功能,但是由于WLAN通信具有更低的成本、更灵活的通信方式等优点,它正吸引着越来越多的商业用户。
WLAN手机(Wi-Fi手机)的特点是采用数字传输方式、全双工通信、抗干扰性好、安全性高;可以对某个IP进行呼叫;能够与局域网无缝连接,实现广播、组播等功能。Wi-Fi手机能实现一般通信系统无法实现的许多功能,未来一定会有广阔的应用前景。
本课题设计并实现了一个Wi-Fi手机——基于802.11b的数字语音通信终端。
工作原理
图1为Wi-Fi手机系统工作原理图。从图中可以看出,系统包括输入部分、输出部分和通信等模块。
输入部分
输入部分由2级组成:
1. 级提供麦克风放大和一阶预采样低通滤波。这一部分使用音频功率放大和模拟低通滤波器来实现。
2. 第二级使用MCU片上的10位ADC实现A/D转换。其主要工作是通过A/D采样,获取音频PCM码流。
在通信系统中,一般话音采样频率达到8KHz就可以得到较好的效果。在本系统中,A/D采样频率定为8KHz,即每125ms采样一个点。本方案中,MCU选用了基于ARM核的LPC2119,LPC2119有10位片内ADC,这里只取其高8位,获得8位的采样值。因此,系统输入部分得到的是8KHz的8位PCM音频数据。这些采样的数据经过打包后就可从网络发送出去。
输出部分
输出部分也分为2级:
1. 级是D/A转换过程。由于系统采用的MCU没有内置的DAC,因此采用PWM实现D/A转换的功能。
2. 第二级是一个模拟低通滤波器,它把PWM的数字输出脉冲转换成一个模拟信号。
通信模块部分
通信模块利用PCMCIA总线的802.11b网络接口实现无线网络通信。由MCU驱动无线网卡,并实现TCP/IP协议栈。通过TCP建立端与端的连接。由于语音通信的特点,音频数据通过UDP进行通信。
无线局域网的工作模式一般分为两种:Infrastructure和Ad-hoc。Infrastructure是指通过AP(Access Point)互连的工作模式。它主要在媒体存取控制层(MAC)中扮演无线工作站及有线局域网络的桥梁。 Ad-hoc方式把一组需要互相通信的无线网卡的BSSID设为相同值来组网。本系统工作在Ad-hoc模式下。
本系统采用基于Intersil PRISM 芯片组的802.11b无线网卡。PRISM媒体访问控制器(Medium Access Controller ,PRISM MAC)提供了以下服务:
?以802.3或802.11帧格式发送数据报文。
?接收或转发802.3或802.11帧格式的数据报文。
?诸如连接、验证、断开连接等状态改变信息。
?配置各种802.11b无线网络的操作参数。
PRISM MAC提供给用户一系列的接口,以方便驱动、操作基于PRISM的无线设备。主机是通过一组接口寄存器和PRISM MAC进行通信的。对PRISM MAC成功初始化后就可以接收或发送数据。
图2是无线网络的工作层次图。无线网络控制器提供了逻辑链路层协议,MCU接收到帧数据后要进行协议的分析,这是TCP/IP协议栈的主要工作。TCP/IP协议栈模块使用底层的硬件设备驱动模块来接收和发送数据,同时给其上层应用提供一些简单、易用的接口。
硬件描述
从硬件层面上看,系统主要包括电源管理、音频处理和无线通信三部分。系统硬件结构如图3所示。
对移动或便携式设备等使用电池供电的设备来讲,电源管理是非常重要的部分。由于ARM7 MCU需要3.3V电源和1.8V内核供电电源,本系统使用LP3985和LP3984两种超低压降稳压器获得3.3V和1.8V的电压,当电池电压跌至3.4V时,系统仍能正常工作。另外、无线网卡是工作在5V电压下的,因此使用高效的升压DC/DC 变换器LM2623。
系统的输入模块实现一阶预采样低通滤波和信号放大。输出模块中MCU的PWM信号经过两级低通滤波、通过音频功率放大后,输出到扬声器。这部分电路用到了四运放LMC6484和音频功率放大器LM4900。
LMC6484是COMS工艺的运算放大器,具有功耗低、增益高和轨对轨输出等特点,适用于低工作电压环境。
LM4900能够在较低的工作电压下获得较大的功率放大和较小的信号失真度。3.3V供电时,在16Ω的负载下LM4900能够提供175mW左右的持续平均功率。
软件设计
本系统软件部分主要包括网络驱动、TCP/IP协议以及收发数据、输入/输出的调度和协调等用户程序。
硬件初始化
硬件初始化主要负责对ADC、定时器、PWM等硬件外设进行初始化,这是系统正常工作的关键。由于系统音频的采样频率是8KHz,因此需要一个125ms的定时器。另外硬件初始化还包括键盘、LED和模拟器件使能等工作。硬件初始化的具体实现不做详细论述。
无线网络驱动
PRISM MAC提供给用户一系列的接口,来驱动基于PRISM的无线设备。主机通过一组接口寄存器和PRISM MAC进行通信。表1列出了PRISM MAC的常用寄存器及其说明。
PRISM MAC的操作主要是通过主机向PRISM MAC的命令寄存器发命令来实现的,每个命令表示一个特殊的处理动作,当命令执行结束时,可以通过状态寄存器来读出执行的结果。表2是一些常用的命令及其说明。
成功驱动PRISM MAC后,该模块提供一些函数给上层使用,如:查询NIC状态、是否有数据被收到、获取数据和发送数据等。
TCP/IP协议栈
当系统从无线网络接口接收到一帧数据,TCP/IP协议栈要逐层计算并去除协议头,直到取出有效数据。同理,如果应用层要发送数据,则要逐层计算并叠加协议头,通过以太网发出数据。图4是TCP/IP协议栈接收数据的处理流程。
用户程序
在所有以上工作都正常完成后,系统进入查询状态。主要查询是否有键盘事件和网络事件。通过呼叫键确定主叫方,主叫方发出呼叫请求给被叫方,如果被叫方同意建立通信(按OK键,并发出响应报文),则建立通信连接。
通信连接建立后,通信的任意一方就需要在每125ms内做A/D采样,同时往PWM填一个8位数据。系统主循环中,随时检测A/D采样数据是否达到特定数量,如果达到,启动发送程序,把数据包发送出去。
结语
本课题设计并实现了一个基于802.11b的Wi-Fi手机原型系统,从测试的结果来看,基本达到了设计要求。实验板能够和连接在AP网络上的PC测试平台进行基本的语音通信。实验也表明了美国国家半导体的电源管理、运算放大器等低功耗、高效率器件确实非常适合在便携式设备、无线应用系统上使用。
当然,系统还有一些不足之处,首先,由于802.11b无线设备的功耗较大,这将影响系统在便携式设备中的应用。另外,在本系统中也未能考虑回声消除、压缩等问题。希望能在以后的研究中进一步探索VoWLAN的相关技术及其应用。■
参考文献
[1]. LPC2119 datasheet https://www.dzsc.com/datasheet/LPC2119_454520.html.
[2]. LP3985 datasheet https://www.dzsc.com/datasheet/LP3985_1001548.html.
[3]. LP3984 datasheet https://www.dzsc.com/datasheet/LP3984_1001538.html.
[4]. LM2623 datasheet https://www.dzsc.com/datasheet/LM2623_999730.html.
[5]. LMC6484 datasheet https://www.dzsc.com/datasheet/LMC6484_843837.html.
[6]. LM4900 datasheet https://www.dzsc.com/datasheet/LM4900_1120402.html.
[7]. 金纯、陈林星、杨吉云编著. IEEE 802.11无线局域网. 电子工业出版社,2004年1月
[8]. Jeremy Bentham . TCP/IP Lean Web Servers for Embeded System,2E . 机械工业出版社 , 2003年5月
[9]. Douglas E. Comer. Internetworking With TCP/IP Vol I: Principles,Protocols,and Architectures Fourth Edition . 电子工业出版社, 2003年7月
[10]. LPC2110 USER MANUAL. 2004年3月
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。