数字秒表的设计与实现实验报告

合集下载

数字秒表实验报告

数字秒表实验报告

数字秒表一、实验目的1、理解计时器的原理与Verilog/VHDL的编程方法;2、掌握多模块设计及层次设计的方法。

二、实验原理秒计时器是由计数器和译码器、显示器组成,其核心是计数器与译码器。

60秒计时器可由二个计数器分别完成:个位为十进制计数器,十位为6进制计数。

个位计数器的计数信号由实验开发板上主频20MHZ分频产生的1Hz 时钟信号提供■十位计数器的计数信号由个位的进位信号提供。

然后由译码器对计数结果进行译码,送LED数码管进行显示。

Clr为清零,se t为开始。

三、源程序十进制计数器:module CNT10(clr,elk,ena t q,cout); input clr,elk,ena;output[3:0: q;output cout;reg[3:0' q;reg cout;always ©(posedge elk or posedge clr) beginif(clr)begin q=4r bOOOO:cout=0:endelse if(ena)if(q==4f bl001)begin q=4F bOOOO;cout=l;endelsebegin q=q+l;cout=0;endendendmodule六进制计数器:module CNT6(clr,elk,ena,q,cout);input clr,elk,ena; output[3:0. q; output cout;reg[3:0; q;reg cout;always ©(posedge elk or posedge clr) begin if(clr)begin q=4r bOOOO;cout=0;end else if(ena) if(q=4'b0101)begin q=4F bOOOO;cout=l:end elsebegin q=q+l:cout=0;endendendmodule分频器:module FPQ(clkO,clkl):input clkO;output clkl;reg 126:0] QI;reg clkl;always®(posedge clkO) if(Ql<9999999)Ql<二Ql+1;elsebegin Ql<=0; clkl<="clkl;endendmodule四、 实验任务1、 采用层次设计的方法,设计一个包括顶层及底层模块的60秒计时器,底 层模块用VeHlog/VHDL 设计(或者选用原理图输入法中宏功能元件),顶层用 原理图设计◊2、 秒计时盧应当具有系统复位功能;五、 实验步骤1、 新建工程,注意工程名与顶层文件一致,顶层文件是最终形成的图形文件。

秒表实验报告_2

秒表实验报告_2

实验八秒表一、实验目的:1、了解数字秒表的工作原理。

2、进一步熟悉用VHDL语言编写驱动七段数码管的代码。

3、掌握VHDL编写中的一些小技巧。

二、实验要求:实现数字秒表功能,要求有分,秒,1%秒显示,该秒表能够随时控制启/停,清零重新计时功能。

三、实验原理秒表的工作原理与多功能数字电子钟大致相同,唯一不同的是,由于秒表的分辨率为0.01秒。

所以整个秒表的工作时钟是在100HZ的时钟信号下完成的。

假设该秒表的应用场合小于1小时,秒表的显示格式为mm~~ss~~xx(mm表示分钟:0~59;ss表示秒:0~~59;xx表示百分之一秒:0~~99)。

四、实验步骤1、用VHDL语言编写出秒表电路程序,通过QuartusII 进行编辑、编译、综合、适配、仿真测试。

给出其所有信号的时序仿真波形。

2、按实验要求锁定管脚,重新综合。

3、在EDA6000软件中建立实验模式。

4、下载设计文件,硬件验证秒表工作性能。

五、实验结果1、调试的过程记录在仿真图正确后开始用EDA6000进行检验,所有的管脚都连接好后,通入100Hz的脉冲,秒表开始工作2、实验结果经过调试得到了正常工作的秒表,每一个环节的跳转过程都是正常的最终的波形图:3、实验程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity stopwatch isport(clk,rst,en:in std_logic;minh,minl,sech,secl,msh,msl:out std_logic_vector(3 downto 0)); end entity;architecture behav of stopwatch issignal minhi,minli,sechi,secli,mshi,msli:std_logic_vector(3 downto 0); signal clk1,clk2:std_logic;beginprocess(clk,en,rst)beginif rst='1' then mshi<="0000";msli<="0000";elsif clk'event and clk='1' thenif en='1' thenif (mshi="1001" and msli="1001") thenmshi<="0000";msli<="0000";clk1<='1';elsif msli="1001" thenmsli<="0000"; mshi<=mshi+1;else msli<=msli+1;clk1<='0';end if;end if;end if;end process;process(clk1,en,rst)beginif rst='1' then sechi<="0000";secli<="0000";elsif clk1'event and clk1='1' thenif en='1' thenif (sechi="0101" and secli="1001") thensechi<="0000";secli<="0000";clk2<='1';elsif secli="1001" thensecli<="0000"; sechi<=sechi+1;else secli<=secli+1;clk2<='0';end if;end if;end if;end process;process(clk2,en,rst)beginif rst='1' then minhi<="0000";minli<="0000";elsif clk2'event and clk2='1' thenif en='1' thenif (minhi="0101" and minli="1001") thenminhi<="0000";minli<="0000";elsif minli="1001" thenminli<="0000"; minhi<=minhi+1;else minli<=minli+1;end if;end if;end if;end process;msh<=mshi;msl<=msli;sech<=sechi;secl<=secli;minh<=minhi;minl<=minli; end behav;。

数字秒表实验报告

数字秒表实验报告

EDA课程设计题目:基于VHDL的数字秒表设计学生姓名学号学院电子信息学院专业 10通信工程指导教师二零一二年十二月基于VHDL的数字秒表设计摘要当前电子系统的设计正朝着速度快,容量大,体积小,质量轻,省电的方向发展。

推动该潮流迅速发展的决定性因素就是使用了现代化的EDA设计工具。

此次课程设计先确定了系统的逻辑功能,选择电路结构,然后确定并设计电路所需的数据处理以及控制模块,在Quartus II上以超高速硬件描述语言VHDL为系统逻辑描述方法完成了数字秒表所需的分频模块,十进制计数控制模块,六进制计数控制模块与顶层设计和引脚分配,对其进行编译仿真,并下载到实验板上实际验证,通过本设计锻炼了计算机应用能力、VHDL语言的编程能力和Quartus II 的使用能力,此次设计圆满完成了用VHDL语言设计1/1000秒数字秒表并仿真和实际下载到ALTERA公司的ACEX1K系列的EP1K30TC144-3中实现。

