EDA课程设计(论文)-波形发生器的设计.doc
文本预览下载声明
常熟理工学院课程设计
第 PAGE 14 页 共 NUMPAGES 14 页
目录
HYPERLINK \l _Toc266392240 一 题目要求2
HYPERLINK \l _Toc266392241 1.1波形发生器…………………………………………………………2
HYPERLINK \l _Toc266392242 1.1.1题目要求…………………………………………………………2
1.1.2 设计前提…………………………………………………………2
HYPERLINK \l _Toc266392243 二 方案论证……………………………………………………………3
HYPERLINK \l _Toc266392245 2.1设计思路 3
HYPERLINK \l _Toc266392246 2.1.1原理分析和讨论 3
三 程序设计……………………………………………………………5
HYPERLINK \l _Toc266392247 3.1 程序流程图…………………………………………………………5
3.2 部分程序功能介绍…………………………………………………6
HYPERLINK \l _Toc266392248 四 结果分析 PAGEREF _Toc266392248 \h 5
HYPERLINK \l _Toc266392249 4.1实验波形图…………………………………………………………8
HYPERLINK \l _Toc266392250 4.2 结果分析……………………………………………………………9
五 总结与体会…………………………………………………………10
参考文献 ………………………………………………………………11
附录 ……………………………………………………………………12
一 题目要求
1.1波形发生器简介
波形发生器是一种数据信号发生器,在调试硬件时,常常需要加入一些信号,以观察电路工作是否正常。用一般的信号发生器,不但笨重,而且只发一些简单的波形,不能满足需要。本课题设计的波形发生器就可以定义串口数据。通过逻辑探勾输出,调试起来简单快捷。
1.1.1题目要求
设计制作一个简易波形发生器,该波形发生器能产生正弦波、方波、三角波,通过键盘控制可以改变输出信号的频率和幅度。能产生正弦波、方波、三角波3种周期波形,通过键盘控制可以改变幅度和频率, 输出信号幅度在0~5V连续可调。
1.1.2 设计前提
(1) 熟练掌握MAX+plus = 2 \* ROMAN II操作流程,熟练运用VHDL语言。
(2) 熟练掌握有关DAC0832芯片的相关功能
(3) 熟练掌握数字示波器的使用。
二 方案论证
2.1设计思路
2.1.1原理分析和讨论
本次课题的设计思路可分为5个部分,如图1所示,即启动DAC0832、波形的幅度调节、周期的调节、波形幅度值到BCD码转化以及显示幅度值。
图1 结构图
图1 结构图
启动DAC0832时需认真阅读有关实验箱的手册,以及DAC0832的引脚功能,由于DAC0832是由FPGA输出的信号wr、cs驱动、控制的,当reset为高电平时,DAC0832关闭[1],因此根据实验箱的操作手册,我们只需将开关的1、5、8位置“ON”,其他的打到“OFF”档,DAC0832的启动只需将cs、wr1设为‘0’即可。
对于波形的幅度调节,我们是通过两个按键up、down来实现的,按下up键,波形的幅值增大,按下down键则与之相反,该功能的实现主要是通过if语句来判断up、down键是否按下,并根据判断结果做出相应的操作。
对于波形的周期调节,我们是通过两个按键up0、down0来实现的,按下up0键,波形的周期增大,按下down0键则与之相反,该功能主要是通过改变变量的值间接实现周期的调节,另外通过按下up、down键也可改变波形的周期。
波形幅度值到BCD码的转化是本课题中比较重要的一部分,这部分的正确性对后面的幅度显示起决定性作用。通过查阅资料我们得出DAC0832的参考电压时12V,根据公式Vout=Vref/256*D即可得出波形的输出电压值,得出输出电压值后,将该电压的每一位数值通过一定的方法取出来,再将其值送到相应位的数码管上显示即可完成。
三 程序设计
3.1.1程序流程图
图2 幅度调节
3.1.2 部分程序功能介绍
ENTITY SANJ IS
PORT(
CLK :IN STD_LOGIC;
RESET :IN STD_LOGIC;
FDD :IN STD_LOGIC;
SAN :IN STD_LOGIC; --三角波使能
FANG :IN STD_LOGIC; --方波使能
显示全部