基于PCM2906B的虚拟信号分析仪的设计

时间:2022-06-09 11:38:06

基于PCM2906B的虚拟信号分析仪的设计

摘 要: 针对目前市场上出现的虚拟仪器价格过于昂贵,研发了一种高性价比的虚拟信号分析仪。采用16bit STEREO AUDIO CODEC PCM2906B为硬件基础,结合C#软件开发,整体结构由通用PC机和虚拟仪器卡两部分组成,二者通过USB接口进行信号通信。信号的采集和输出由虚拟仪器卡完成,信号的处理由通用PC机通过软件进行,PC软件利用面向对象的C#语言开发。该虚拟信号仪能在大幅降低成本的同时实现了信号发生器、示波器、记录仪、频谱分析、时频分析等多种功能。该仪器具有多种功能,硬件功耗低,成本低廉,性价比高,可以在教学和实验中得到广泛的推广和应用。

关键词: PCM2906B; 虚拟信号分析仪; C#; USB接口

中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2013)16?0095?03

0 引 言

随着信息处理技术和虚拟仪器技术的发展,虚拟仪器逐渐成为现代仪器的发展方向。目前市场上出现的虚拟仪器价格过于昂贵,在实际中难以大规模应用[1]。本文设计了一种高性能价格比的虚拟信号分析仪,其整体结构由通用PC机和虚拟仪器卡两部分组成,二者通过USB接口进行信号通信。

信号的采集和输出由虚拟仪器卡完成,信号的处理由通用PC机通过软件进行,PC软件可以利用面向对象的C#语言开发。该仪器具有信号发生器、示波器、记录仪、频谱分析仪、时频分析仪等多种功能,硬件功耗低,成本低廉,性价比高,可以在教学和实验中得到广泛的推广和应用。

1 系统设计及结构

1.1 系统总体设计

整个系统由通用PC机和虚拟仪器卡两部分组成,PC机中装有分析信号和处理信号的软件,虚拟仪器卡负责信号的采集和输出,二者采用USB2.0全速通信接口。该虚拟仪器卡拥有两个输入通道和两个输出通道,通过USB接口接收从PC机上传送来的配置信息和控制命令,同时利用USB总线供电。PC机上的软件主要负责配置虚拟仪器卡,对虚拟仪器卡进行波形读取分析和传送波形数据,同时完成波形数据的显示、存储、频谱分析、时频分析等功能。

PC机软件与虚拟仪器卡两者相互配合,协调工作,共同完成信号的采集和产生。系统总体结构框图如图1所示。

1.2 系统硬件结构

虚拟仪器卡的硬件结构是以PCM2906B为核心设计,工作时由PCM2906B的内核从USB接口传送的数据流中提取出音频数据流和时钟信号,然后将其变换为标准数字音频串行数据,其中PCM2906B内部采用 TI 采样周期适应性控制跟踪系统(SpAct),利用 PLL电路分离单时钟源,因此能将噪声等抖动信号抑制到极低的水平,从而保证了良好的信号采集和产生的信号效果。虚拟仪器卡的硬件结构框图如图2所示。

2 系统硬件设计

系统硬件设计主要是指虚拟仪器卡的硬件结构设计。本系统使用TI公司的立体声音频编解码器(CODEC)——PCM2906B作为主体核心芯片。由于PCM2906B自身具备的USB协议控制器不需要编写任何软件代码便可以工作,而且其驱动程序可以利用Windows操作系统中的通用声卡驱动程序,这样就可减少大量的底层软件设计工作,简化了系统的整体软件设计。而且它的内部集成了一个16?Bit Delta?Sigma ADC,能够同时采集两路输入信号,每路输入信号的最高频率可达20 kHz,采样频率可达48 kHz;其内部还集成了一个16?Bit Delta?Sigma DAC,可同时产生两路任意波形信号,其采样率同样达到[2]48 kHz。可以利用TI公司的高速单电源轨至轨运算放大器OPA2353构建每路输入输出通道的极性变换电路和低通滤波器。根据系统的功能要求,基于PCM2906B设计的虚拟信号分析仪硬件电路主要包括USB数据接口电路、输入通道前端电路和输出通道后端电路、增益调整电路等部分。

