数电课程设计报告

合集下载

数电课程设计报告-数字频率计

数电课程设计报告-数字频率计

数电课程设计报告题目:频率计目录第一章设计指标 (2)1.1设计指标 (2)第二章系统概述 (3)2.1设计思想 (3)2.2可行性论证 (3)2.3各功能的组成 (3)2.4总体工作过程 (3)第三章单元电路设计与分析 (5)3.1各单元电路的选择 (5)3.2设计及工作原理分析 (5)第四章电路的组构与调试 (12)4.1遇到的主要问题 (12)4.2现象记录及原因分析 (12)14.3解决措施及效果 (12)4.4功能的测试方法、步骤、设备、记录的数据 (12)第五章结束语 (15)5.1对设计题目的结论性意见及进一步改进的意向 (15)5.2总结设计的收获与体会 (15)附图(电路图、电路总图) (16)参考文献 (18)第一章:设计指标设计指标:要求设计一个测量TTL方波信号频率的数字系统。

用按键选择测量信号的频率。

测试值采用4个LED七段数码管显示,并以发光二极管只是测量对象(频率)的单位:Hz、kHz。

频率的测量范围有四档量程。

1)测量结果显示4位有效数字,测量精度为万分之一。

2)频率测量范围:100.1Hz——999.9kHz,分四档。

第一档:100.1Hz——999.9kHz第二档:1.000Hz——9.999kHz第三档:10.00kHz——99.99kHz第四档:100.0kHz——999.9kHz3)量程切换可以采用两个按键或由电路控制自动切换。

4)设计一个周期性方波产生电路频率计调试所需的信号。

输出信号的频率范围与测量范围相同,分为四个量程。

再设置四个按键在每档范围内选择4为有效数字的9~16个固定频率,最高位数值必须分布为1~9,信号占空比可以任意。

第二章:系统概述2.1设计思想所谓周期性信号频率,是指信号在1s时间内的周期数。

所以,通过记录信号在1s内的周期数即可确定其频率。

2.2可行性论证针对上述设计思想,可采用计数器来实现记录周期数的功能;采用时基信号产生计数时间作为采样时间;要通过数码管显示结果,考虑如果计数器直接将数据输入到数码管显示,则会出现数码管的数据不断变化,累计增加的情况,例如,一信号的频率为100Hz,计数器则会从1一直计数,数码管会在每秒内变化100次,所以采用寄存器或锁存器,在每个时间信号内,给予一个高电平使能有效,将计数器的数值锁存到寄存器或者锁存器。

数字电路课程设计---霓虹灯控制电路设计报告

数字电路课程设计---霓虹灯控制电路设计报告
图9 74LS04非门的引脚图
表4 74LS04非门的真值表
4)74LS08与门的引脚图如图10所示,其真值表如表5所示:
图10 74LS08管脚图
表574LS08与门的真值表
3.2 实现控制功能的电路
1) 电路中有有3个74LS194芯片,共有5个状态,可以用74LS161和74LS138来实现,电路如图11所示:
广告彩灯作为广告的一个重要元素,也渐渐成为广告的灵魂,也成为了城市夜景的一道亮丽的风景线。
刚刚学完了数电知识,正好通过这次课程设计,进一步巩固了理论知识,而且全面掌握了课设的基本流程,此外,分析与解决问题的能力也得到了相应的提升。
此次设计我们用到了555定时器构成的秒脉冲发生器,74LS138,74LS161,JK触发器以及各种逻辑门电路来实现我的方案,充分利用了模电和数电的知识来不断地解决实验过程中发现的问题,这也是这次课程设计的目的和意义所在。
1)JK触发器的管脚图和真值分别如图7所示:Q Q
SD J CP K RD
图7 JK触发器管脚图
表2 JK触发器真值表
J
K
Qn+1
逻辑功能
0
0
Qn
保持
0
1
0
置0
1
0
1
置1
1
1
Qn
翻转
2)74LS00与非门的管脚图如图8所示,真值表如表3所示:
图8 74LS00管脚图
表3 74LS00的真值表
3)74LS04非门的引脚图如图9所示,真值表如表4所示:
图6信号分频及选择
JK触发器下降沿有效,J=K=1时,每来一个脉冲变化一次,因此它的输出是1.6S的信号,当Y3与Y4同时为1,根据电路,可以知道此时为单层灯移动,另外根据分频电路可以知道此时输出的也为0.8s的信号,而当Y3和Y4中有一个0时,电路为全部左移或全部右移的过程。此时电路输出的也为1.6s的信号,实现了分频和信号的选择的过程。