关键词:EDA、Quartus II、VHDL、模块、仿真、ACEX1KAbstractThe electronic system design is moving speed, large capacity, small volume, light weight, energy saving direction. The trend of rapid development of determinant is the use of modern EDA design tools. This course is designed to determine the logic function of the system, establish the algorithm process, selection of circuit structure and circuit design, and then determine the desired data processing and control module, in the Quartus II to very high speed hardware description language VHDL as the system logical description method for completing the digital stopwatch desired frequency module, decimal counting control module, base six counting control module with top design and pin assignment, the compiled simulation, and downloaded to the experiments on actual test and verify, through the design of exercise ability of computer application and VHDL programming language and Quartus II using capability, the design was completed by VHDL language design 1\/1000 seconds stopwatch and simulation and the actual download to ALTERA company's ACEX1K series EP1K30TC144-3 implementation.Key Words:EDA、Quartus II、VHDL、Module、Simulation、ACEX1K目录摘要----------------------------------------------------------------2 Abstract------------------------------------------------------------2一、设计要求--------------------------------------------------------4二、设计思想与方案论证----------------------------------------------42.1 设计思想----------------------------------------------------42.2 方案论证----------------------------------------------------4三、系统设计--------------------------------------------------------53.1 顶层电路设计------------------------------------------------53.2时钟分频电路模块---------------------------------------------63.3十进制计数控制模块-------------------------------------------73.4六进制计数控制模块-------------------------------------------7四、系统仿真--------------------------------------------------------84.1 模块仿真----------------------------------------------------84.1.1 时钟分频电路模块仿真 ----------------------------------84.1.2 十进制计数控制模块仿真---------------------------------94.1.3 六进制计数控制模块仿真---------------------------------94.2 总体仿真---------------------------------------------------10五、下载实现--------------------------------------------------------105.1 引脚分配---------------------------------------------------115.2 下载验证---------------------------------------------------11六、问题与不足-----------------------------------------------------13七、心得体会-------------------------------------------------------13参考文献-----------------------------------------------------------14附录---------------------------------------------------------------14附录1 :本设计各模块代码-------------------------------------------14一、设计要求设计用于体育比赛用的数字秒表,要求1、计时精度大于1/1000秒,计时器能显示1/1000秒的时间,提供给计时器内部定时的时钟频率为12MHz;计时器的最长计时时间为1小时,为此需要一个7位的显示器,显示的最长时间为59分59.999秒2、设计有复位和起/停开关(1) 复位开关用来使计时器清零,并做好计时准备。

电子秒表实验报告

电子秒表实验报告

.目录1绪论 (2)1.1课题背景 (2)1.2秒表的发展趋势 (2)1.3本课题研究容 (3)2研究方案与预期成果 (3)2.1研究方案 (3)2.2预期成果 (3)3设计任务与思想..................................... 错误!未定义书签。

3.1设计任务 ..................................... 错误!未定义书签。

3.2设计目的 ..................................... 错误!未定义书签。

3.3设计总体思想..................................... 错误!未定义书签。

4系统硬件设计 (6)4.1系统硬件设计框图 (6)4.2 LED显示电路..................................... 错误!未定义书签。

4.3时钟分频计数电路 .............................. 错误!未定义书签。

4.4秒脉冲电路.................................... 错误!未定义书签。

4.5 控制开关电路 ................................. 错误!未定义书签。

4.6系统电路图.................................... 错误!未定义书签。

5系统仿真与调试..................................... 错误!未定义书签。

5.1软件平台 ..................................... 错误!未定义书签。

5.2系统仿真 ..................................... 错误!未定义书签。

5.3系统软件调试.................................. 错误!未定义书签。

数字秒表设计实验报告(一)

数字秒表设计实验报告(一)

数字秒表设计实验报告(一)数字秒表设计实验报告Introduction•实验目的:设计并实现一个数字秒表•实验时间:2021年10月10日至2021年10月15日•实验对象:本科计算机专业学生•实验设备:计算机、编程软件Experiment Procedure1.寻找合适的编程语言和开发工具2.设计秒表的用户界面3.编写代码实现秒表的计时功能4.测试并调试代码5.完善用户界面,添加重置和暂停功能6.进行性能测试,并分析结果Experimental Findings•选用Python编程语言和PyQt图形库进行开发•按照用户界面设计,实现了秒表的计时功能•通过测试,发现秒表计时准确性较高,误差范围小于0.1秒•添加了重置和暂停功能,提高了秒表的实用性•性能测试表明,在处理大数据量时,秒表的响应速度仍然较快Conclusion通过本次实验,我们成功设计并实现了一个功能完善的数字秒表。

通过合理的编程语言选择和用户界面设计,实验结果表明,我们的秒表具有准确的计时功能、良好的用户体验和较高的性能。

这对于计算机专业学生来说,具有较高的实用价值。

Future Work尽管我们已经取得了较好的实验结果,但仍有一些改进的空间。

在未来的工作中,我们计划:•进一步提高秒表的计时准确性,减小误差范围•探索更多的用户界面设计方案,增加更多便利的功能•优化性能,提高秒表在处理大数据量时的响应速度•结合云服务,实现秒表数据的备份和同步功能Acknowledgements感谢实验组的所有成员共同努力,以及指导老师的支持和指导,使得本次实验取得了圆满成功。

Reference无抱歉,关于数字秒表设计实验报告的文章已经终止。

数字秒表实验报告---EDA

数字秒表实验报告---EDA

数字秒表实验报告—EDA项目背景本次实验旨在使用EDA工具设计一个数字秒表电路,通过FPGA开发板进行验证,具体要求如下:1.实现毫秒计时,并可以在数码管上显示当前计时数值。

2.支持开始/暂停、清零等操作。

设计思路本次实验的数字秒表电路由以下模块构成:1.时钟发生器模块:用于产生时钟信号,以驱动计数器进行计数。

2.计数器模块:通过时钟信号进行计数,并将计数结果传递给显示模块。

3.显示模块:将计数结果转换为数码管显示的数码信号,并控制数码管进行显示。

其中,时钟发生器模块和计数器模块都是基础电路模块,在这里不再赘述,下面将着重介绍显示模块的设计。

显示模块设计显示模块主要由控制模块和数码管模块构成。

控制模块根据计数结果和当前时间,控制数码管模块显示相应的数码。

在这里,我们采用的是共阳极的数码管。

具体来说,我们将控制模块分为两个子模块:时分秒计数器和数码显存控制器。

时分秒计数器时分秒计数器通过接收计数器模块的计数结果,将其转换为时分秒,并存储在计数器寄存器中。

计数器寄存器是一个64位的寄存器,由三个16位的子寄存器组成,用于存储时分秒。

当计数器模块的计数结果为0时,时分秒计数器会重置计数器寄存器。

数码显存控制器数码显存控制器由一个6位的数据存储器和一个6位的显示寄存器组成。

