电设总结1——DDS

填坑了、填坑了

对于DDS信号发生器,当时我做的是2005年的电子设计国赛题,到如今基本已经不可能再出DDS的题了……

抛开题目,对于DDS信号的发生方案比较常用的有以下几种(写出来不是为了别的,只是以后在写实验报告的时候可以有多几个可以叉掉的方案,让你的方案更加高大上一些)

1、单片机产生:我尝试过用STM32通过DMA和DAC输出(这里不用DMA的话可能勉强上1k,但DMA可以到几十K,当然如果主频够高的话另说)。

2、FPGA产生(DDS的主流方法):FPGA内部开辟一片ram存储正弦、余弦等数据,然后通过带一块DAC输出(DAC的话,并行上兆DAC908 902 904),针对AM、FM等可以在FPGA内部自行相乘然后输出。

3、专用DDS芯片(这大概就是DDS的题目基本没了的原因):AD9959、AD9910,前者是200M正弦信号发生器,后者是任意波形的发生器(内部自带rom,可以写rom来输出波形, 400 MHz模拟输出 )

DDS目前只是多作为电设的一些信号发生器,而不会专门出这类的题目,不过用来入门练手还是很OK的。在后续的电设中专用的DDS芯片使用率反而是最高(譬如19国赛D题,我们就直接拿9959产生了)

回归正题,具体的设计方案已经不太记得,但有两点注意事项,主要就注意两个点:

1、发挥部分的幅值可调

对于幅值最先容易想到的还是直接改输入DAC的code,通过修改code来降低幅值,但这个做法在幅值较低的时候他的精度会下降,因此不作为一个好的办法。

比较好的办法是使用DAC的外部参考,如图是DAC908数据手册中外部参考配置的图,在芯片的INT/EXT上接入高电平,启动外部参考,之后在REF引脚上外挂一个速度较慢的DAC,例如tlv5636(可以用单片机控制),以此来调整DAC输出的最大幅值,同时也不会过分降低输出的精度。

2、信号调制

对于信号的产生,可以在FPGA内部使用乘法器进行相乘得到。

对于信号的观测,主要说一下FSK和PSK,这两种波形在示波器上都表现的差不多,因此具体观测的话建议用星座图来观察。

头像

SNinfinite

立志成为Double E的程序猿

You may also like...

发表评论

电子邮件地址不会被公开。 必填项已用*标注