




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、四川师范大学成都学院电子工程系课程设计报告目目 录录前前 言言.1 11.1. 总体设计方案总体设计方案.2 21.11.1 总体设计方案总体设计方案.2 22.2. 单元模块设计单元模块设计.2 22.12.1 十进制计数器设计十进制计数器设计.2 22.1.12.1.1 十进制计数器原件十进制计数器原件 cnt10cnt10 设计设计.2 22.1.22.1.2 位十进制计数器的顶层设计位十进制计数器的顶层设计.4 42.22.2 闸门控制模块闸门控制模块 EDAEDA 设计设计.5 52.2.12.2.1 定时信号模块定时信号模块 TimerTimer.5 52.2.22.2.2 控制信
2、号发生器模块控制信号发生器模块 T_conT_con.7 72.32.3 译码显示模块译码显示模块.8 82.3.12.3.1 显示寄存器设计显示寄存器设计.8 82.3.22.3.2 译码扫描显示电路译码扫描显示电路.9 92.3.32.3.3 译码显示模块的顶层电路设计译码显示模块的顶层电路设计.12123.3. 软件测试软件测试.13133.13.1 测试的环境测试的环境.13133.23.2 调试和器件编程调试和器件编程.14144.4. 设计总结设计总结.15155.5. 参考文献参考文献.1616四川师范大学成都学院电子工程系课程设计报告1前 言在电子技术高度发展的今天,各种电子产
3、品层出不穷,而频率作为设计的最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率的测量就显得更为重要。测量频率的方法有多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程的自动化等优点。数字频率计是一种用十进制数字显示被测信号频率的数字测量仪器,它的基本功能是测量正弦信号、方波信号、尖脉冲信号以及其它各种单位时间内变化的物理量。当今国内外厂家生产的数字频率计在功能和性能方面都比较优良,而且还在不断发展中,但其结构比较复杂,价位也比较高,在测量精准度要求比较低的测量场合,使用这些数字频率计就不够经济合算。我所设计的这款数字频率计能够可靠
4、实现频率显示功能,原理及结构也比较简单本次所做的课程设计就是一个数字频率计,能测量 1HZ9999HZ 的矩形波信号,并正确地显示所测信号的频率值。数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。随着现场可编程门阵列 FPGA 的广泛应用,以 EDA 工具作为开发手段,运用 VHDL 等硬件描述语言语言,将使整个系统大大简化,提高了系统的整体性能和可靠性。 采用 FPGA 现场可编程门阵列为控制核心,通过硬件描述语言 VHDL 编程,在Quartus仿真平台上编译、仿真、调试 ,并下载到 FPGA 芯片上,通过严
5、格的测试后,能够较准确地测量各种常用的波形信号的频率,而且还能对其他多种物理量进行测量。四川师范大学成都学院电子工程系课程设计报告21. 总体设计方案1.1 总体设计方案数字频率计基本原理是用计数器来计算 1S 内输入信号周期的个数。如图 1 所示是 4位十进制数字频率计的系统方框原理图,当系统正常工作时,脉冲发生器提供的 1 Hz 的输入信号,经过测频控制信号发生器进行信号的变换,产生计数信号,被测信号通过信号整形电路产生同频率的矩形波,送入计数模块,计数模块对输入的矩形波进行计数,将计数结果送入锁存器中,保证系统可以稳定显示数据,显示译码驱动电路将二进制表示的计数结果转换成相应的能够在七段
6、数码显示管上可以显示的十进制结果。图 1 总体设计方案2. 单元模块设计2.1 十进制计数器设计2.1.1 十进制计数器原件 cnt10 设计十进制计数器即可采用 Quartus的宏元件 74160,也可用 VHDL 语言设计,其源程序如下。 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY cnt10_v ISPORT(CLK,RST,EN:IN STD_LOGIC;四川师范大学成都学院电子工程系课程设计报告3 CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0
7、);COUT:OUT STD_LOGIC );END cnt10_v;ARCHITECTURE behav OF cnt10_v ISBEGIN PROCESS(CLK,RST,EN) VARIABLE CQI:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN IF RST=1THEN CQI:=(OTHERS=0); -计数器异步复位 ELSIF CLKEVENT AND CLK=1 THEN -检测时钟上升沿 IF EN=1 THEN -检测是否允许计数(同步使能) IF CQI0); -大于 9,计数值清零 END IF; END IF; END IF; IF CQI
8、=9 THEN COUT=1; -计数等于 9,输出进位信号 ELSE COUT=0; END IF; CQ=CQI; -将计数值向端口输出END PROCESS;END behav;在源程序中:COUT: 计数器进位输出 CQ3.0: 计数器的状态输出 CLK: 时钟输入端 RST: 复位控制输入端,当 RST=1 时,CQ3.0=0 EN: 使能控制输入端,当 EN=1 时,计数器计数;当 EN=0 时,计数器保持不工作状态。四川师范大学成都学院电子工程系课程设计报告4图 2 十进制计数器仿真输出波形在项目编译仿真成功后将设计的十进制计数器电路设置成可调用的元件cnt10_v.bsf,用于
9、以下四位十进制计数器的顶层设计。 cnt10_vinstCLKCLKRSTRSTENENCQ3.0CQ3.0COUTCOUT图 3 十进制计数器元件符号2.1.2 位十进制计数器的顶层设计顶层电路原理图如图 4 所示。文件名 4cnt10.bdf。该顶层设计可以用原理图输入的方法完成。在 QuartusII 中,新建一个原理图编辑窗口,从当前的工程目录中调出 4 片十进制计数器元件 cnt_v,并按 4 所示的 4 位十进制计数器的顶层原理图完成电路接线。完成 4 位十进制计数器的顶层原理图编辑以后,即可进行仿真测试和波形分析,其仿真输出波形如图 5 所示,当 CLR=0,EN=1 时其计数值
10、在 09999 之间的变化,COUT为计数进位输入信号,在实际应用中可作为超量程报警信号,因此仿真结果真确无误。此后,可将以上设计的 4 位十进制计数器设置成可调用的元件 4cnt10.bsf 以备高层设计中使用,其元件符号如图 6 所示。图 4 十进制计数器的顶层原理图四川师范大学成都学院电子工程系课程设计报告5图 5 四位十进制计数器的仿真图4cnt10instclkclkrstrstenenout13.0out13.0out23.0out23.0out33.0out33.0out43.0out43.0coutcout图 6 元件封装符号图2.2 闸门控制模块 EDA 设计 根据以上所述,
11、频率计电路工作时先要产生一个计数允许信号(即闸门信号) ,闸门信号的宽度为单位时间如 1s,在闸门信号有效时间内,对被测信号计数,即为信号的频率,该频率计电路的精度取决于闸门信号 T,该模块课分为 2 个子模块,一个是定是信号模块,一个是控制信号发生器模块。2.2.1 定时信号模块 Timer 根据设计要求,对于 4 位十进制计数器来说,当闸门信号的最大采样时间为 1s 时,其计数值在 09999 之间,则最大频率为 9999Hz,此即位频率计电路工作的 1 档;当闸门信号的最大采样时间为 0.1s(100ms)时,其计数值在 09999 之间,把它转化为频率则为最小频率为 10Hz,最大频率
12、为 9999Hz,此即为频率计电路工作的 2 档;当闸门信号的最大采样时间为 0.01s(10ms)时,其计数值在 09999 之间,把它转换为频率则为最小频率为 100Hz,最大频率为 999900Hz 或 999.9KHz,此即为频率计电路工作的 3 档;当闸四川师范大学成都学院电子工程系课程设计报告6门信号的最大采样时间为 0.001s(1ms)时,其技术值在 09999 之间,把它转换为频率则为最小频率为 1000Hz,最大频率为 9999000Hz 或 9.99MHz,此即为频率计电路工作的 4档。 本设计中假设输入的系统基准时钟为 1KHz,为产生 4 种不同的闸门信号 T,可由一
13、组 3 级模 10 计数器对 1KHz 信号进行分频,为控制信号发生器提供 4 种不同的频率信号,通过数据选择器 41MUX 利用量程选择开关控制闸门信号 T 的基准时钟,原理如图 7 所示。 图 7 中,cnt10_v 为已设计好的十进制计数器元件,可直接把该模块作为底层元件使用,41MUX 为 4 选 1 数据选择器,其 4 个输入为 1KHz 信号进行分频后的 4 中不同的频率信号 L4(1s)、L3(100ms)、L2(10ms)、L1(1ms)。A、B 为量程选择开关,其 4 种不同编码状态 00、01、10、11 通过 4 选 1 数据选择器分别选择输出 4 种不同的频率信号到Bc
14、lk, Blck 将作为控制信号发生器模块的控制时钟脉冲。A、B 的 4 种不同编码状态通过 2-4 译码器 74139M 产生 4 个量程状态显示信号 p0(1 档)、p1(2 档)、p3(3 档)、p4(4 档)。图 8 为其编译仿真后的输出时序波形图,生成的元件符号图如图 9 所示。VCC1msINPUTVCCBINPUTVCCAINPUTBclkOUTPUTp0OUTPUTp1OUTPUTp2OUTPUTp3OUTPUTCLKRSTENCQ3.0COUTcnt10_vinstCLKRSTENCQ3.0COUTcnt10_vinst1CLKRSTENCQ3.0COUTcnt10_vins
15、t2S0D2S1D3D0INHD1QMUX41inst3BAGY3NY2NY0NY1N74139Minst4GNDVCC1s100ms10ms1msAB100ms10ms1sp0p1p2p31msCLRBclkCLRENAENA图 7 定时信号模块原理图四川师范大学成都学院电子工程系课程设计报告7图 8 仿真输出波形Timerinstl1 l1B BA ABclkBclkp0p0p1p1p2p2p3p3图 9 定时信号模块 2.2.2 控制信号发生器模块 T_con控制信号发生器原理图如图 10,文件名 T_con.bdf。该模块主要根据输入的控制时钟脉冲,产生计数允许信号 EN,该信号的高电
16、平是持续时间即计数允许时间输入的控制时钟脉冲周期;产生清零信号 CLR,在计数使能前对计数器清零;产生存储信号 XEN,在计数后,利用上升沿把最新的频率测量值保存在显示寄存器中。控制信号发生器用 74161 构成 4 分频计数器,用一个与非门,一个或非门和一个异或门实现 3 种译码状态,以便产生清零信号 CLR,使能信号 EN 和存储信号 XEN。其仿真输出波形图如图 11,编译仿真真确无误后,生成元件符号图 12 所示。 COUNTERCLRNCLKENPLDNADENTBCQDQCQBQARCO74161instNOR2inst1NAND2inst2XORinst3NOTinst6GNDV
17、CCENOUTPUTCLROUTPUTXENOUTPUTVCCBclkINPUTBclk四川师范大学成都学院电子工程系课程设计报告8图 10 信号发生器模块原理图图 11 仿真输出波形T_coninstBclkBclkENENCLRCLRXENXEN图 12 控制信号发生器模块2.3 译码显示模块译码显示模块有显示寄存器和译码扫描显示电路组成。 2.3.1 显示寄存器设计 显示寄存器是在计数后,利用触发器的上升沿把最新的频率测量值保存起来,这样在计数过程中可不必一直看着数码管显示器,显示器将最终的频率读数定期进行更新,其输出将作为译码扫描显示电路的输入。16 位显示寄存器的 VHDL 源程序如
18、下。 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY reg_16 IS PORT ( Load: IN STD_LOGIC; DIN : IN STD_LOGIC_VECTOR(15 DOWNTO 0); DOUT: OUT STD_LOGIC_VECTOR(15 DOWNTO 0);END reg_16;ARCHITECTURE behav OF reg_16 ISBEGIN PROCESS( Load, DIN)BEGINIF Load EVENT AND Load=1 THE
19、N -时钟到来时,锁存输入数据 DOUT LED7S LED7S LED7S LED7S LED7S LED7S LED7S LED7S LED7S LED7S NULL; END CASE;四川师范大学成都学院电子工程系课程设计报告11 END PROCESS;END one; 源程序中:A3.0: 09 的 BCD 码 LED7S: 译码后的 7 段数据信号DECL7SinstA3.0A3.0LED7S6.0LED7S6.0图 16 段数码显示译码器元件符号 动态扫描显示的 VHDL 源程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IE
20、EE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY dynamic ISport(clk, reset:in std_logic; din1:in std_logic_vector(6 downto 0); -译码后的数据信号 1 din2:in std_logic_vector(6 downto 0); -译码后的数据信号 2 din3:in std_logic_vector(6 downto 0); -译码后饿数据信号 3 din4:in std_logic_vector(6 downto 0); -译码后饿数据信号
21、4 shift: out std_logic_vector(3 downto 0); -位选信号 bus4: out std_logic_vector(6 downto 0); -数据信号end dynamic;architecture one of dynamic issignal scan_clk:std_logic_vector(1 downto 0);begin p1:process(clk,scan_clk,reset) -分频进程variable scan:std_logic_vector(17 downto 0);beginif reset=1 then scan:=000000
22、000000000000; scan_clk=00;elsif clkevent and clk=1then scan:=scan+1;end if; scan_clkbus4=din1;shiftbus4=din2;shiftbus4=din3;shiftbus4=din4;shiftbus4=0000000;shift=0000; end case; end process p2; end one;源程序中:clk: 扫描时钟 reset: 复位信号,当 reset=1 时对位选信号复位 shift: 4 个数码管的位选信号,高电平有效 bus4: 进位选输出的 7 段数据信号din1、d
23、in2、din3、din4:输入的 7 段数据信号dynamicinstclkclkresetresetdin16.0din16.0din26.0din26.0din36.0din36.0din46.0din46.0shift3.0shift3.0bus46.0bus46.0图 17 动态扫描显示模块元件符号2.3.3 译码显示模块的顶层电路设计在 QuartusII 中,按照图 18 所示的译码显示模块的原理图完成底层电路设计和仿真,文件名 DEC_D.bdf。图 20 是编译仿真后的输出时序波形图和生成的元件符号。分析图 19,当 FX=1234 时,在时钟脉 CLK 作用下,首先送出最低
24、位测量值 4,此时数码管的位选信号 CH3.0=(1)H,数码管的译码电平输出为(66)H。第 2 个为 3,此时数码管的位选信号 CH3.0=(2) H,数码管的译码电平输出 4(F) H。第 3 个为 2,此时数码管的位选信号 CH3.0=(4) H,数码管的译码电平输出为(5B) H。第 4 个为 1,此时数码管的位选信号 CH3.0=(8) H,数码管的译码电平输出为(06) H。四川师范大学成都学院电子工程系课程设计报告13A3.0LED7S6.0DECL7SinstA3.0LED7S6.0DECL7Sinst1A3.0LED7S6.0DECL7Sinst2A3.0LED7S6.0D
25、ECL7Sinst3clkresetdin16.0din26.0din36.0din46.0shif t3.0bus46.0dy namicinst4LoadDIN15.0DOUT15.0reg_16inst5F6.0OUTPUTCH3.0OUTPUTVCCCLKINPUTVCCREINPUTVCCXENINPUTVCCFX15.0INPUTD6.0F6.0CH3.0D26.0Y3.0Y7.4CLKRED36.0D46.0Y15.0FX15.0D36.0Y11.8Y15.12D46.0XEN 图 18 译码显示模块的原理图 图 19 仿真输出波形DEC_DinstCLKCLKREREXENXE
26、NFX15.0FX15.0CH3.0CH3.0F6.0F6.0图 20 译码显示模块 DEC_D四川师范大学成都学院电子工程系课程设计报告14 3. 软件测试3.1 测试的环境 QuartusII 是 Altera 公司推出各种可编程逻辑器件产品,具有完全集成化的易学、易用的可视化环境,还有具有工业标准 EDA 工具接口,并且可以运行在多种操作平台上。使 QuartusII 提供了丰富的逻辑功能库、模块库以及参数化的兆功能供设计者使用。它还具有开放核的特点,允许设计人员添加自己的宏功能模块。充分利用这些逻辑功能模块,可大大减少设计工作量。QuartusII 由设计输入、项目编译、项目检验和器件
27、编程等四部分组成。设计输入主要有文本编辑器、图形编辑器、符号编辑器、波形编辑器以及第三方 EDA 工具生成的设计网表文件输入等,输入方式不同,生成的设计文件也不同。编译设计项目主要是根据要求设计参数和编译策略,如选定其间、锁定引脚等等,然后对项目进行网表提取、逻辑综合、器件适配,产生报告文件,供分析仿真及编程用。项目检验方法包过功能仿真、模拟仿真和定时分析,编程验证是将仿真后的目标文件编入所选定的 Altera 可编程逻辑器件中,然后加入实际激励信号进行测试,检查是否达到要求。3.2 调试和器件编程 将各个模块的源文件程序代码输入文本文件,编译运行项目成功后,把各个模块放在一起形成顶层设计文件,对项目进行逻辑综合,然后将项目的设计结果加载到 Altera器件中;成功编译以后,进入到模拟仿真时段,设置好完成时间和网络间距,在列出输入输出信号等等,进行波形编辑在模拟器运行成功;启动定时分析工具,对传播延迟、时序电路性能、建立和保持时间等进行分析顺利后,就可以开始器件编程了。通过利用ByteBlaster 电缆与微机并行口相连,接通 EL 实验箱电源,打开 QuartusII 编程器窗口,将器件编程文件调出,确保与电路板顺序相同。设置完成后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国锂电池负极材料项目创业投资方案
- 电解工理论考试题及答案
- 2025年年产3亿个塑料制品项目可行性研究报告申请报告
- 2025年中国氢能源项目创业投资方案
- 中国二月桂酸二正丁基锡项目创业投资方案
- 单招民政考试题及答案
- 齐齐哈尔梅里斯达斡尔族区公益性岗位招聘考试真题2024
- 大连美术考试题目及答案
- 文言文知识点梳理(7篇)人教统编版九年级语文下册
- 事故组协议书
- 2025及未来5年中国超市周转筐市场调查、数据监测研究报告
- TCNAS49-2025成人泌尿造口护理学习解读课件附送标准全文可编辑版
- DB61∕T 1305-2019 生态环境监测质量管理技术规范
- 课题3物质组成的表示第1课时(导学案)
- 八上英语每日一练【空白】
- 2025年成人高考专升本政治模拟试题及答案
- 2025年全国成人高等学校招生考试(英语-高起点)经典试题及答案五
- 环保设备运营维护管理手册
- 体系管理从产品需求到产品规划课件
- 2025新闻记者资格证及新闻写作相关知识考试题库附含参考答案
- 数据安全dsg题库及答案解析
评论
0/150
提交评论