当计数器模块进行计数时,显示寄存器中存储的数码信号会根据时分秒计数器的值进行更新。

同时,数码显存控制器也会控制共阳极数码管进行相应的显示操作。

原理图设计根据以上的设计思路,我们可以得到数字秒表电路的原理图如下:原理图原理图EDA设计流程设计环境本次实验使用的是Xilinx ISE Design Suite 14.7,这是一个使用VHDL进行设计的EDA工具。

设计流程1.新建工程并设置工程名、目录、设备等基本信息。

2.添加源文件,包括时钟发生器模块、计数器模块、显示模块,以及顶层模块。

将所有模块综合为一个顶层设计。

3.检查时序约束,以保证电路能够正确运行。

数字式秒表实验报告

数字式秒表实验报告

数字式秒表 摘 要如今,信息正是一个高度发展的产业,而数字技术是信息的基础,数字技术是目前发展最快的技术领域之一,数字技术在数字集成电路集成度越来越高的情况下,开发数字系统的使用方法和用来实现这些方法的工具已经发生了变化,但大规模集成电路中的基本模块结构仍然需要基本单元电源电路的有关概念,因此用基本逻辑电路来组成大规模或中规模地方法仍然需要我们掌握。

二进制数及二进制代码是数字系统中信息的主要表示形式,与,或,非三种基本逻辑运算是逻辑代数的基础,相应的逻辑门成为数字电路中最基本的元件。

数字电路的输入,输出信号为离散数字信号,电路中电子元器件工作在开关状态。

除此之外,由与,或,非门构成的组合逻辑功能器件编码器,译码器,数字分配器,数字选择器,加法器,比较器以及触发器是常用的器件。

与模拟技术相比,数字技术具有很多优点,这也是数字技术取代模拟技术被广泛使用的原因。

本设计所实现的数字式秒表是电子设计技术中最基本的设计实验之一。

该数字计数系统的逻辑结构较简单,是由脉冲信号发生器,分频器,计数器,译码器,数码管组成。

本设计报告由内容摘要、设计任务要求、元件清单、电路图、设计成果的评价及课程设计心得体会组成,力求将整个系统的设计过程、原理、以及心得体会完整的呈现出来。

关键词:计数器 译码器 数码管 JK 触发器 D 触发器 谐振电路装 订 线目 录一 设计任务要求…………………………………………………… 二 元件清单……………………………………………………………×2.1 计数器74LS192……………………………………………………… 2.2 译码器74LS47……………………………………………………… 2.3 D 触发器74LS74……………………………………………………… 2.4 JK 触发器74LS112……………………………………………………2.5 与非门74LS00………………………………………………………… 2.6 电阻、电容、二极管………………………………………………… 三 电路图………………………………………………………………… 四 设计成果评价…………………………………………………………… 五 课程设计心得体会………………………………………………………附录………………………………………………………………………装 订 线一 设计任务要求1.1 设计任务用TTL 或CMOS 集成电路设计数字式秒表逻辑控制电路并实验验证。

数字秒表实验报告

数字秒表实验报告

数字秒表实验报告数字秒表实验报告引言数字秒表在实验中起着至关重要的作用。

它不仅可以精确地测量时间,还可以记录多个时间点,提供数据分析的依据。

本次实验旨在探究数字秒表的使用方法和准确性,并对其在实验中的应用进行评估。

实验方法本次实验采用了两种不同的数字秒表进行对比。

实验员分别使用了A型和B型数字秒表,记录了同一事件的时间。

每个事件的时间记录了十次,以消除可能的误差。

结果与讨论通过对实验结果的分析,我们发现A型数字秒表的准确性要高于B型数字秒表。

在同一事件的十次记录中,A型数字秒表的时间差异较小,而B型数字秒表的时间差异较大。

这表明A型数字秒表在时间测量方面更加可靠。

进一步分析显示,A型数字秒表的准确性可能与其采用的技术有关。

A型数字秒表采用了高精度的晶体振荡器,能够提供更准确的时间测量。

而B型数字秒表则采用了普通的振荡器,其精度较低。

此外,实验员的使用方法也可能对结果产生影响。

我们发现,实验员在使用A型数字秒表时更加熟练,操作更加稳定。

而在使用B型数字秒表时,实验员可能存在一定的误差。

因此,实验员的技术水平也是影响数字秒表准确性的重要因素。

实验的局限性尽管本次实验结果显示A型数字秒表的准确性较高,但我们也要意识到实验存在一定的局限性。

首先,我们仅使用了两种数字秒表进行对比,样本量较小,可能无法代表所有数字秒表的准确性。

其次,实验员的技术水平也可能对结果产生影响,不同实验员的使用方法和操作习惯可能不同。

实验应用数字秒表在实验中的应用非常广泛。

它可以用于测量实验的持续时间,记录不同事件的时间点,进行数据分析等。

在科学研究、医学实验、体育训练等领域,数字秒表都扮演着重要的角色。

结论通过本次实验,我们得出了一些关于数字秒表的结论。

A型数字秒表在准确性方面表现更好,可能与其采用的技术和实验员的使用方法有关。

然而,我们也要意识到实验存在一定的局限性。

在实际应用中,我们应选择适合具体实验需求的数字秒表,并注意实验员的技术水平。

数字秒表的设计与实现实验报告

数字秒表的设计与实现实验报告

电子科技大学《数字秒表课程设计》姓名: xxx学号:学院:指导老师:xx1摘要EDA技术作为电子工程领域的一门新技术,极大的提高了电子系统设计的效率和可靠性。

文中介绍了一种基于FPGA在ISE10.1软件下利用VHDL语言结合硬件电路来实现数字秒表的功能的设计方法。

采用VHDL硬件描述语言,运用ModelSim等EDA仿真工具。

该设计具有外围电路少、集成度高、可靠性强等优点。

通过数码管驱动电路动态显示计时结果。

给出部分模块的VHDL源程序和仿真结果,仿真结果表明该设计方案的正确,展示了VHDL语言的强大功能和优秀特性。

关键词:FPGA, VHDL, EDA, 数字秒表2目录第一章引言 (4)第二章设计背景 (5)2.1 方案设计 (5)2.2 系统总体框图 (5)2.3 -FPGA实验板 (5)2.4 系统功能要求 (6)2.5 开发软件 (6)2.5.1 ISE10.1简介 (6)2.5.2 ModelSim简介 (6)2.6 VHDL语言简介 (7)第三章模块设计 (8)3.1 分频器 (8)3.2 计数器 (8)3.3 数据锁存器 (9)3.4 控制器 (9)3.5 扫描控制电路 (10)3.6 按键消抖电路 (11)第四章总体设计 (12)第五章结论 (13)附录 (14)3第一章引言数字集成电路作为当今信息时代的基石,不仅在信息处理、工业控制等生产领域得到普及应用,并且在人们的日常生活中也是随处可见,极大的改变了人们的生活方式。

