当前位置:高校自动化网 >> fpga >> 浏览文章

DDS入门学习

文章来源:ednchina 作者:zxl2431


该文章讲述了DDS入门学习.

 

 

         在

对DDS稍微有了一点了解后,我就迫不及待的想试一下,手上正好有DE0的板子,DA也有。哎,总觉得自己这样不好在对一个东西还没有整体的认识之前就贸然下手,多半会是个悲剧,特别是做我们这个一般就是生产一堆电子垃圾,然后发现这个搞不好。以后不这样,要稳住。

          我对DDS还不是很懂,写的都是自己的理解(很可能是错的),电路其实很简单,DA是用的并行的DAC7821,12位。控制信号极简单一个片选CS和一个写数据WR,在CS和WR为低的时候把12位数据送出去就行了,没做基准电压,因为这只是实验,我把电源电压和参考电压都接到了3.3V,再DA后面先加一个运放,实现I/V转换,我用的OPA2277里面有两个运放,低噪声的,外围电路也很简单,DAC出来以后的第一级I/V转换电阻都不需要,出来的电压肯定是(-3.3V到0V),为了得到正弦波这肯定是不行的,后面再加一级放大,其实就是个加法器,把第一级的(-3.3V到0V)再反相放大2倍,就会得到(0V到6.6V的电压),加法器的另一路是基准的方向跟随得到(-3.3V),两者相加就是正负3.3V变化,说这么多也没说清楚,直接上图:

点击浏览下一页   

           在V代码方面,分了三部分:1,订制ROM,2,分频部分,3,DAC7821控制器。整体的思路:在分频模块系统时钟先经分频,后面与分的时钟信号clk_fp为基础,来一个clk_fp把ROM的地址加一送给rom,并把相应的数据出去来,同时clk_fp信号还是DAC控制器的开始转换信号,在DAC控制器模块会检测clk_fp的下降沿,来一个下降沿,转换一次数据。其实在整个工程中订制ROM是比较难搞的,其他的还好。先要确定一个周期内你取多少个点,这个很重要,它决定了系统的精度。在EXCEL里面算的,再算正弦值,去掉小数部分,最后还要把他转换成Q ii里面的.mif的那种格式,才能复制,粘贴,很是繁琐。正弦波是出来了,但是频率好像不对。明天把整个系统完善一下,在贴出来。(未完待续)

 

相关文章:
  • SOPC中自定义外设和自定义指令性能分析
  • Verilog HDL 建模教程2 - 低级建模-结构和准则
  • Verilog学习笔记1- 综合练习-基于SF-EP1V2的SMG接口设计-前言
  • 上一篇:NIOSII那些事儿REV6.0 最新版发布
    下一篇:破解ModelSim-Altera的方法
    最近更新