数电课程设计抢答器

数电课程设计抢答器

西安邮电学院数字电路课程设计报告书学院名称:计算机学院学生姓名:陈龙(19)专业名称:网络工程班级:网络0903实习时间:2011年06月06日至2011年06月18日一.设计题目:四路数字抢答器。

二.设计要求:数字抢答器允许在规定的时间内进行抢答,可以数字显示抢答者的序号,并配有相应的灯光指示.对犯规的抢答者,除用灯光报警外,还应显示出犯规者的序号,若规定抢答时间已过,要求告示任何输入的抢答信号君无效,除非重新下达抢答命令.1.此抢答器要求有四路,抢答后其余人抢答无效;2.抢答时间为10秒,在此期间内的抢答视为有效,并用灯指示;3.抢答开始前及计时结束后抢答无效,并用灯指示。

三.使用器件:1.集成器件:74LS75 1片 74LS161 2片 74LS48 2片 74LS04 1片 74LS08 1片74LS20 1片 74LS148 1片 74LS00 1片 555定时器 1片2.其它器材:红灯1个绿灯 1个电阻 150千欧 ,4.7 千欧各一个100欧限流电阻 4个电容 4.7uf 10uf 导线若干面包板 1块七段数码管 2个四. 设计方案由上图所示,主持人宣布开始后,计时电路产生10秒的倒计时,同时抢答电路准备接受抢答。

有人抢答后,抢答电路将当前状态所存,并送入译码显示电路,显示抢答者序号,同时计时电路停止计时,状态电路给出指示表明抢答有效。

如果在主持人宣布开始之前有人抢答,或者计时结束之后有人抢答,状态电路给出指示,表明抢答无效。

一轮抢答结束后,需有主持人进行复位操作,即使抢答电路解锁,计时电路复位,然后开始下一轮的抢答。

1.时钟电路时钟电路采用555产生1Hz的脉冲信号,电路图如下:VCC2.计时电路计时电路采用161芯片,产生10秒的倒计时161功能表如下:状态转移图如下:计时到0后,由主持人电路产生置数信号,使161载入初值0110. 电路图如下:74LS04N时钟信置数信使能信CBA3. 抢答电路抢答电路要求一人抢答后,其他人的抢答均无效。

数字电子钟(计时、校时以及整点报时)数电课程设计报告

数字电子钟(计时、校时以及整点报时)数电课程设计报告

设计要求1.用秒脉冲作信号源,构成数字钟,显示秒、分、时2.具有“对时”功能,即时间可以快速预置3.具有整点提示功能。

一种实现的方法是每到整点时触发“音乐芯片”或每到整点前几秒钟,发出如“的、的、的、答”声音信号。

系统框图设计过程时间显示模块电路可以用3个CD4518作为核心芯片,进行级联,再辅以若干逻辑门,完成进位、置零等功能,CD4518是双十进制计数器,有两个时钟输入端,正好可以满足进位和校时的功能,而不会产生干扰,且有一个置零功能,可以组成六十进制和二十四进制的计数器。