面对如此巨大的市场,要求数字集成电路的设计周期尽可能短、实验成本尽可能低,最好能在实验室直接验证设计的准确性和可行性,因而出现了现场可编程逻辑门阵列FPGA。

对于芯片设计而言,FPGA的易用性不仅使得设计更加简单、快捷,并且节省了反复流片验证的巨额成本。

对于某些小批量应用的场合,甚至可以直接利用FPGA实现,无需再去订制专门的数字芯片。

文中着重介绍了一种基于FPGA利用VHDL硬件描述语言的数字秒表设计方法,在设计过程中使用基于VHDL的EDA工具ModelSim对各个模块仿真验证,并给出了完整的源程序和仿真结果。

数字电路课程设计报告数字秒表

数字电路课程设计报告数字秒表

数字电路课程设计报告——数字秒表一、设计任务与技术指标:设计数字秒表,以实现暂停、清零、存储等功能。

设计精度为0.01秒。

二、设计使用器件:74LS00 多片74163 4片4511 4片NE555 1片二极管1枚LED 共阴极七段译码器 4 个导线、电阻若干三、数字秒表的构成:利用555 设计一个多谐振荡器,其产生的毫秒脉冲触发74LS163计数,计时部分的计数器由0.01s 位、0.1s 位、s 个位、和s 十位共四个计数器组成,最后通过CD4511 译码在数码管上显示输出。

由“启动和停止电路”控制启动和停止秒表。

由“接地”控制四个计数器的清零。

图1 电子秒表的组成框图四、实现功能及功能特点:(1)、在接通电源后秒表显示00:00,当接通计时开关时秒表开始计时。

(2)、清零可在计时条件下也可在暂停条件下进行。

(3)、解决了在使用163清零端和保持端时由于163默认的清零端优先级高于保持端造成的0.01秒位上无法保持到0.09的技术问题。

(4)、增加了数据溢出功能,由于是4位秒表,最多计到一分钟,当秒表到达一分钟时,秒表自动暂停显示在60:00秒处,此时二极管发亮,起警示灯作用。

清零后则可继续计时。

(5)、由于条件有限,我们自己用导线制作了电源、清零、暂停等开关以减少导线的拔插造成的面板的不美观。

下图为完整课程设计的实物图:五、课程设计原理:本课程设计由模6000计数器和其控制电路组成,模6000计数器功能由同步加法计数器74163和与非门74LS00组成。

74163的功能及用法:74163同步加法计数器具有以下功能:(1)、同步清零功能。

当清零端输入低电平,还必须有时钟脉冲CP的上升沿作用才能使各触发器清零,此过程为同步清零。

(2)、同步并行置数功能。

(3)、同步二进制加计数功能。

(4)、保持功能。

综上所述,74163是具有同步清零、同步置数功能的4位二进制同步计数器。

74163的应用:(1)、构成任意模的计数器将74163与少量门电路结合可构成任意模计数器。

数字秒表课程设计报告

数字秒表课程设计报告

目录数字秒表设计实验任务书 (1)一、设计实验目的: (1)二、设计实验说明及要求: (1)三、数字秒表组成及功能: (1)四、系统硬件要求: (1)五、设计内容及步骤: (2)六、硬件实现 (2)实验报告 (2)一、数字秒表顶层设计 (2)二、数字秒表内部设计 (3)1、分频器 (3)2、十进制计数器 (4)3、六进制计数器 (5)4、二十四进制计数器 (7)5、数据选择和数码管选择模块 (8)6、数码管驱动模块: (9)三、数字秒表仿真波形 (11)四、硬件验证 (11)五、实验总结 (11)数字秒表设计实验任务书一、设计实验目的:在MAX+plusII软件平台上,熟练运用VHDL语言,完成数字时钟设计的软件编程、编译、综合、仿真,使用EDA实验箱,实现数字秒表的硬件功能。

二、设计实验说明及要求:1、数字秒表主要由:分频器、扫描显示译码器、一百进制计数器、六十进制计数器(或十进制计数器与6进制计数器)、十二进制计数器(或二十四进制计数器)电路组成。

在整个秒表中最关键的是如何获得一个精确的100H Z 计时脉冲,除此之外,数字秒表需有清零控制端,以及启动控制端、保持保持,以便数字时钟能随意停止及启动。

2、数字秒表显示由时(12或24进制任选)、分(60进制)、秒(60进制)、百分之一秒(一百进制)组成,利用扫描显示译码电路在八个数码管显示。

3、能够完成清零、启动、保持(可以使用键盘或拨码开关置数)功能。

4、时、分、秒、百分之一秒显示准确。

三、数字秒表组成及功能:1、分频率器:用来产生100H Z计时脉冲;2、二十四进制计数器:对时进行计数;3、六进制计数器:分别对秒十位和分十位进行计数;4、十进制计数器:分别对秒个位和分个位进行计数;5、扫描显示译码器:完成对7字段数码管显示的控制;四、系统硬件要求:1、时钟信号为10MHz;2、FPGA芯片型号EPM7128LC84—15、EP1K30TC144—3或EP1K100QC208—3(根据实验箱上FPGA芯片具体选择);3、8个7段扫描共阴级数码显示管;4、按键开关(清零、启动、保持);五、设计内容及步骤:1、根据电路持点,用层次设计概念。

数字秒表设计报告

数字秒表设计报告

吉林建筑工程学院电气与电子信息工程学院微机原理课程设计报告设计题目:数字秒表的设计专业班级:学生姓名:学号:指导教师:设计时间:数字秒表设计报告一、课程设计目的通过该设计,掌握8255并行接口芯片、8253定时计数芯片的使用和数码管的使用,并掌握相应的程序设计和电路设计的技能。

是对8255并行接口芯片章节理论学习的总结和补充,为后续的硬件课程的学习打下基础。

二、课程设计的内容及要求利用8253计数器2和计数器1,实现1Hz信号的产生,然后计数器采用硬件触发选通方式计数,CPU读取计数结果,并转换为读秒计数,并把读秒计数的结果用数码管显示出来(2位)。

三、总体设计方案设计一个利用微机原理与接口技术完成秒表的设计方案, 该方案主要是选择8253A的计数器2与计数器1产生一个1Hz的中断脉冲,其输出端与不可屏蔽中断请求信号端相连接。

