差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
波形信号发生器设计 [2019/08/09 15:30]
gongyu
波形信号发生器设计 [2019/08/09 15:32]
gongyu
行 1: 行 1:
-=====波形信号发生器设计=====+### 波形信号发生器设计
  
 ----- -----
  
-====实验任务====+####实验任务
  
   * 任务:基于 STEP-MAX10M08核心板 和 STEP BaseBoard V3.0底板 完成波形信号发生器设计并观察调试结果   * 任务:基于 STEP-MAX10M08核心板 和 STEP BaseBoard V3.0底板 完成波形信号发生器设计并观察调试结果
行 9: 行 9:
   * 解析:[[FPGA]]驱动旋转编码器得到操作信息,通过逻辑控制波形和频率寄存器,设计[[DDS]]模块根据波形和频率寄存器控制波形数据的输出,波形数据通过串行DAC驱动模块传送到底板的[[DAC]]芯片进行转换,得到波形信号输出。   * 解析:[[FPGA]]驱动旋转编码器得到操作信息,通过逻辑控制波形和频率寄存器,设计[[DDS]]模块根据波形和频率寄存器控制波形数据的输出,波形数据通过串行DAC驱动模块传送到底板的[[DAC]]芯片进行转换,得到波形信号输出。
  
-====实验目的====+#### 实验目的
  
 前面章节我们学习了旋转编码器的工作原理及驱动方法,本实验主要学习[[DDS]]技术的原理及实现,IP核rom模块的例化使用,串行[[DAC]]芯片DAC081S101的驱动设计。 前面章节我们学习了旋转编码器的工作原理及驱动方法,本实验主要学习[[DDS]]技术的原理及实现,IP核rom模块的例化使用,串行[[DAC]]芯片DAC081S101的驱动设计。
行 17: 行 17:
   * 完成波形信号发生器设计实现   * 完成波形信号发生器设计实现
  
-====设计框图====+#### 设计框图
  
 根据前面的实验解析我们可以得知,该设计总体可以拆分成如下功能模块实现, 根据前面的实验解析我们可以得知,该设计总体可以拆分成如下功能模块实现,
行 30: 行 30:
  
  
 +#### 实验原理
  
- +##### DAC及DDS介绍
- +
-====实验原理==== +
- +
-===DAC及DDS介绍===+
  
 上一节我们学习了[[ADC]]的相关知识,[[DAC]]与[[ADC]]功能相反,DAC是数字模拟转换器(英语:Digital to analog converter,英文缩写:DAC)是一种将数字信号转换为模拟信号(以电流、电压或电荷的形式)的设备。在很多数字系统中(例如计算机),信号以数字方式存储和传输,而数字模拟转换器可以将这样的信号转换为模拟信号,从而使得它们能够被外界(人或其他非数字系统)识别。 上一节我们学习了[[ADC]]的相关知识,[[DAC]]与[[ADC]]功能相反,DAC是数字模拟转换器(英语:Digital to analog converter,英文缩写:DAC)是一种将数字信号转换为模拟信号(以电流、电压或电荷的形式)的设备。在很多数字系统中(例如计算机),信号以数字方式存储和传输,而数字模拟转换器可以将这样的信号转换为模拟信号,从而使得它们能够被外界(人或其他非数字系统)识别。
行 49: 行 46:
 {{:​8-DDS框图.png?​800|DDS框图}} {{:​8-DDS框图.png?​800|DDS框图}}
  
-===DAC模块电路连接===+##### DAC模块电路连接
  
 这里我们以STEP BaseBoard V3.0底板上的DAC模块电路,其电路图如下: 这里我们以STEP BaseBoard V3.0底板上的DAC模块电路,其电路图如下:
行 57: 行 54:
 如[[DAC]]模块电路所示,[[FPGA]]直接连接DAC081S101芯片的控制端,[[ADC]]有6个管脚,2脚VCC为VCC和Vref功能复用,即VCC = Vref。[[DAC]]后端是运放电路LMV721,运放模块为电压跟随电路,再往后端射频端子输出。 如[[DAC]]模块电路所示,[[FPGA]]直接连接DAC081S101芯片的控制端,[[ADC]]有6个管脚,2脚VCC为VCC和Vref功能复用,即VCC = Vref。[[DAC]]后端是运放电路LMV721,运放模块为电压跟随电路,再往后端射频端子输出。
  
-===DAC模块驱动设计===+##### DAC模块驱动设计
  
 前面我们了解DAC081S101芯片和FPGA之间连接有三根线(sync、clk、din),兼容三线SPI总线,关于SPI串行总线上节已详细介绍,这里我们直接查看DAC081S101的芯片手册。 前面我们了解DAC081S101芯片和FPGA之间连接有三根线(sync、clk、din),兼容三线SPI总线,关于SPI串行总线上节已详细介绍,这里我们直接查看DAC081S101的芯片手册。
行 133: 行 130:
 </​code>​ </​code>​
  
-===DDS设计实现===+##### DDS设计实现
  
 {{:​8-波表数据示意图.png?​600|波表数据示意图}} {{:​8-波表数据示意图.png?​600|波表数据示意图}}
行 269: 行 266:
 </​code>​ </​code>​
  
-===系统总体实现===+##### 系统总体实现
  
 底板上旋转编码器带有按键功能,我们使用按键消抖模块完成按键信号的消抖处理,前面章节我们还学习了旋转编码器旋转功能的驱动,刚刚讲到控制波形信号发生器的波形选择和频率输出其实就是控制两个端口参数wave和f_inc,所以从旋转编码器的驱动输出到DDS端口参数的控制,我们还需要一个逻辑模块。 底板上旋转编码器带有按键功能,我们使用按键消抖模块完成按键信号的消抖处理,前面章节我们还学习了旋转编码器旋转功能的驱动,刚刚讲到控制波形信号发生器的波形选择和频率输出其实就是控制两个端口参数wave和f_inc,所以从旋转编码器的驱动输出到DDS端口参数的控制,我们还需要一个逻辑模块。
行 319: 行 316:
  
  
-====实验步骤====+#### 实验步骤
   - 双击打开Quartus Prime工具软件;   - 双击打开Quartus Prime工具软件;
   - 新建工程:File → New Project Wizard(工程命名,工程目录选择,设备型号选择,[[EDA]]工具选择);   - 新建工程:File → New Project Wizard(工程命名,工程目录选择,设备型号选择,[[EDA]]工具选择);
行 330: 行 327:
  
  
-====实验现象====+#### 实验现象
  
 将设计加载到[[FPGA]]中,使用示波器观察底板[[DAC]]射频端子信号输出,按动旋转编码器观察不同的波形输出,转动旋转编码器观察频率的变化。 将设计加载到[[FPGA]]中,使用示波器观察底板[[DAC]]射频端子信号输出,按动旋转编码器观察不同的波形输出,转动旋转编码器观察频率的变化。