整点报时模块电路用的是555芯片和一块CD4068芯片组成的电2路,555芯片可以接成多谐振荡器,提供交变信号使蜂鸣器发出声音,而整点报时的控制可以用CD4068实现,CD4068是8输入与/与非门,可以在整点之前输出脉冲信号,经过由555芯片组成的多谐振荡器,为其提供一个信号,这样由多谐振荡器输出端可以使蜂鸣器发出“嘀、嘀、嘀”的响声。

秒信号发生器可以用实验箱上的秒脉冲信号代替。

考虑到开关抖动现象,校时模块电路实验实验箱上的按键开关,每输出一个脉冲信号可以改变分个位和十个位,同时考虑到干扰问题,进位接线和校时接线接在不同的时钟输入端。

电路仿真与设计3.1所需芯片及芯片管脚图CD4518 CD4068CD4002 CD40112CD4069 5553.2时、分、秒显示电路模块设计整个电路的的核心芯片是CD4518,它是一个双10进制加法计数器,因此只需要三个芯片,进行级联即可实现两个六十进制和一个二十四进制计数器,再加上一些合适的逻辑门,实现置零和进位。

上图是秒显示电路设计图,右边为秒个位,左边为秒十位,秒个位的电路中置零引脚和时钟输入端CP1必须接地,这是因为CMOS 的引脚不能悬空,否则会影响实验结果,CP0接秒脉冲信号,考虑到秒个位计数到9的时候必须进位,所以在显示0的同时输出一个进位信号,输出是0000,因此可以用一个或非门,当输出是0000的时候提供一个进位信号至秒十位的时钟输入端,秒十位另一个时钟输入端接地,当秒十位计数器计到5时,在输出为0110时提供一个信号到秒十位计数器的置零端,使其实现0110——0000,即六十进制。

关于数电模电课程设计

关于数电模电课程设计

关于数电模电课程设计一、课程目标知识目标:1. 理解数字电路和模拟电路的基本概念、原理及分类;2. 掌握数字电路与模拟电路的基本元件、功能及应用;3. 学会分析简单的数字电路和模拟电路,并能进行基本的设计与计算;4. 了解数字电路与模拟电路在实际工程中的应用,如信号处理、通信系统等。

技能目标:1. 能够正确使用数字电路和模拟电路的相关仪器、设备进行实验操作;2. 培养学生动手实践能力,能独立完成简单的数字电路和模拟电路搭建与调试;3. 提高学生的问题分析、解决能力,使其能够运用所学知识解决实际问题;4. 培养学生的团队协作能力,能在小组合作中发挥个人优势,共同完成任务。

情感态度价值观目标:1. 培养学生对电子技术的兴趣,激发学习热情,形成自主学习、探究学习的习惯;2. 培养学生严谨的科学态度,注重实验数据的真实性,遵循实验操作规范;3. 增强学生的环保意识,关注电子技术在实际应用中的节能、减排问题;4. 培养学生的创新意识,鼓励学生敢于尝试、勇于实践,形成积极的创新精神。

课程性质:本课程为电子技术基础课程,旨在帮助学生掌握数字电路和模拟电路的基本知识,培养实践操作能力和创新能力。

学生特点:学生已具备一定的电子技术基础知识,具有较强的求知欲和动手能力,但部分学生可能对理论知识的理解与应用存在一定难度。

教学要求:注重理论与实践相结合,注重培养学生的实践操作能力和创新能力,关注学生的个性化发展,提高教学效果。

通过本课程的学习,使学生能够达到以上所述课程目标,为后续相关课程学习及未来职业发展打下坚实基础。

二、教学内容本课程教学内容主要包括以下几部分:1. 数字电路基础:介绍数字电路的基本概念、原理,包括逻辑门、触发器、计数器等基本元件的工作原理与应用。

2. 模拟电路基础:讲解模拟电路的基本概念、原理,涉及放大器、滤波器、振荡器等基本元件的功能与使用。

3. 数字电路与模拟电路的设计与搭建:- 数字电路设计:学习数字电路的设计方法,掌握组合逻辑电路和时序逻辑电路的设计;- 模拟电路设计:了解模拟电路的设计原理,学习运算放大器电路、滤波器电路等的设计;- 搭建与调试:培养学生动手搭建和调试数字电路与模拟电路的能力。