利用1.19318MHz脉冲方波输入CLK2,设置CLK2的初值为59659,将CLK2的输出端连接到CLK1,设置CLK1的初值为20,将OUT1连接到8086CPU 的NMI端。

将NMI端有一个低电平信号输入时,8086CPU将产生中断进行秒计数。

8086通过8255A将PA口作为段选信号输出端,将PB口作为片选信号输出端。

图3.1 方案设计框图此方案的核心内容是利用微机原理与接口技术完成秒表的设计方案,该方案主要是选择8253A的计数器2和计数器1进行1s的定时,其输出于OUT1与8086的NMI相连,当定时到1s的时候产生一个中断信号,在中断服务程序进行秒的计数,并送入相应的存储单元;8255的A口接七段数码管的段选信号,B口接七段数码管的位选信号,秒的数值通过对8255的编程可以显示在七段数码管上面。

该方案是利用微机接口技术的典范案例,就可行性而言,也是行之有效的。

四、硬件系统设计8086简介Intel 8086拥有四个16位的通用寄存器,也能够当作八个8位寄存器来存取,以及四个16位索引寄存器(包含了堆栈指标)。

数字逻辑实验报告(秒表)

数字逻辑实验报告(秒表)

数字逻辑实验报告秒表设计[日期]MICROSOFT[公司地址]一、 实验目的二、实验内容及要求实验要求设计并实现一个数字秒表。

该秒表要实现以下功能:1、该秒表可以产生稳定的脉冲信号作为秒表的计时基准。

该秒表可以实现暂停、停止。

2、该秒表可实现暂停、恢复计数和清零功能。

3、改秒表具有十进制的数字显示功能。

三、实验电路总体结构设计根据设计要求,可以构造出数字秒表的结构框图,如图3-1所示。

该数字秒表的工作原理是:由秒脉冲发生电路产生稳定的秒脉冲信号,经过控制开关输出到计数器中。

秒计数器计满10后向秒十计数器产生进位脉冲。

计数器的输出经显示译码器译码后送显示器显示。

图3-1四、实验电路详细设计1、秒脉冲发生电路设计由于5G555具有电源范围宽、定时精度高、使用方法灵活等特点,我们采用由5G555构成的多谐振荡器产生秒脉冲信号。

5G555功能表如表3-2所示。

表3-2 5G555功能表 输入 输出TH TR RD OUT 放电三极管 d d 0 0 导通 >2/3Vcc >1/3Vcc 1 0 导通 >2/3Vcc <1/3Vcc 1 1 截止 <2/3Vcc >1/3Vcc 1 不变 不变计数器译码及显示电路显示 显示译码 译码 秒十计数秒计数 秒脉冲发生电路振荡器<2/3Vcc <1/3Vcc 1 1 截止由5G555构成的多谐振荡器如图3-1所示。

图3-1由图4-1可知,电路由两个外加电阻和一个电容组成。

5G555的D 端经R1接至电源VCC ,构成一个反相器。

电阻R2和电容C 构成积分电路。

积分电路的电容电压Vc 作为电路输入至TH 和TR 。

电路工作原理如下。

由于接通电源瞬间,电容C 来不及充电,电容器两端电压Vc 为低电平,小于(1/3)Vcc ,故TH 端电压<2/3Vcc 与TR 端电压<1/3Vcc ,输出OUT 状态为1,放电三极管T 截止。

电子科技大学数字式秒表设计与实现 实验报告

电子科技大学数字式秒表设计与实现 实验报告

数字式秒表设计与实现指导老师:姓名:学号:摘要本文主要介绍了基于FPGA使用VHDL语言的数字式秒表的设计开发流程。

该设计以VHDL作为硬件开发语言,以ISE作为软件开发平台,成功的实现了数字式秒表的计数、清零、暂停等功能。

并使用了ModelSim仿真软件对各个单元电路模块进行了仿真,且完成了综合布局布线,最终下载到电路板上,实际测试结果良好。

关键字:FPGA,VHDL,数字目录数字式秒表设计与实现 (1)第一章引言 (4)1.1 选题背景 (4)1.2 实验方式 (4)1.3 技能培养 (4)第二章基于FPGA的VHDL设计流程 (5)2.1 概述 (5)2.2 VHDL语言介绍 (5)2.2.1 VHDL的特点 (5)2.2.2 VHDL开发流程 (6)2.3 FPGA开发介绍 (8)2.3.1 FPGA简介 (8)2.3.2 FPGA开发流程 (8)第三章数字式秒表的软件开发环境 (10)3.1开发环境 (10)3.2ModelSim介绍 (10)3.3 ISE介绍 (11)第四章数字式秒表的设计与实现 (12)4.1 任务要求 (12)4.2 实验条件 (12)4.3 原理框图 (13)4.4 各模块的实现 (13)4.4.1 分频器 (13)4.4.2 输入控制电路 (14)4.4.3 计时模块 (16)4.4.4 显示模块 (18)4.5 分配引脚和下载实现 (19)4.6 测试结果 (20)第五章结论 (21)参考文献 (22)致谢 (23)附录 (24)附录1.电子秒表的顶文件 (24)附录2分频器 (28)附录3消抖电路 (28)附录4 控制电路 (29)附录5 十进制计数器 (30)附录9 锁存器 (30)附录10 显示电路 (31)第一章引言第一章引言1.1选题背景《电子技术综合实验》课程通过引入模拟电子技术和数字逻辑设计的综合应用、基于MCU/FPGA/EDA技术的系统设计等综合型设计型实验,对学生进行电子系统综合设计与实践能力的训练与培养。

数字秒表试验报告

数字秒表试验报告

基于LCD显示的秒表设计--------------- EDA电子综合设计姓名:班级:学号:指导老师:时间:2012.6.28基于LCD 显示的秒表设计一:设计目的:1、设计的秒表具有清零、暂停/继续技术功能,清零通过拨码开关控制,暂 停/继续通过按键控制,按下一次暂停,按下两次继续。

2、秒表计时范围0—9999.999秒,精度到ms 。

2、LCD 实施显示秒表计时状态。

3、系统时钟采用实验板上提供的50MHz 时钟信号源。

4、设计成同步电路模式。

二:设计原理本实验主要分为四大模块(按键处理,分频,计数,显示)。

下面我将分块阐述: 1:按键处理模块此模块是为了让key1按键即pause 没按下一次有不同的状态。

清零(clear=0)通过拨码开关控制,暂停/继续(pause)通过按键控制,按下一次(pause=1)暂停,按下两次(pause=0)继续。

同步复位键由按键开关控制。