2.1 USB数据接口电路

PCM2906B的USB数据接收接口符合USB 2.0标准,芯片上集成 USB接口全速收发器D+与VddI之间的1.5 kΩ上拉电阻使 PCM2906B的 USB接口工作在全速状态[3]。

信号按如下过程产生:当接口电路完成起始电平的恢复并与 USB总线接通后,这时PCM2906B的设置准备工作完成,PCM2906B准备接收 USB数据。在数据信号尚未送来的等待状态时,模拟输出设置为双零点零标志, ZERO为高电平。当接收到数据信号后, PCM2906B将第一批数据包(含 1 ms 的音频数据)存储到其内部FIFO存储器中,当接口电路检测到头帧信号后,PCM2906B开始产生信号。

2.2 输入通道前端电路和输出通道后端电路

从PCM2906B的特性可知,由于PCM2906B的输入通道和输出通道允许的电压范围为-0.3~VCCCI+0.3,所以需要将外界的双极性模拟信号变为符合PCM2906B特性的单极性的输入信号,以及需要将PCM2906B单极性的输出信号变为真正可用的双极性模拟信号输出。同时由于外界环境存在的各种干扰,为了得到较为纯净的输入和输出信号,抑制各种干扰信号,在每路输入和输出通道上都设计了低通滤波器。

2.3 增益调整电路

PCM2906B提供三个人机接口设备 (HID) 引脚。HID是Human Interface Devices的缩写,即人机接口设备,是USB 协议中最早提出并支持的一种设备类。典型的HID有键盘和鼠标等,其主要用于和计算机进行交互通信。鼠标也属于HID设备,USB 串行总线规范专门定义了HID 类规范[4]。在本系统中将HID0设置成可以同时停止PCM2906B的两路输出,将HID1设置成可同时放大PCM2906B的两路输出的增益,将HID2设置成可同时减小PCM2906B的两路输出的增益。

3 系统软件设计

由于本系统能实现信号采集、信号产生、频谱分析、时频分析等功能,因此软件部分设计主要包括实时显示模块、波形存储模块、后处理模块、信号生成模块、FFT模块、功率谱分析模块、时频分析模块、频谱分析模块及自相关分析模块。PC软件采用面向对象的编程语言C#开发,软件总体流程见图3[5]。软件具体模块设计略。

4 系统性能测试

系统测试时将虚拟仪器卡的两路输出分别与两路输入相连。虚拟仪器卡的一路输出设置为波形频率500 Hz的正弦信号,另一路输出设置为波形频率为1 000 Hz的正弦信号,同时在软件窗口查看两路输入信号的采集波形。

采集到的波形如图4所示。

5 结 语

本系统设计技术含量高、功能丰富且成本低廉,设计出的仪器性能价格比高,为各类实验的开展提供了有力的技术设备支持,特别是在教学和实验改革中具有十分广阔的应用前景。

参考文献

[1] 黄松龄,吴静.虚拟仪器设计基础教程[M].北京:清华大学出版社,2008.

[2] Texas Instruments. Stereo audio codec with usb interface, single?ended analog input/output, and S/PDIF datasheet [R]. USA: Texas Instruments, 2008.

[3] 张正华,王丰硕.基于PCM2902的高性能音频接口卡的研制[J].电声技术,2006(12):35?37.

[4] 杨顺,王星.基于USB接口芯片CH372的人机接口设备设计与实现[J].计算机系统应用,2010,19(4):216?218.

[5] BRADLEY J C, MILLSPAUGH A C. Programming in C#.NET [M].北京:清华大学出版社,2005.

[6] 雷国建,练峰海.基于VI技术的USB系统监控设计[J].现代电子技术,2013,36(4):151?153.

[7] 林永硕.基于USB的音频信号分析仪设计[J].现代电子技术,2012,35(21):62?64.

[8] 张辉,武攀,叶祎恒.虚拟仪器系统通用接口模块的研究与设计[J].电子科技,2010(2):90?93.

[9] 翟希述,王宝兴,范淼.基于Visual C#的串口通信程序设计[J].电子科技,2011(2):24?26.

上一篇:基于LAN的高集成度数据采集设备研制 下一篇:基于改进型选择进位加法器的32位浮点乘法器设...