数电汽车尾灯控制电路课程设计精选全文

数电汽车尾灯控制电路课程设计精选全文

可编辑修改精选全文完整版任务书一、题目:汽车尾灯控制电路二、设计目的要求汽车行驶时有正常行驶、左转、右转、和刹车四种情况,设汽车尾部左右两侧各有三个指示灯(用发光二极管模拟)。

(1)汽车正常行驶时只是灯全灭;(2)汽车右转弯时,右侧3个灯按右循环顺序点亮;(3)汽车左转弯时,左侧3个灯按左循环顺序点亮;(4)汽车临时刹车时所有指示灯同时闪烁。

三、主要内容及实现的功能电路有四种状态,即汽车正常行驶,向左转弯,向右转弯,临时刹车。

要实现所要求的四种状态,对于要实现的四种状态,电路设计主要有三方面的要求:一是脉冲频率的要求;二是汽车尾灯显示与汽车行驶状态要一一对应;三是汽车尾灯的显示要依次循环变亮。

针对以上三项要求,我们设计了相应的模块。

用555芯片实现脉冲产生电路,其主要电路为一多谐振荡电路;通过译码电路和开关控制电路实现汽车尾灯与汽车行驶状态之间的对应;通过三进制计数器实现汽车尾灯依次并循环显示。

四、主要参考资料课程设计报告一、课题分析汽车尾灯控制电路,主要有三方面的要求:一是脉冲频率的要求;二是汽车尾灯显示与汽车行驶状态要一一对应;三十汽车尾灯的显示要依次循环变亮。

针对以上三项要求,我们设计了相应的模块。

用555芯片实现脉冲产生电路,其主要电路为一多谐振荡电路;通过译码电路和开关控制电路实现汽车尾灯与汽车行驶状态之间的对应;通过三进制计数器实现汽车尾灯依次并循环显示。

二、设计文档(1)汽车尾灯显示与汽车运行状态关系为了区分汽车尾灯的4种不同的显示模式,需设置2个状态控制变量。

假定用开关k1和k0进行显示模式控制,可列出汽车尾灯显示状态与汽车运行状态的关系,如表1所示。

表1. 汽车尾灯和汽车运行状态(2)汽车尾灯控制电路功能描述在汽车左右转弯行驶时由于3个指示灯被循环顺序点亮,所以可用一个三进制计数器的状态控制译码器电路顺序输出高电平,按要求顺序点亮三个指示灯。