Key D[1] clk主要思想是:通过两个D 触发器使按键通过D[0],和D[1]时产生一个时钟的延时,其目的是没按下一次按键产生一个延时一个时钟的脉冲en_tmp ,通过对en_tmp 的判断是否为高电平实现输出脉冲en 的翻转。

2.分频模块:因为计数模块精确到1ms 所以需将20ns 的系统时钟(clk )分频为1ms 时钟(clk_out);否是开始 Posedge clk? i++D 触发器 D 触发器否是3:计数模块:设计要求显示9999.999,所以每一位用4为二进制表示从0-9的显示,共有4x7=28位二进制数,为方便叙述和代码的书写我将这七个数从高到低定义为4位的Q,B,S,G ,P1,P2,P3。

是否否是i=24999? clk_out=~clk_out 结束 开始Rst=0? Pause=0? 计数 清零 clear=0? 复 位计数小部分:否 是否是否.... ...............结束 赋 值 Posedge clk_out?P3++ P3=9? P2++ 结束开 始 P2=9? P3++4.lcd显示模块:关键点在于ASCII码中数字0为30,1为31,······,因此只需将4b'0011赋值给lcd_data_out的高四位,Q,B,S,G,P1,P2,P3赋值给lcd_data_out的低四位即可显示Q,B,S,G,P1,P2,P3上对应的数值。

数字式秒表实验报告

数字式秒表实验报告

数字式秒表实验报告摘要本次设计任务是设计一个数字式秒表经查阅资料后我把实验分为1.脉冲产生部分。

2.电路控制部分。

3.计数部分4.译码部分。

5显示部分。

脉冲产生部分我选择555多谐振荡器,产生100Hz的脉冲。

经参考资料,电路控制部分:启动和暂停控制开关使用由RS触发器组成的无抖动开关。

使用74ls160计数器计数,7447译码器驱动共阳极七段显示器。

实验要求1.秒表最大计时值为99分59.99秒;2. 6位数码管显示,分辨率为0.01秒;3 .具有清零,启动计时,暂停及继续计数等控制功能;4.控制操作间不超过二个。

实验分析数字式秒表,所以必须有一个数字显示。

按设计要求,须用七段数码管来做显示器。

题目要求最大记数值为99,59,99,那则需要六个数码管。

要求计数分辨率为0.01秒,并且需要相应频率的信号发生器。

选择信号发生器时,有两种方案:一种是用晶体震荡器,另一种方案是采用集成电路555定时器与电阻和电容组成的多谐振荡器。

经过查询资料,555多谐振荡器性能稳定,故采用555多谐振荡器。

数字式秒表是一个频率(100HZ)进行计数的计数电路。

由于数字式秒表计数的需要,故需要在电路上加一个控制电路,该控制电路清零、启动计时、暂停及继续计数等控制功能,同时100HZ的时间信号必须做到准确稳定。

数字电子钟的总体图如图所示。

由图可见,数字电子钟由以下几部分组成:555振荡器秒脉冲发生器,防抖开关;秒表控制开关;一百进制秒、分计数器、六十进制秒计数器;以及秒、分的译码显示部分等七段显示器译码器译码器译码器1005551. 555构成的多谐振荡器555构成的多谐振荡器电路图555多谐振荡器工作波形多谐振荡器工作波形周期计算2.多谐振荡器仿真图根据设计要求,需要产生一个频率为100HZ的信号,由于f=1/T,带入可以算出R1=R1=4.7KΩ,在仿真软件上仿真的时候可以设置电阻为4.7KΩ,加上一个50Ω的电位器来调节脉冲信号的精确度。

数字秒表设计总结报告

数字秒表设计总结报告

数字秒表课程设计总结报告一、课题名称数字秒表设计二、内容摘要本实验要求设计一个计数范围在0.0—9.9秒的数字秒表。

电路设计基本包括0.1秒脉冲发生器,信号控制端,整形电路,计数电路,译码电路和显示器这几部分构成。

0.1秒脉冲发生器由555定时器构成的多谐振荡电路实现,由3端口接入计数器的时钟端。

信号控制端由RS触发器实现,能够对整个电路进行清零、计数、停止和复位的作用。

整形电路有单稳态触发器构成,对RS触发端输出的信号进行整形,但不改变其逻辑符号。

本实验的技术器由两个十进制BCD码74LS160级联而成。

在计数器的四个输出端分别接译码器的四个置数端,译码器由74LS48实现。

这个电路设有两个开关K1,K2,通过K1,K2的置0和置1来实现对电路的清零、计数、暂停、复位的控制。

这样,一个简易的数字秒表便设计完成了。

三、课题任务,指标,功能要求课题任务:用中小规模集成电路设计一个数字秒表。

指标:计数范围在0.0—9.9秒之间。

功能要求:有清零、计数、停止和复位的功能。

四、单元框图五、单元电路设计,参数计算,元器件选择1、0.1秒脉冲发生器:参数计算:T=0.7(Ra+2Rb)C555定时器构成多谐振荡器,其芯片功能表如下:TH TR非R非OUT DISX X L L 导通>2/3Vcc >1/3Vcc H L 导通<2/3Vcc >1/3Vcc H 原状态原状态<2/3Vcc <1/3Vcc H H 关断注明:6脚为THR,触发器输入端,低电平有效。

2脚为TRI,阀值输入端,高电平有效。

4脚为RST,总复位端,低电平有效。

7脚为DIS,放电端。

5脚为CON,控制端。

1脚接地,8脚接电源。

3脚为输出端。

TD为内部三极管。

其管脚图如下所示:2、信号控制端,RS触发器,实现对这个电路的清零、计数、停止、复位功能。

RS触发器,其功能表如下:Rd非Sd非Q n+1Q n+1非1 1 Q n Q n非0 1 0 11 0 1 00 0 1* 1*注:RS触发器可由导线与74LS00二输入与非门构成Rd非和Sd非都为1时,基本RS触发器实现信号保持功能,即Q n+1=Q n,Q n+1非=Q n非;当Rd非=0时,基本RS触发器直接置零;当Sd非=0时,基本RS触发器置1.3、计数器用74LS160实现:输入输出CP Rd非LD非EP ET A B C D QA QB QC QD ×L ×××××××L L L L ↗H L ×× A B C D A B C D ×H H L ×××××保持×H H ×L ××××保持↗H H H H ××××计数↗H L ××L L L L L L L L 注:当Rd非=0时,计数器清零;当Rd非=1,LD非=0时,计数器预置数;当前两者都为1,EP或ET为0时,计数器有保持功能;当四者全为1时,计数器进行计数功能。

数字秒表设计实验报告

数字秒表设计实验报告

