- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数电综合实验—简易函数发生器
实验报告
班级:07118班
姓名:杨帆
学号:070547
班内序号:26
2009年1月10日星期六
目录
实验目的 3
二、 任务要求 3
基本任务: 3
提高要求: 3
三、 系统设计 3
1. 设计思路 3
2. 总体设计框图 3
3. 分块设计 4
a) 分频模块: 4
b) 三角波产生模块: 4
c) 方波产生模块: 4
d) 选波模块: 4
e) 正弦波产生模块: 5
f) 并串转换模块: 5
四、 程序框图 6
五、 总体电路图及管脚信息 6
六、 源程序 7
七、 功能说明及操作步骤 9
1. 功能 9
2. 操作步骤 9
八、 资源利用率 10
九、 仿真波形 11
十、 元件清单 12
十一、 关键技术、遇到的问题及解决方案的详述 12
1. 正弦波输出问题 12
2. DA转换问题 12
十二、 实验结论及总结 12
实验目的
1. 熟练掌握 VHDL 语言和QuartusII 软件的使用;
2. 理解状态机的工作原理和设计方法;
3. 掌握利用 EDA 工具进行自顶向下的电子系统设计方法;
4. 熟悉 D/A 变换电路的设计;
任务要求
基本任务:
设计制作一个简易函数发生器。
1. 输出波形为方波和三角波,频率范围为1kHZ-2kHZ;
2. 频率可进行调节并用数码管显示,加、减步进均为100HZ;
3. 输出三角波的峰峰值为4-5V,方波幅度为TTL 电平的大小;
提高要求:
1. 产生频率范围为1kHZ-2kHZ、峰峰值为4-5V 的正弦波信号;
2. 产生占空比可调的矩形波或其它波形;
3. 自拟其它功能。
系统设计
设计思路
用VHDL语言结合原理图编辑方式设计实现一个函数信号发生器,输出频率可调方波和三角波,正弦波三种波形。将波形选择、频率控制与分频、三角波、正弦波、方波发生各个模块分别用VHDL语言编程为一个子程序,并把每一个模块转换成图形文件,然后在原理图编辑框调用这些图形模块。由于考虑到按键开关工作的不确定性,通过拨码开关模块的SW0到SW3控制频率调节f〔3...0〕,用SW4、SW5控制DELTA、SINE、SQUARE波形选通,最后把八位输出经过并串转换,接到开发板上的DA模块(TLV5638),通过D/A转换,从示波器上就能看到波形输出。
总体设计框图
(图一:系统设计框图)
分块设计
本设计共使用了六个模块,分别解释如下:
分频模块:
本模块主要功能是输出两个分频时钟clk_m和clk_p,前者用于波形的每一点的并行值输出频率,后者是前者的32倍频,用于并串转换(16bit并行输入转串行输出,并且要输出一个二分频时钟)。经过多方考虑(受制于DA芯片的最高工作频率),选择波形分辨率为64点(即一个周期取样64次)。这里输出的1KHz到2KHz的频率(步进100Hz)都是近似的。
frq.vhd文件还包含了数码管输出的功能。采用高频时钟(50M)扫描cat,输出当前的频率值。这里不再分析。
三角波产生模块:
这个模块输出三角波波形。每次clk_m上升沿输出一个8bit的数据。周期分辨率为64点。方波产生模块:
本模块输出占空比可调的方波。默认占空比为50%。周期分辨率为64点。按键调节占空比,步进增/减幅度为12.5%。选波模块:
本模块根据用户操作拨码开关来选择输出的波形。默认输出低电平。正弦波产生模块:
本模块输出周期分辨率为64点的正弦波。用Excel或者Matlab算出二进制8bit的正弦波的取样值,然后采用在程序里查表的方式输出数据。这要比用程序直接计算正弦波的值快捷和简便得多,虽然损失一定精度,但换回的是程序执行的时间和空间资源。并串转换模块:
每次外部复位信号(reset_i)或者内部复位信号(reset_int)有效时,系统进行各信号清零复位的工作。cs_o信号作用是对TLV5638的片选,cs_o的下降沿触发TLV5638的数据写入,cs_o上升沿时TLV5638停止数据写入(数据锁存)。系统默认状态为IDLE(空闲),不进行任何操作。当DA工作触发信号(start_i)有效时,系统被触发,进入BUSY(工作)状态。系统状态为BUSY时,进行一次16bit输入数据的并串转换,使用输入并行数据频率的32倍频,将其二分频后输出给TLV5638作为时钟信号。输出16bit数据后,系统将cs_o复位(停止数据写入芯片),并且将eoc置位(进行一次各信号清零复位的工作)。系统输出串行数据时首先输出并行输入数据的高位。
程序框图
(图二:系统操作流程图)总体电路图及管脚信息
(图:系统电路图)
(图:管脚连接信息)
源程序
功能说明及操作步骤
功能
实现
您可能关注的文档
最近下载
- 21CS03-3:一体化预制泵站选用与安装(三).docx VIP
- 2025届高考物理考点一轮复习:功能关系 能量守恒定律(解析版).pdf VIP
- 二年级上册语文教案 第七单元.docx VIP
- 快递业务操作规范与流程.pdf VIP
- 用在线乳化技术实现柴油机低温燃烧的研究 the experimental study of online emulsification technology in realizing diesel low- temperature combustion.pdf VIP
- 课桌椅项目实施方案-(范文模板).docx VIP
- 快递服务行业业务查询处理规范.doc VIP
- PDCA循环工作方法培训.pptx VIP
- 快递业务操作规范及投诉处理.doc VIP
- 充电桩采购安装项目售后服务承诺.docx VIP
文档评论(0)