基于Delphi的DDS可视化新型任意信号发生器
出处:edanzg 发布于:2007-04-23 11:29:32
1 引言 2 系统设计
设计中取系统时标信号频率为fr=100 MHz,输出信号每一周期由N个取样点构成,取样周期为Tr=(1/fr),则输出信号的频率为fo=fr/N,设合成信号初相为ψ0,相位累加器位数为x=32,位数为y=10,则 ![]() nψ=ψ02x/2πk为初相量化值,相移、占空比的值和分辨率分别为: ![]() 当x-y>4时,正弦输出相位截断噪声的信噪比SNRP=6.02y-3.992=68.24dB[1,3],可见相位截断后仍有较高的信躁比,幅度噪声的信噪比SNRE=6.02y+20lgr,其中r为输出波形与满刻度的峰-峰值之比,取r=1,则SNRE=72.2 dB[3,4]。 3 FPGA与分段时标设计
| ||
接口模块(interface)主要输出8位DB、24位AB、256个片选信号、读/写控制信号,寻址能力达16 MB。Reg_array是寄存器矩阵,实现MCU对FPGA及系统的控制.主要储存时钟分频系数CLK_DIV[63..0],双通道幅度控制字V[31..0]、Flash的地址、数据和控制信号REGF[63..0]等。Ping_lv是频率控制模块,完成调频、扫频、频率控制功能,输出DDS信号产生单元所需的频率控制字KA[31..0]和KB[31..0],由频率字选择模块、调频模块、扫频模块组成。
任意波形产生时,先将从计算机采集到的波形数据量化编码后通过USB到Flash存储器,从Flash中读取数据到双口RAM中。这样既能快速地产生任意波形.又能使任意波形在脱离计算机后还能继续使用。系统Flash容量为2 MB,分为32页,除了存储常规的6种波形外,还能储存26个任意波形。
本设计采用USB1.1作为通信接口,针对由PDIUSBD12实现的USB接口,可以利用Philips公司提供的EasyD12库来编写PC机应用程序。EasyD12库包含3个文件,分别是EasyD12.lib、EasyD12.dll和EasyD12.h。库文件提供了4个可以调用的函数,用于完成对PDIUSBD12端点1、端点2的读写操作。这4个函数分别为: ![]() 采用上述4个函数可以简单地完成对PDIUS-BD12的读写操作。由于本设计中通用USB数据传输模块的主要作用是由控制界面向接口模块发送各种命令及波形数据,PC机对发送的时机是十分清楚的(通常在按键或菜单选项的响应函数中出现),所以命令及数据的可靠性及实时性能得到充分的保障。 主控制界面由波形设置、任意波形、模拟调制、数字调制、扫描信号、端口设置等部分组成,利用Delphi7.0提供的强大控件对信号幅度、频率、占空比等参数实现实时控制,还有任意信号的手动制作和特殊波形(如抽样波形、正弦的谐波合成、可控数码流等)的采样。图4为数码流PC控制界面。
时域信号叠加产生是依据各种实际需要,对常规波形进行叠加。软件主要由波形构造、数据计算分析及控制组成。通过用户输入的公式及各常规波形的参数计算得出新的波形数据,然后根据数据进行描图。计算定义为时域波形数据的加、减、乘、除。 频域还原时域信号产生是采用谐波输入法。依据幅度谱和相位谱信息。利用反傅立叶变换实偶对称级数,还原为时域波形,经4 096个点数据采集,10位量化编码后得到所需波形数据。 5 研制结果与展望 (5)伪随机噪声:随机码元移位速率可调,可编程数码流:码元32位可编程输入,波特率1 kb/s~1000 kb/s,电平10mV~10 V。 实验表明:研制的样机功能多、操作方便、TFT与PC屏幕显示直观、具有独特的任意信号输入方式、性价比高,仪器还可设计对外部输入信号实时调制,直流分量应可控,由矢量分析仪产生的频谱图存储后转入信号发生器来重现时域波形的工作正在研究之中。 |
参考文献:
[1]. PDIUSBD12 datasheet //domainnameq.cn/datasheet/PDIUSBD12_544412.html.
上一篇:基于FPGA动态信号产生器设计
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,//domainnameq.cn,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- 什么是树莓派?一文快速了解树莓派基础知识2025/6/18 16:30:52
- 什么是有机液分析与有机液知识介绍2025/6/7 16:31:44
- FPGA中的双线性插值算法2025/5/29 17:16:30
- keil4和keil5的区别,哪个好?2025/5/22 17:03:33
- MOLEX 441331000高密度板对板连接器技术解析2025/4/24 11:24:50