数字秒表设计实验报告数字秒表设计实验报告1. 引言•简要介绍实验的目的和意义2. 设计原理•介绍数字秒表的基本原理和工作流程3. 实验步骤•列出实验的具体步骤和操作流程4. 实验结果分析•分析实验过程中的数据和观测结果•对实验结果进行解释和讨论5. 实验结论•给出实验的总结和结论6. 实验改进•提出对实验的改进建议和优化方案7. 参考资料•引用相关的文献和资料来源8. 附录•将实验过程中的数据、图表等附加在文末作为附录以上为一个大致的框架,具体内容根据实验的实际情况进行填写。

本实验报告使用Markdown格式,通过使用标题和列表等语法,使文章更加清晰易读。

注意,为了遵守规则,本文中不包含实际的字母、图片或网址。

希望这份指导对你有所帮助!数字秒表设计实验报告1. 引言•实验目的:本实验旨在设计一个数字秒表,用于测量时间,并掌握数字电路的设计原理和实践技能。

•实验意义:准确测量时间是科学研究和生产实践中的重要要求,数字秒表作为计时测量的常用工具,具有广泛的应用价值。

2. 设计原理•数字秒表的基本原理是利用稳定的时钟信号源产生时间基准,通过计数器、时钟分频电路和显示模块实现对时间的测量和显示。

3. 实验步骤1.首先确定秒表的最高位数,根据实际需求选择适当的位数。

2.设计计数器电路,使用计数器芯片进行计数,根据最高位数确定计数器的范围。

3.设置时钟分频电路,通过将时钟信号分频得到适合计数器工作的时钟频率。

4.连接计数器和时钟分频电路,确保二者能够正确配合。

5.设计显示模块,将计数器的输出转换为数字形式,用于显示具体的时间数值。

6.连接显示模块和计数器,进行正确的信号传递和信息显示。

7.进行测量和验证,检查秒表的测量准确性并进行调整。

4. 实验结果分析•对实验过程中的数据和观测结果进行分析•通过比较测量结果与标准时间的差异,评估秒表的准确性•分析秒表存在的潜在问题并提出解决方案5. 实验结论•总结实验设计和实验过程•归纳出实验结果和分析的要点•得出对设计的数字秒表的结论,包括准确性、可靠性和实用性等方面的评价6. 实验改进•针对实验中发现的问题,提出改进的建议和优化方案•探讨可能的改进措施,包括电路设计、算法优化、显示方式等方面的改进7. 参考资料•[1] 电子技术实验教程,XXX出版社•[2] 数字电路原理与设计,XXX出版社8. 附录•实验数据表格•电路图和连接图•实验中使用的元器件清单以上为数字秒表设计实验报告的大致框架,实验的具体内容和结果分析部分需要根据实际情况进行填写。

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

电子科技大学《数字秒表课程设计》姓名: xxx学号:学院:指导老师:xx1摘要EDA技术作为电子工程领域的一门新技术,极大的提高了电子系统设计的效率和可靠性。

文中介绍了一种基于FPGA在ISE10.1软件下利用VHDL语言结合硬件电路来实现数字秒表的功能的设计方法。

采用VHDL硬件描述语言,运用ModelSim等EDA仿真工具。

该设计具有外围电路少、集成度高、可靠性强等优点。

通过数码管驱动电路动态显示计时结果。

给出部分模块的VHDL源程序和仿真结果,仿真结果表明该设计方案的正确,展示了VHDL语言的强大功能和优秀特性。

关键词:FPGA, VHDL, EDA, 数字秒表2目录第一章引言 (4)第二章设计背景 (5)2.1 方案设计 (5)2.2 系统总体框图 (5)2.3 -FPGA实验板 (5)2.4 系统功能要求 (6)2.5 开发软件 (6)2.5.1 ISE10.1简介 (6)2.5.2 ModelSim简介 (6)2.6 VHDL语言简介 (7)第三章模块设计 (8)3.1 分频器 (8)3.2 计数器 (8)3.3 数据锁存器 (9)3.4 控制器 (9)3.5 扫描控制电路 (10)3.6 按键消抖电路 (11)第四章总体设计 (12)第五章结论 (13)附录 (14)3第一章引言数字集成电路作为当今信息时代的基石,不仅在信息处理、工业控制等生产领域得到普及应用,并且在人们的日常生活中也是随处可见,极大的改变了人们的生活方式。

面对如此巨大的市场,要求数字集成电路的设计周期尽可能短、实验成本尽可能低,最好能在实验室直接验证设计的准确性和可行性,因而出现了现场可编程逻辑门阵列FPGA。

对于芯片设计而言,FPGA的易用性不仅使得设计更加简单、快捷,并且节省了反复流片验证的巨额成本。

对于某些小批量应用的场合,甚至可以直接利用FPGA实现,无需再去订制专门的数字芯片。

文中着重介绍了一种基于FPGA利用VHDL硬件描述语言的数字秒表设计方法,在设计过程中使用基于VHDL的EDA工具ModelSim对各个模块仿真验证,并给出了完整的源程序和仿真结果。

4第二章设计背景2.1 方案设计本次试验采用如下方案:由基本数字逻辑单元进行设计,它由振荡器产生一定频率的方波脉冲,该信号的频率为48MHz,之后由分频器对方波脉冲进行分频,分别得到实验所需的1KHz和100Hz两种频率,以达到设计电路所需的频率脉冲,100Hz脉冲作为时钟信号驱动计数器进行计数,1KHz作为扫描频率,产生计数信号,最后由一个3-8译码器译码并在数码管上显示。

本次试验不需要搭建硬件电路,是基于FPGA的数字秒表设计方法。

采用VHDL硬件描述语言进行软件设计,最后将程序下载到电路板上运行。

2.2 系统总体框图本实验所设计的数字秒表主要有分频器计数器、数据锁存器、控制器、扫描计数器、数据选择器和7段译码器,显示电路、按键消抖电路组成。

系统框图如下图所示。

图1-12.3 -FPGA实验板我们将在EEC-FPGA实验板上完成秒表的设计实现,实验板原理如图1-3所示。

图1-252.4 系统功能要求秒表的计时范围为00’00”00 ~ 59’59”99。

有两个按钮开关Start/Stop和Split/Reset,控制秒表的启动、停止、分段和复位:在秒表已经被复位的情况下,按下“Start/Stop”键,秒表开始计时。

在秒表正常运行的情况下,如果按下“Start/Stop”键,则秒表暂停计时;再次按下该键,秒表继续计时。

在秒表正常运行的情况下,如果按下“Split/Reset”键,显示停止在按键时的时间,但秒表仍然在计时;再次按下该键,秒表恢复正常显示。