可得出描述指示灯D1、D2、D3、D4、D5、D6与开关控制变量k1、k0,以及时钟脉冲cp之间关系的功能表如表2所示(表中0表示灭灯状态,1表示灯亮状态。

数电课程设计报告

数电课程设计报告

数电课程设计报告郑州科技学院《数字电子技术》课程设计题目____________________学生姓名专业班级学号院(系)指导教师完成时间 2013年月日目录1课程设计的目的 (1)2课程设计的任务与要求…………………………………………23设计方案与论证 (3)3.1 (3)3.2 (4)4设计原理及功能说明 (5)5单元电路的设计(计算与说1明) (5)6硬件的制作与调试 (5)7总结 (10)参考文献 (15)附录1:总体电路原理图 (18)附录2:元器件清单 (19)2一、总体概述1.1 设计意义随着社会的不断进步和科学技术,经济的不断发展,人们生活水平得到很大的提高,汽车已经广泛的进入了人们的生活。

而作为汽车电路重要的组成部分---汽车尾灯控制系统,人们对它的认识还存在许多的局限性,还有待我们继续对其进行研究和探讨。

所以设计一套更好更合理的汽车尾灯系统,对汽车业的发展,对经济的发展有着深远的影响。

1.2 设计目的通过本课程的设计,我们应该做到:(1)更好的巩固和加深对基础知识的理解,学会设计中小型数字系统的方法,独立完成调试过程,增强我们理论联系实际的能力,提高学生电路设计和分析能力。

(2)通过实践,在理论指导下有所创新,为后继专业课的学习和日后工程实践奠定基础。

1.2 设计要求汽车尾灯的控制电路由三个按键组成,分别对应左转,右转和刹车。

汽车尾灯左右两侧各有三个指示灯(用发光二极管模拟),汽3车正常远行时指示灯全灭;右转弯时,右侧3个指示灯按右循环顺序点亮;左转弯时左侧三个指示灯按左循环顺序点亮;临时刹车时所有指示灯同时闪烁。

1.3 设计特点(1)增加了新功能有应急显示,减速转弯显示,倒车显示。

(2)将转弯灯,刹车灯,倒车灯分开了,且根据不同的功能选用了不同颜色的LED灯。

这样不仅使电路更加简单,还更加符合实际情况。

(3)还特别增加了尾灯的自检功能,即尾灯不能正常工作会在仪表盘的对应灯上显示出来,及时提醒驾驶员去更换尾灯。

数电课程设计报告 DT-830数字万用表组装

数电课程设计报告 DT-830数字万用表组装

数字电子技术课程设计报告设计课题: DT-830数字万用表组装姓名:学院: 信息工程学院专业:班级:学号:日期指导教师:山东大学威海分校信息工程学院DT-830的焊接与装配摘要:电压表按其工作原理和读数方式分为模拟式电压表和数字式电压表两大类。

与普通的模拟式多用表相比,数字多用表的测量功能较多,它不但能测量直流电压、交流电压、交流电流、直流电流和电阻等参数,而且能测量信号频率、电容器容量及电路的通断等。

本次实验主要是焊接DT-830数字万用表及其组装,学会数字万用表的工作原理。

关键词:数字万用表、工作原理、焊接组装1 工作原理1.1数字万用表的特点数字电压表可缩写为DVM。

较之模拟式多用表,数字多用表除具有一般的所具有的DVM准确度高、数字显示、读数迅速准确、分辨力高、输入阻抗高、能自动调零、自动转换量程、自动转换及显示极性等优点外,还由于采用大规模集成电路,因而体积小,可靠性好,测量功能齐全,操作简便,有些数字多用表可以精确地测量电容、电感量、温度等,大大地扩展了功能;同时数字多用表内部有较完善的保护电路,过载能力强等等。

由于数字多用表具有上述这些优点,使得它获得越来越广泛的应用。

但它也有不足之处,它不能反映被测量的连续变化过程以及变化的趋势,如用来观察电容器的充、放电过程,就不如模拟电压表方便直观,也不适于作电桥调平衡用的零位指示器;同时,其价格也偏高,所以尽管数字多用表具有许多优点,但它不可能完全取代模拟式多用表对于DT-830数字万用表来说,它的主要特点有,(1)技术成熟,主电路采用典型数字集成电路ICL7106,性能稳定可靠;(2)性价比高,由于技术成熟,应用广泛,具有精度高、输入电阻大、读数直观、功能齐全、体积小等优点;(3)结构合理,安装简单,集成电路ICL7106采用COB封装。

1.2 数字多用表的基本原理和模拟直流电压表前端配接检波器即可构成模拟交流电压表一样,在数字直流电压表前端接相应的交流-直流转换器(AC/DC)、电流-电压转换电路(I/V)、电阻-电压转换电路(Ω/V)等,就构成了数字多用表,如图一所示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 数电课程设计报告 姓名:李鹏鹏 学号:04113063 指导老师:董瑞军 2

目 录 1.概述 ---------------------------------------------------3 2.原理图 --------------------------------------------------3 3.FPGA与ADC0809VHDL控制程序 ------------------------------3 4.FPGA中储存模块 -----------------------------------------7 5.储存器控制模块 ----------------------------------------8 6.FPGA与DAC0832的连接和控制 ------------------------------11 7.分频模块 ---------------------------------------14 8.顶层模块设计 ----------------------------------------15 9.RTL视图 ----------------------------------------------18 10.研究体会 -----------------------------------------------19 3

一.概述 课题要求通过FPGA对A/D和D/A转换的控制,使得FPGA的输入量和输出量一致,根据原理设计出如下框架图。本报告主要内容从A/D转换器(ADC0809)前端的测温电路开始,经过取样保持电路,详细介绍了A/D转换器与FPGA芯片VHDL控制程序,以及FPGA的对数据的储存和控制模块,之后说明D/A转换器(DAC0832)控制程序和转换器后端的电路图,并完成顶层模块设计以各模块,主要过程在计算机上进行仿真,报告中附以详尽说明的仿真波形和统计报告。

二.原理图

若模拟信号变化速度较快,需要在A/D之前加入采样保持电路,以保证转换精度。在这里选择LF398(LF398是一个专用的采样保持芯片,它具有很高的直流精度和较高的采样速率,器件的动态性能和保持性能可以通过合适的外接保持电容达到最佳。)模拟输入量U0(t)从IP进入,采样输出量从OP口输出至ADC0809

的IN口(IN0-IN7的选择由ADDA-ADDC决定),逻辑输入控制端与START连接。ADC0809和FPGA的连接和FPGA和DAC0832的连接如图,而在DAC0832后端,由于输出的为模拟电流量,若需输出电压量,则可加入如图电路。

三.FPGA与ADC0809VHDL控制程序 ADC0809的引脚图如下 IN0-IN7模拟量输入通道 ADDA,ADDB,ADDC---输入通道选择地址,按其状态选择输入通道。 4

START---A/D转换启动信号。高电平有效。 ALE---地址锁存允许信号。当ALE上升沿时,把ADDA-ADDC的地址状态 传给地址锁存器。 CLK---时钟信号。因本芯片中无时钟电路,所以需由外部提供。 EOC---转换结束信号。EOC为低电平表示转换正在进行,当EOC变为高 电平,表示转换结束。 OE---输出允许信号。当oe=1时,将转换完成的数据输出。

分析ADC0809的工作原理后,得到其工作时序图:

于是将整个转换过程分为5个状态,并用状态图表示:

根据设定的状态图,写出VHDL控制程序如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; --库和程序包的调用 ENTITY ADC0809 IS PORT( --定义端口参数 D:IN STD_LOGIC_VECTOR(7 DOWNTO 0); --由ADC0809 输出的已转换完成的8 位数据 CLK:IN STD_LOGIC; --工作时钟 5

EOC:IN STD_LOGIC; --转换结束输出信号;转换过程中为低电平,转换结束后为高电平ALE:OUT STD_LOGIC; --地址锁存允许信号,高有效 START:OUT STD_LOGIC; --A/D转换启动信号,在其下降沿开始A/D转换过程 OE:OUT STD_LOGIC; --输出允许信号,高有效。当OE=1时,将数据送出 ADDA:OUT STD_LOGIC; --信号通道控制信号 ADDB:OUT STD_LOGIC; ADDC:OUT STD_LOGIC; LOCK0:OUT STD_LOGIC; --观察数据锁存时钟 Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));--8 位数据输出 END ADC0809; ARCHITECTURE behave OF ADC0809 IS TYPE states IS(st0,st1,st2,st3,st4); --用枚举类型进行状态定义 SIGNAL current_state,next_state:states:=st0; --状态信号定义 SIGNAL REGL:STD_LOGIC_VECTOR(7 DOWNTO 0); SIGNAL LOCK:STD_LOGIC; --转换后数据输出锁存时钟信号 BEGIN ADDA<='1'; ADDB<='0';ADDC<='0'; --选取信号通道,这里选择“111”,可按需更改 Q<=REGL;LOCK0<=LOCK; COMBIN:PROCESS(current_state,EOC)BEGIN --组合逻辑进程,规定各状态转换方式 CASE current_state IS WHEN st0=>ALE<='0';START<='0';LOCK<='0';OE<='0'; next_state<=st1; --对ADC0809进行初始化 WHEN st1=>ALE<='1';START<='1';LOCK<='0';OE<='0'; next_state<=st2; --启动转换过程 WHEN st2=>ALE<='0';START<='0';LOCK<='0';OE<='0'; IF(EOC='1')THEN next_state<=st3; --EOC=1 表明转换结束 ELSE next_state<=st2; ---EOC=0,表示转换未结束,继续转换过程 END IF; WHEN st3=>ALE<='0';START<='0';LOCK<='0';OE<='1'; next_state<=st4; --打开输出锁存器的三态门,将数据送入FPGA WHEN st4=>ALE<='0';START<='0';LOCK<='1';OE<='1';next_state<=st0; --返回状态o,继续下一次转换 WHEN OTHERS=>next_state<=st0; END CASE; END PROCESS COMBIAN; REG:PROCESS(CLK) --时序进程 BEGIN IF(CLK'EVENT AND CLK='1')THEN current_state<=next_state; END IF; END PROCESS REG; SAVE:PROCESS(LOCK) --锁存进程,在此进程中,在LOCK 转为高电平时,把已转换好的数据锁入 BEGIN IF LOCK='1'AND LOCK'EVENT THEN REGL<=D; END IF; 6

END PROCESS SAVE; END behave;

将程序载入QuartusⅡ,保存并start compilation,完成后得到flow summary报告如下:

生成Vector Waveform File,进行Timing simulation,此处因进行理论仿真并,故EOC由手动输入周期信号,同理CLK时钟亦为人为设定(实际因fpga的时钟频率不符adc0809所需的时钟频率,需对fpga进行分频后把时钟输给adc0809,具体分频模块详见后文),D设定随机数,得到仿真波形图如下:

如图:从330ns出开始,整个状态处于状态0,此时ALE和START都为低电平,A/D转换未启动。当CLK的上升沿来到,ALE地址锁存允许信号和START启动信号转为高电平,接着EOC转换结束信号由高转为低,状态1启动转换。在状态2时,转换过程继续,经过数个时钟周期等待后,EOC转换结束信号由低变为高电平,转换完成。伴随OE输出允许信号由低转高,进入状态3,ADC将已经转换好的数据输出;状态4时,LOCK变为高电平,这时转换好的 D 端口的转换数据被储存在寄存器中,至此一个转换过程完成。之后又进入状态0,等待下次转换。 7

四.FPGA中存储模块 在fpga中定义一储存模块,将A/D转换好的数据暂时保存,待控制程序使储存器按需要输出A/D数据至D/A转换模块。 储存模块的设计如下:

Clk--时钟信号端口;Cs---片选信号端口,低为选中;oe---使能端口,输入低为读,高为写;add[07-0]--地址端口;data_i[7-0]数据输入端口;data_o[7-0]数据输出端口;

程序如下: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity ram is generic(width: integer := 8; -- 用与修改储存器数据宽度 depth: integer := 8); -- 用于修改地址长度 port( clk : in std_logic; addr : in std_logic_vector(depth - 1 downto 0); cs : in std_logic; --片选 oe : in std_logic; --使能 data_i: in std_logic_vector(width - 1 downto 0); data_o: out std_logic_vector(width - 1 downto 0) ); end ram; architecture Behavioral of ram is type ram is array(2 ** depth - 1 downto 0) of std_logic_vector(width - 1 downto 0); ------用于储存数据 signal ram1 : ram; begin process(clk) begin if(clk'event and clk = '1') then if(cs = '0') then if(oe = '0') then --------当cs有效选中,oe为低读时,储存器输出保存的数据 data_o <= ram1(conv_integer(addr)); else

相关文档
最新文档