在秒表暂停计时的情况下,按下“Split/Reset”键,秒表复位归零。

2.5 开发软件本次试验所用的EDA软件包括ISE10.1和仿真采用的ModelSim。

2.5.1 ISE10.1简介ISE的主要功能包括设计输入、综合、仿真、实现和下载,涵盖了可编程逻辑器件开发的全过程,从功能上讲,完成CPLD/FPGA的设计流程无需借助任何第三方EDA软件。

ISE涵盖的功能有设计输入、综合、仿真、实现以及下载。

设计输入:ISE提供的设计输入工具包括用于HDL代码输入和查看报告的ISE 文本编辑器(The ISE Text Editor),用于原理图编辑的工具ECS(The Engineering Capture System),用于生成IP Core的Core Generator,用于状态机设计的StateCAD 以及用于约束文件编辑的Constraint Editor等。

综合:ISE的综合工具不但包含了Xilinx自身提供的综合工具XST,同时还可以内嵌Mentor Graphics公司的Leonardo Spectrum和Synplicity公司的Synplify,实现无缝链接。

仿真:ISE本身自带了一个具有图形化波形编辑功能的仿真工具HDL Bencher,同时又提供了使用Model Tech公司的Modelsim进行仿真的接口。

实现:此功能包括了翻译、映射、布局布线等,还具备时序分析、管脚指定以及增量设计等高级功能。

下载:包括BitGen,用于将布局布线后的设计文件转换为位流文件,还包括了IMPACT,功能是进行芯片配置和通信,控制将程序烧写到FPGA芯片中去。

2.5.2 ModelSim简介ModelSim是Mentor公司的产品。

在业界,它被认为是最优秀的HDL语言仿真软件。

它提供友好的仿真环境,是支持VHDL和Verilog混合仿真的仿真器。

它采用直接优化的编译技术、Tcl/Tk技术和单一内核仿真技术,编译仿真速度快,编译的代码与平台无关,便于保护IP核。

其个性化的图形界面和用户接口,为用户6加快调错提供强有力的手段,是FPGA/ASIC设计的首选仿真软件。

2.6 VHDL语言简介VHDL全名Very-High-Speed Integrated Circuit HardwareDescription Language,诞生于1982年。

VHDL翻译成中文就是超高速集成电路硬件描述语言。

VHDL主要用于描述数字系统的结构,行为,功能和接口。

除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。

VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部和内部,即设计实体的内部功能和算法完成部分。

在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。

这种将设计实体分成内外部分的概念是VHDL 系统设计的基本点。

现在,VHDL和VERILOG作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。

7第三章模块设计3.1 分频器对晶体振荡器产生的48MHz时钟信号进行分频,产生100Hz的时间基准信号。

本实验先将晶体震荡的频率分频得到10KHz的信号,再从10KHz信号得到1KHzde 扫描频率,最后再产生计数的基准频率。

该模块的源代码详见附录1,图2-1为由ISE得到的设计综合图,图2-2为由ModelSim所得到的仿真图。

图2-1图2-2由图2-2的分频器仿真图可以发现,本程序依次得到了10KHz、1KHz、100Hz 三种不同的频率.3.2 计数器对时间基准脉冲进行计数,完成计时功能。

需要从0.01s开始计数,因此需要一个100Hz的时钟产生计数脉冲。

完成电子秒表的功能一共需要4个模10计数器和2个模6计数器。

下面以以模6计数器为例,其VHDL源程序详见附录2。

图2-3为由ISE得到的设计综合图,图2-4为由ModelSim所得到的仿真图。

图2-38图2-4由图2-4可以发现,当计数器从0计数到5的时候,又从0开始,实现了模6计数的功能。

3.3 数据锁存器锁存数据使显示保持暂停。

锁存器该模块部分VHDL源程序详见附录3,图2-5为由ModelSim所得到的仿真图。

图2-5由图2-5可以发现,当锁存使能为1时,锁存器的输入和输出一致,接着使锁存使能变为0,给不同的输入信号,锁存输出保持上一次的值不变,即是在锁存使能有效时将当前输入送给输出。

3.4 控制器控制计数器的运行、停止以及复位。

产生锁存器的使能信号,计数使能信号以及计数清零信号,其状态图如图2-6图2910由图2-6可知,系统要求控制器有三个输出,分别是计数清零、计数使能和正常显示(锁存使能),输入为时钟和两个按键信号。

其状态转换关系如表一,其VHDL 源程序详见附录4。

图2-7为由ISE 得到的设计综合图,图2-8为由ModelSim 所得到的仿真图。

表一 状态转换关系图2-7图2-8由图2-8可以发现,当start_stop 为‘1’,split_reset 为’0’时,在时钟上升沿到来的时候输出状态由”011”变为”001”,接着当start_stop 为‘0’,split_reset 为’1’时,在时钟上升沿到来的时候输出状态由”001”变为”111”,接着当start_stop 为‘0’,split_reset 为’0’时,在时钟上升沿到来的时候输出状态保持”111”。

可以分析得出,该控制电路的状态变化符合要求。

3.5 扫描控制电路包括扫描计数器、数据选择器和7段译码器,控制8个数码管以扫描方式显示计时结果,该模块部分VHDL 源程序详见附录5。

图2-9为实验板上的显示电路以及扫描控制及显示译码的电路框图。

信号 状态 start/stopsplit/reset 11 10 00 01 S0(111) S0 S1 S0 S0 S1(011) S1 S3 S1 S2 S2(010) S2 S1 S2 S2 S3(001) S3 S1 S3S0图2-93.6 按键消抖电路因为一般情况下按键在按下和松开的瞬间会出现抖动的现象,因此按键消抖电路的作用是消除按键抖动的影响以及保证每按一次键只输出一个脉冲,其宽度为一个时钟周期。

该模块部分VHDL源程序详见附录6。

图2-10是由ISE得到的设计综合图。

图2-1011第四章总体设计各部分模块完成后,需要将各个模块组合起来完成数字秒表的整体结构。

图3-1为秒表系统的RTL Schematic图3-1由图3-1可知,秒表系统的输入只有三个,分别是晶体震荡的时钟信号,两个按键start/stop和splite/reset,系统的输出为段选信号和片选信号。

片选信号来自扫描时种下的计数器输出通过3-8译码器得到,从而来控制数码管轮流显示,由于扫描频率使用的是1KHz的时钟,因此人眼不能分辨,故而显示效果为8个数码管同时亮,段选信号来自计数器输出,还有一个OP_EN信号是由计数器产生的进为输出,在该系统中无用,故设置为open。

相关文档
最新文档