基于Quartus的多功能数字钟设计
数字逻辑电路设计多功能数字钟
数字逻辑电路设计-多功能数字钟多功能数字钟摘要:实验作品名为多功能数字钟,具有校时、清零、保持、整点报时、闹钟五大功能。
整个实验以QuartusII 7.0为软件设计基础,结合Altera公司研发的Cyclone系列可编程逻辑器件工具箱进行实际测试。
整个数字钟的开发完全遵照自顶向下的设计方法,这个设计因为该方法可移植性强、逻辑符合一般规律、可多人共做等优点而得以为设计人员省去大量时间和精力。
本作品在防抖动电路和蜂鸣器鸣响时长控制上拥有一定的自主创新性和理论证明,同时由于整个设计过程当中适当地对每个器件进行了有机的封装,所以电路图的逻辑关系较为清晰。
现在数字钟因其在日常生活生产中的作用而成为可盈利的商品,在金钱的驱动下数字钟的设计方法及本实验作品相比功能和效率上都有非常大的提升,故本实验的目的在于让设计者充分了解数字逻辑电路设计的流程和具体软件的使用方法。
关键词:数字钟,可编程逻辑器件,防抖动电路,学习型设计The design of Multifunctional digital clock Abstract: This experimental product is called Multifunctional digital clock. It has five majorfunctions such as time setting, resetting, holding,alarming, and beeping when it comes to an additionto the hour. The whole experiment is based on the software of design called Quartus II 7.0 and is tested by combining the Cyclone series of programmable logical device provided by Altera. The clock is designed under the process of ‘from the top to the end’. The method spares designers lots of time and energy for its flexibility to be transplanted, easiness for ordinary logic reasoning and availability for cooperative designing. The product is self-creative and provable in terms of turbulence muting and manipulation of the period of beeping. At the same time, the diagrams of the circuits are apparently logical thanks to well-organized sealing of each part of device during the design. In this era of common concept of inexpensiveness of digital clocks, methods and effectiveness of designing a clock are improved due to its profitability. Hence, this experimental designis aimed at letting the participants to understand the process of digital logic circuits designing and to get to familiar with the usage of particular software.Keyword: Digital Clock, programmable logic device, mute circuit, design for learning目录一.设计要求及说明 (4)二.方案论证……………………………………………………………… (4)1.设计整体思路2.设计大体流程三.各子模块设计原理及调试仿真 (5)1.时钟发生器 (5)2.计时电路 (7)3.显示电路 (9)4.校分电路和清零电路 (12)5.报时电路 (13)6.储时电路 (15)7.选择电路 (16)8.闹钟比较电路 (16)9.其他 (1)7四.编程下载1.整体电路图 (18)2.管脚配置 (19)3.编译调试 (19)五.实验感想一.设计要求及说明1、能进行正常的时、分、秒计时功能2、分别由六个数码管显示时分秒的计时3、使能开关4、清零开关5、校分开关6、校时开关7、使时钟具有整点报时功能(当时钟计到59’53”时开始报时,在59’53”, 59’55”,59’57”时报时频率为512Hz,59’59”时报时频率为1KHz, )8、闹表设定功能9、自己添加其他功能二.方案论证1.设计整体思路图1数字钟的功能设计思路大致如图1时钟发生电路:位计时电路提供频率为1HZ的稳定脉冲,该电路是整个时钟是否精准的关键计时电路:由时钟发生器驱动,存储并演绎时间的流逝储时电路(闹钟):储存一个固定的时间选择电路:由输入端控制调校或显示储时电路和计时电路中的一个显示电路:将两个时间电路的输出信号调制成可输出的信号报时电路:根据时间信号以一定的模式输出符合要求的蜂鸣器驱动信号校分电路:使时间电路脱离时钟驱动并以累加的方式分别调校时及分清零电路:使时钟电路的所有信号归零2设计大体流程1)设计时钟发生电路及计时电路2)连接两个模块并调试电路,分别用LED灯检测时分秒的运行状况3)设计显示电路并单独调试4)连接时钟电路和显示电路并调试,整体调试时钟电路5)设计校分电路和清零电路并连接调试6)设计报时电路并单独调试7)连接报时及时钟电路,利用已调校好的调分清零电路调校报时电路的功能8)设计储时电路(在计时电路上适当修改)9)设计选择电路将计时电路和储时电路连接,调校选择电路以保证时间及调校显示的接口功能正常10)整体调试并增加诸如防抖动等优化电路三.各子模块的设计原理及调试1.时钟发生器图2时钟发生器设计思路大致如图21)十六分频电路由四个T触发器异步连接而成2)图3实时(timing)仿真如图4图4有仿真图波形可初步断定用4*T触发器一步连接对高频信号进行16分频是不会产生明显延迟和错位现象3)一千分频电路由三个十进制加法计数器连接而成,连接方式是:低位计数器的QD端及高位计数器的CLK端相连图5为方便今后对十分频器的使用在此对其进行了封装,仿真波形图如下图6输入波周期为10ns,由图6所示仿真图中的时间条可看出,在Timing模式下1000分频电路对高频信号几乎无延迟及错位,同时可看出该分频器的占空比为1:10。
数电设计数字钟基于QUARTUS完整版
数电设计数字钟基于Q U A R T U SHEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】大连理工大学本科实验报告题目:数电课设——多功能数字钟课程名称:数字电路课程设计学院(系):电信学部专业:电子与通信工程班级:学生姓名: ***************学号:***************完成日期:成绩:2010 年 12 月 17 日题目:多功能数字时钟一.设计要求1)具有‘时’、‘分’、‘秒’的十进制数字显示(小时从00~23)2)具有手动校时校分功能3)具有整点报时功能,从59分50秒起,每隔2秒钟提示一次4)具有秒表显示、计时功能(精确至百分之一秒),可一键清零5)具有手动定时,及闹钟功能,LED灯持续提醒一分钟6)具有倒计时功能,可手动设定倒计时范围,倒计时停止时有灯光提示,可一键清零二.设计分析及系统方案设计1. 数字钟的基本功能部分,包括时、分、秒的显示,手动调时,以及整点报时部分。
基本模块是由振荡器、分频器、计数器、译码器、显示器等几部分组成。
利用DE2硬件中提供的50MHZ晶振,经过分频得到周期为1s的时钟脉冲。
将该信号送入计数器进行计算,并把累加结果以“时”“分”“秒”的形式通过译码器由数码管显示出来。
进入手动调时功能时,通过按键改变控制计数器的时钟周期,使用的时钟脉冲进行调时计数(KEY1调秒,LOAD2调分,LOAD3调时),并通过译码器由七位数码从59分50秒开始,数字钟进入整点报时功能。
每隔两秒提示一次。
(本设计中以两个LED灯代替蜂鸣器,进行报时)2. 多功能数字钟的秒表功能部分,计时范围从00分秒至59分秒。
可由输入信号(RST1)异步清零,并由按键(EN1)控制计时开始与停止。
将DE2硬件中的50MHZ晶振经过分频获得周期为秒的时钟脉冲,将信号送入计数器进行计算,并把累计结果通过译码器由七位数码管显示。
基于FPGA多功能数字钟的设计
• 181•人类社会步入高速发展的电子时代,电子产品逐渐代替机械产品走入我们的生活。
随着科技的进步人们对电子产品的要求越来越高、传统产品已经不能满足人们的需求。
体积小、多功能、节能、环保开始成为了电子产品发展的新目标。
本文基于VHDL 语言,利用Quartus Ⅱ设计了一款多功能数字钟,内部包含秒表、闹钟、定时器、时钟四个模块。
经过实验仿真表明多功能数字钟能很好地满足生活中的各种需要。
本产品设计主要使用VHDL 语言描述了各个模块的功能来实现主要电路,最后在Quartus II 上完成了调试与仿真。
VHDL 语言实现电子设计,是一个以软件设计为主,器件配置相结合的过程,能从多个层次对数字系统进行设计,设计数字电路更为灵活方便,设计周期也可大大减小,提高了设计效率和可靠性。
我们需要的功能,在通过使用预先设计好的别的开关进一步让数字钟工作。
通过LED 显示屏可以看到数字。
本文通过软件Quartus II 9.0设计出各个模块并往开发板内写入程序实现我们想要的功能。
3 软件部分3.1 时钟部分时钟设计有三个要求第一,具有时、分、秒计数显示的功能,并以24h 循环计时。
第二,走时误差小于等于每天10s 。
第三,具有调节分钟、小时、秒以及清零的功能。
通常情况不需要让时钟停止工作,所以这部分模块就相当于实现了计数功能,对一直不断给入的1HZ 脉冲进行计数。
秒、分、时分了三个模块进行连接。
qw 是个基于FPGA多功能数字钟的设计大连理工大学城市学院 方润生 邓佳宁 于海霞图1 系统整体过渡模块,也是校正时间所用的模块。
校正时有两个开关,一个校正分、一个校正时。
如图2所示,qw 模块主要是为了实现调时功能。
实际工程中做了元件例化。
元件例化的主要作用是在大型项目的设计中许多底层文件需要反复使用,我们写好底层文件之后通过component 语句可以直接对底层文件进行调用方便了项目的设计。
3.2 闹钟闹钟在到达设置的时间时会发出持续一分钟的信号,可提前手动关闭。
多功能时钟quartus
EDA(二)多功能时钟学号:姓名:2011年11月摘要:利用QuartusII软件设计一个数字钟,并下载到SmartSOPC实验系统中,可以完成00:00:00到23:59:59的动态显示计时功能以及清零、保持、快速校分、整点报时.关键词:QuartusII 保持校分清零整点报时Abstract:Using Quartus II to design a Multifunctional digital clock and download to Smart SOPC experimental system. To achieve the function of 00:00:00to23:59:59 dynamic display time , holding, reset, speedily checking hours and minutes, Whole-hour clocking and so on.Keyword:Quartus II ,holding, speedily checking minutes, reset.目录:设计要求 (4)方案论证 (4)子模块设计原理 (5)电路接口与开关控制说明 (18)调试仿真及下载 (19)实验中遇到的问题及解决办法 (19)实验收获与感受 (19)参考文献 (20)一、设计要求基本要求1、能进行正常的时、分、秒计时功能;2、分别由六个数码管显示时分秒的计时;3、K1是系统的使能开关(K1=0正常工作,K1=1时钟保持不变);4、K2是系统的清零开关(K2=0正常工作,K2=1时钟的分、秒全清零);5、K3是系统的校分开关(K3=0正常工作,K3=1时可以快速校分);6、K4是系统的校时开关(K4=0正常工作,K4=1时可以快速校时)。
提高要求1、使时钟具有整点报时功能(当时钟计到59’53”时开始报时,在59’53”, 59’55时报时频率为500Hz,59’59”时报时频率为1KHz);2、秒表功能。
数电设计数字钟基于QUARTUS
大连理工大学本科实验报告题目:数电课设——多功能数字钟课程名称:数字电路课程设计学院(系):电信学部专业:电子与通信工程班级:学生姓名: ***************学号:***************完成日期:成绩:2010 年 12 月 17 日题目:多功能数字时钟一.设计要求1)具有‘时’、‘分’、‘秒’的十进制数字显示(小时从00~23)2)具有手动校时校分功能3)具有整点报时功能,从59分50秒起,每隔2秒钟提示一次4)具有秒表显示、计时功能(精确至百分之一秒),可一键清零5)具有手动定时,及闹钟功能,LED灯持续提醒一分钟6)具有倒计时功能,可手动设定倒计时范围,倒计时停止时有灯光提示,可一键清零二.设计分析及系统方案设计1. 数字钟的基本功能部分,包括时、分、秒的显示,手动调时,以及整点报时部分。
基本模块是由振荡器、分频器、计数器、译码器、显示器等几部分组成。
利用DE2硬件中提供的50MHZ晶振,经过分频得到周期为1s的时钟脉冲。
将该信号送入计数器进行计算,并把累加结果以“时”“分”“秒”的形式通过译码器由数码管显示出来。
进入手动调时功能时,通过按键改变控制计数器的时钟周期,使用的时钟脉冲进行调时计数(KEY1调秒,LOAD2调分,LOAD3调时),并通过译码器由七位数码管显示。
从59分50秒开始,数字钟进入整点报时功能。
每隔两秒提示一次。
(本设计中以两个LED灯代替蜂鸣器,进行报时)2. 多功能数字钟的秒表功能部分,计时范围从00分秒至59分秒。
可由输入信号(RST1)异步清零,并由按键(EN1)控制计时开始与停止。
将DE2硬件中的50MHZ晶振经过分频获得周期为秒的时钟脉冲,将信号送入计数器进行计算,并把累计结果通过译码器由七位数码管显示。
3.多功能数字钟的闹钟功能部分,通过按键(KEY1,KEY2,KEY3)设定闹钟时间,当时钟进入闹钟设定的时间(判断时钟的时信号qq6,qq5与分信号qq4,qq3分别与闹钟设定的时信号r6,r5与分信号r4,43是否相等),则以LED灯连续提示一分钟。
基于FPGA多功能数字钟的设计
3、状态转换功能模块
该模块实现电路各状态之间的转换功能,若仅完成基本功能,系统 应包含4个状态,分别为正常计时、对秒位进行设置、对分位进行设置 和对小时位进行设置。若完成扩展功能,还可增加其他状态。这部分可 以用脉冲键输入进行切换,也可以用拨动开关进行切换。根据所选择的 切换方式,自行编写程序。
4、校时功能模块
此模块主要在状态切换到设置时,可以将时、分、秒位设置成需要的 数值,此功能可以由脉冲键输入完成。
5、译码功能模块
此模块功能将计数器产生的数值,通过编译,形成对应七段数码 管显示格式的编码。七段数码管的a-g对应实验箱上的主要引脚为 O50-O56。
6、LED显示模块
本模块使用实验箱上的8个数码管进行显示,为动态显示法,需采用 扫描的方式进行显示。此方法对于扫描频率有一定的要求,在设计时需 考虑采用那个频率作为扫描信号。8个数码管的扫描信号对应实验箱上的 引脚为SO58-SO65。
四、系统仿真
将每个模块编译成功后,进行仿真测试,若仿真结果符合设计 要求,再配置输入输出引脚,若不符合,请返回修改程序,直至仿 真结果合格。将仿真结果截图,记录至设计报告中。
精品课件!
精品课件!
五、硬件验证
将编译通过、仿真结果正确且引脚信息配置正确的程序下载至 实验箱的FPGA中,硬件验证设计是否符合要求。
2、计时功能模块
计时模块需对时、分、秒进行计数,其中小时位为24进制,分 钟和秒钟位为60进制。可以用一段程序对时、分、秒进行连续计数, 也可以对时、分、秒的高位和低位分别计数。注意,如果采用连续 计数方式,因为每位显示时有高位和低位之分,所以需将十进制数 据用BCD码进行转换后,才能输出到七段数码管上显示。
此电子钟分两种工作状态: 1、正常计时的状态; 2、设置时间的状态。
多功能数字钟设计
EDA实验设计(II)--多功能数字钟设计姓名:学号:院系:指导老师:目录一,内容摘要…………………………………. 二,引言……………………………………. 三,实验要求………………………………四,方案论证…………………………………五,各模块设计……………………………….1,频率产生电路……………………….2,基本计数电路……………………….3,动态显示电路……………………4,清零,保持电路………………….5,快速校分校时校星期电路……….6,整点报时电路……………………………7,闹钟彩铃电路……………………………六,实验中遇到的问题及解决方案………………七,总结与体会……………………………………一,内容摘要中文摘要本实验利用QuartusII软件,结合所学的数字电路的知识设计一个24时多功能数字钟,具有正常分、秒计时,动态显示,保持、清零、快速校分、整点报时、闹钟功能。
文章分析了整个电路的工作原理,还分别说明了各子模块的设计原理和调试、仿真、编程下载的过程,并对最终结果进行总结,最后提出了在实验过程中出现的问题和解决的方案。
通过实验掌握了一些逻辑组合器件的基本功能和用法,同时体会到了利用软件设计电路的方便快捷,避免了硬件布线的繁琐,提高了效率。
关键词数字计数器动态显示保持清零快速校分整点报时闹钟软件设计外文摘要Title DIGITAL CLOCKDESIGN PROPOSAlAbstractUsing the QuartusII, we design a digital clock of 24 hours with learning electric circuit knowledge. The circuit can keep the time, display, reset, adjust the minute and hour, ring the time in the round number time and alarm clock.The paper has analyzed the principle of all work andexplained the designing principle of different parts separately. By debugging, simulating, compiling, programming, Iput forward a matter and give a settling plan.I know about the basic functions and using method of some electric pieces in this experiment. At the same time,I realized the convenience of making use of the software to carry on the electric circuit,which is fast, avoided the hardware cloth line tedious, and raised the efficiency.Keywords digital counter, dynamic display, keep, clear, check time, time, alarm clock,software design二,引言由于传统硬件电路在设计存在资源浪费,连线麻烦,出错率高且不易修改,很难控制成本,而软件电路设计连线方便,修改容易,电路结构清楚,功能一目了然,软件内部提供有丰富的元件库;节省实验时间,故障率低,出错时,有错误提示,明显提高了效率。
基于-Quartus多功能数字钟设计
基于Quartus的多功能数字钟设计该实验是利用QuartusII软件设计一个数字钟,进展试验设计和仿真调试,实现了计时,校时,校分,清零,保持和整点报时等多种根本功能,并下载到SmartSOPC实验系统中进展调试和验证。
此外还添加了显示星期,闹钟设定,秒表和彩铃等附加功能,使得设计的数字钟的功能更加完善。
一、设计要求1.设计一个数字计时器,可以完成00:00:00到23:59:59的计时功能,并在控制电路的作用下具有保持、清零、快速校时、快速校分、整点报时等根本功能。
2.具体要求如下:1)能进展正常的时、分、秒计时功能,最大计时显示23小时59分59秒。
2)分别由六个数码管显示时分秒的计时。
3)K1是系统的使能开关,K1=0正常工作,K1=1时钟保持不变。
4)K2是系统的清零开关,K2=0正常工作,K2=1时钟的分、秒全清零。
5)在数字钟正常工作时可以对数字钟进展快速校时和校分。
K3是系统的校分开关,K3=0正常工作K3=1时可以快速校分;K4是系统的校时开关,K4=0正常工作,K4=1时可以快速校时。
3.设计提高局部要求1)时钟具有整点报时功能,当时钟计到59’51〞时开场报时,在59’51〞,59’53〞, 59’55〞,59’57〞时报时频率为512Hz,59’59〞时报时频率为1KHz。
2)星期显示:星期显示功能是在数字钟界面显示星期,到计时到24小时时,星期上显示的数据进一位。
3)闹表设定:通过开关切换显示至闹钟界面,利用闹钟校时和校分开关对闹钟时间进展设定,且不影响数字钟计时。
当计时到闹钟设定时间蜂鸣器鸣叫,并响起彩铃。
4)秒表计时:通过开关切换显示至秒表界面,分秒局部是100进制的,即当值为99时向秒位进位。
4.仿真与验证用Quartus软件对设计电路进展功能仿真,并下载到实验板上对其功能进展验证。
二、工作原理数字计时器是由计时电路、译码显示电路、脉冲发生电路和控制电路等几局部组成的,控制电路按要求可由校分校时电路、清零电路和保持电路组成。
基于QuartusⅡ的VHDL语言多功能数字钟
基于QuartusⅡ的VHDL语言多功能数字钟注:任何人不得作为商业用途数字钟的功能1)以24小时制显示时、分、秒计数;2)时间清零,时设置,分设置功能;3)整点报时功能。
实验环境1.软件环境:QuartusII 7.22.硬件环境:MAXII-EPM240T100C51.分频器1KHz分频器VHDL:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity FPQ1K isport(clk :in std_logic;q1khz :out std_logic);end ;architecture behav of FPQ1K isbegins1:process(clk)variable count2: integer range 0 to 50000;beginif (clk='1'and clk'event)then count2:=count2+1;if (count2=25000) then q1khz<='1';elsif (count2=50000) then q1khz<='0';count2:=0;end if;end if;end process;END behav;1KHz分频器顶层设计原理图1Hz分频器VHDL:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity FPQ1 isport(clk :in std_logic;q1hz :out std_logic);end ;architecture behav of FPQ1 isbegins1:process(clk)variable count2: integer range 0 to 1000;beginif (clk='1'and clk'event)then count2:=count2+1;if (count2=500) then q1hz<='1';elsif (count2=1000) then q1hz<='0';count2:=0;end if;end if;end process;END behav;1Hz分频器顶层设计原理图2.秒模块设计library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity Sec isport(clk,reset,min_set:in std_logic;--clk为1Hz的秒脉冲输入信号,reset为秒清零(复位)信号--min_set为分钟调整enmin:out std_logic; --enmin为秒模块进位输出daout:out std_logic_vector(6 downto 0)); --2n-1≥60,n=7,27=64,分钟用7位二进制数表示--daout(6..4)为十位,daout(3..0)为个位,60循环计数end entity Sec;architecture behave of Sec issignal count:std_logic_vector(6 downto 0); --定义内部计数节点,60循环计数signal enmin1,enmin2:std_logic;--enmin为60秒产生的进位,enmin2为调分键产生的向分模块的进位begindaout<=count;enmin2<=(min_set and clk);enmin<=(enmin1 or enmin2); --60秒钟到和调分键均向分模块产生进位脉冲process(clk,reset,min_set)beginif(reset='0')then count<="0000000"; --检测秒模块的1Hz脉冲上升沿elsif(clk'event and clk='1')thenif(count(3 downto 0)="1001")then --秒的个位是否到“9”if count(6 downto 4)="101"then --秒各位到“9”后,十位计数到“5”enmin1<='1';--秒模块的60秒进位输出enmin置“1”,向分模块产生进位count<="0000000"; --秒计数值“0000000”(零秒)elsecount<=count+7;--秒各位到“9”后,十位计数没到“5”,则加“7”变为“0”,同时向十位进位end if;elsecount<=count+1; --秒个位没计到“9”时,秒计数值加“1”enmin1<='0'; --秒模块的60秒进位输出enmin1置“0”,不向分模块进位end if;end if;end process;end behave;秒模块顶层设计原理图3.分模块设计LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY Min ISPORT(clk,clk1,hour_set,reset:IN STD_LOGIC; --clk为分钟模块的脉冲输入信号,接秒模块的进位输出 --clk1接秒脉冲输入,hour_set为小时调整enhour:OUT STD_LOGIC; --enhour为分钟模块的进位输出daout:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));--2n-1≥60,n=7,27=64,分钟用7位二进制数表示--daout(6..4)为十位,daout(3..0),60循环计数END ENTITY Min;ARCHITECTURE behave OF Min ISSIGNAL count:STD_LOGIC_VECTOR(6 DOWNTO 0);--定义内部计数节点,60循环计数SIGNAL enhour1,enhour2:STD_LOGIC;--enhour1为60分钟产生的进位。
EDA设计II实验报告——多功能数字钟
『EDA设计II』课程实验报告姓名学号学院指导教师时间 2011年 05月多功能数字钟摘要:本实验利用Quartus II软件设计多功能数字钟并下载到Smart SOPC实验系统,实现校分、校时、清零、保持和整点报时等多种基本功能,以及闹钟等附加功能。
本实验首先通过Quartus II 软件对各模块进行原理图设计,并进行仿真调试,最后下载至实验平台验证其功能。
关键词:多功能数字钟Quartus II软件仿真封装校分校时清零保持整点报时闹钟Abstract:The experiment is to design a multi-purpose digital clock by Quartus II and then download to the test system of Smart SOPC. It can realize many functions such as minute adjusting, hour adjusting, resetting, keeping and reporting time on integral hour. Apart from this, it can also be used as a alarm clock. First of all, we design the schematic diagram of every part. In addition, we simulate through Quartus II. At last, we download it to the tests platform and test the function.Key words:multi-purpose digital clock Quartus II simulate seal minute- adjusting hour adjusting resetting keeping reporting time on integral hour alarm clock目录一设计要求说明 (3)1 实验目的 (3)2 实验要求 (3)二方案论证 (4)1 总体电路图 (5)2 基本计时电路工作原理 (5)3 附加闹钟电路工作原理 (5)4 多功能数字钟原理框图 (6)三基本计时电路各子模块工作原理 (6)1 脉冲发生电路 (6)2 计时电路 (10)3 校时、校分、保持、清零电路 (14)4 动态译码显示电路 (16)5 报时电路 (18)6 消颤开关组电路 (19)7 基本计时电路综合 (21)四闹钟电路子模块工作原理 (24)1 闹钟消颤开关与闹钟校时校分清零电路 (24)2 闹钟与计时校时分复用电路 (27)3 比较电路 (28)4 2选1 显示复用电路 (28)5 闹钟与整点报时复用电路 (29)五程序下载 (30)六实验总结与感想 (30)1 实验中出现的问题总结 (30)2 实验感想 (31)一、设计要求说明1、实验目的1)掌握较为复杂逻辑电路的设计方法。
基于QuartusII软件的数字时钟设计
实验名称:数字时钟设计姓名:杨龙成班级:电子与通信工程学号: 3120302012 成绩:一、实验目的1.掌握各类计数器及它们相连的设计方法;2.掌握多个数码管显示的原理与方法;3.掌握模块化设计方式;4.掌握用VHDL语言的设计思想以及整个数字系统的设计。
二、实验内容1. 设计要求1)具有时、分、秒计数显示功能,在数码管显示00:00:00~23:59:59,以24小时循环计时。
2)完成可以计时的数字时钟时钟计数显示时有LED灯的花样显示。
3)具有调节小时、分钟及清零的功能。
4)具有整点报时功能。
2. 性能指标及功能设计1)时钟计数:完成时、分、秒的正确计时并且显示所计的数字;对秒、分60进制计数,时钟—24进制计数,并且在数码管上显示数值。
2)时间设置:手动调节分钟、小时,可以对所设计的时钟任意调时间。
可以通过实验板上的键7和键4进行任意的调整,因为时钟信号均是1HZ的,所以LED灯每变化一次就来一个脉冲,即计数一次。
3)清零功能:reset为复位键,低电平时实现清零功能,高电平时正常计数。
4)蜂鸣器在整点时有报时信号产生,产生“滴答.滴答”的报警声音。
5)根据进位情况,LED灯在时钟显示时有花样显示信号产生。
3. 系统方框图三、设计原理和过程3.1 硬件设计本设计使用VHDL硬件开发板,可编程逻辑器件EMP1270T144C5系列。
设计过程中用到的外围电路的设计有电源部分,可编程器件EMP1270T144C5,CPLD –JTAG接口,晶振和蜂鸣器,LED数码管显示,DIP开关与按键输入(具体电路见附录)3.2 软件设计3.2..1 程序包my_pkg的设计说明为了简化程序设计增加可读性,系统采用模块化的设计方法,重复使用的组件以元件(component)的形式存在,以便相关块的调用。
下面列出my_pkg组件包的代码。
library ieee;use ieee.std_logic_1164.all;package my_pkg iscomponent div40M------------------------------------------------------------------元器件1 Port( clk: in std_logic;f1hz : out std_logic);end component;component count60-----------------------------------------------------------------元器件2 Port(clr,clk:in std_logic;one :buffer std_logic_vector(3 downto 0);ten :buffer std_logic_vector(3 downto 0);full:out std_logic;dout:buffer std_logic_vector(7 downto 0));end component;component count24-----------------------------------------------------------------元器件3 Port(clr,clk:in std_logic;one :buffer std_logic_vector(3 downto 0);ten :buffer std_logic_vector(3 downto 0);full:out std_logic);end component;component scan6----------------------------------------------------------------元器件4 port (clr,clk : in STD_LOGIC;h_ten,h_one,m_ten,m_one,s_ten,s_one: in STD_LOGIC_vector(3 downto 0);cs: out STD_LOGIC_vector(5 downto 0);mux_out: out STD_LOGIC_vector(3 downto 0));end component;component bin2led---------------------------------------------------------------元器件5 port (bin : in std_logic_vector (3 downto 0);led : out std_logic_vector (7 downto 0) );end component;component sh1k ----------------------------------------------------------------------元器件6 Port( clk: in std_logic;--from system clock(40MHz)f1hz : out std_logic);-- 1Hz output signalend component;component alarm_set------------------------------------------------------------------元器件7 Port(rst,hz1: in std_logic;--system clock 1Hzalarm,ok: in std_logic;--keep pushing to declare alarm setsec_tune: in std_logic;sec_one,sec_ten:out std_logic_vector(3 downto 0));end component;end my_pkg;3.2.2 count60组件由此提供分(秒)计数值,当分计数器计数到59再来一个脉冲信号秒计数器清零从新开始计数,而进位则作为小时计数器的计数脉冲,使小时计数器计数加1,同时分计数器在分设置时钟信号的响应下设置分计数器的数值。
基于QuartusII的多功能数字钟设计
EDA技术与VHDL课程大作业学号:姓名:多用途数字时钟设计摘要:应用QuartusII9.0软件采用模块化设计方法设计一数字时钟,用原理图输入进行设计,使之具有清零、整点报时、闹钟设置、彩铃和星期显示调节等功能。
软件仿真调试成功后编译下载至可编程实验系统SmartSOPC中进行硬件测试。
关键词:译码器脉振 QuartusII 清零计数器蜂鸣器锁存目录一设计内容简介 (1)二设计要求 (1)三方案论证(整体电路设计原理) (1)四子模块设计原理4.0 脉冲产生电路 (4)4.1 计时电路 (7)4.2 显示电路 (11)4.3 保持电路 (13)4.4 清零电路 (13)4.5 校分电路 (14)4.6 校时电路 (14)4.7 整点报时电路 (14)4.8 闹钟设定电路 (16)4.9 音乐产生电路 (17)4.10 闹钟报时电路 (22)4.11 闹铃关闭电路 (23)4.12 星期调整电路 (24)4.13 电路总图 (26)五实验中遇到问题及解决法 (27)六结论 (28)七参考文献 (28)一、设计内容简介设计一数字时钟,可以完成00:00:00到23:59:59的计时功能,并在控制电路的作用下具有保持、清零、快速校时、快速校分、整点报时等功能。
我们设计的电路在具有基本功能的基础上,增加了下列功能:整点报时、闹钟设置、彩铃和星期显示调节功能。
二、设计要求2.0 基本要求1、能进行正常的时、分、秒计时功能;2、分别由六个数码管显示时分秒的计时;3、K1是系统的使能开关(K1=0正常工作,K1=1时钟保持不变);4、K2是系统的清零开关(K2=0正常工作,K2=1时钟的分、秒全清零);5、K3是系统的校分开关(K3=0正常工作,K3=1时可以快速校分);6、K4是系统的校时开关(K4=0正常工作,K4=1时可以快速校时);2.1 提高部分要求1、使时钟具有整点报时功能(当时钟计到59’53”时开始报时,在59’53”, 59’55”,59’57”时报时频率为512Hz,59’59”时报时频率为1KHz);2、闹表设定功能;三、方案论证本实验在实现实验基本功能的基础上,加入了整点报时、闹钟设置、彩铃和星期显示调节功能。
基于QuartusII的数字时钟的设计
基于QuartusII的数字时钟的设计摘要QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。
QuartusII使用户可以充分利用成熟的模块,简化了设计的复杂性,加快了设计速度。
对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。
数字钟是一种用数字电路实现时、分、秒计时的装置,与机械实施中相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,已得到了广泛的使用。
在对EDA的课程有了初步的了解并掌握Quartus II软件的初步应用之后,我们决定将课题设置为应用Quartus II软件,设计出一个时间可调,并可以通过LED七段共阴极数码管来显示时、分、秒的简易数字钟。
关键词:QuartusII;VHDL;EDA;数字钟SummaryQuartusII is Altera company comprehensive PLD/FPGA development software, support principle diagram, VHDL, VerilogHDL and AHDL design input in the form of embedded own comprehensive device simulators, and can be done from the design input to the hardware configuration of the complete PLD design process.QuartusII allow users to take full advantage of mature modules, simplifies the design complexity, speed up the design.Good support for third-party EDA tools also allow users to use in the different stages of the design process is familiar withthird-party EDA tools.Digital clock is a kind of when using a digital circuit implementation, minutes and seconds timing device, a higher accuracy compared with the implementation of the mechanical and intuitive, and no mechanical device, has a longer service life, has been widely used.In the course of EDA have a preliminary understanding and mastering the Quartus II software after the initial application, we decided to set the topic for the application of the Quartus II software, design a time is adjustable, and can be through the 7 common cathode LED digital tube display hours, minutes and seconds of simple digital clock.Keywords:QuartusII;VHDL;EDA;digital clock目录摘要 (1)绪论 (5)1.课程设计的目的与作用 (7)2.设计任务 (7)3.QuartusII软件介绍 (7)4.相关理论 (8)4.1 理论 (8)4.2 器件 (8)5. 系统设计 (8)5.1 总体 (8)5.2 各模块 (9)5.2.1 顶层模块 (9)5.2.2 十进制计数器模块 (9)5.2.3 六进制计数器模块 (10)5.2.4 二十四进制计数器模块 (10)5.2.5 7段LED显示驱动模块 (11)6. 硬件设计 (11)6.1 顶层实体图 (11)6.2 各模块实体图 (12)6.2.1 十进制计数器模块 (12)6.2.2 六进制计数器模块 (12)6.2.3 二十四进制计数器模块 (13)6.2.4 7段LED显示驱动模块 (13)6.3 总体实体图 (14)7. 流程图设计 (15)8.模块设计实现 (16)8.1建立顶层模块 (16)8.1.1新建dianzizhong.工程 (16)8.1.2建立VHDL源程序 (16)8.2建立十进制计数器模块 (18)8.2.1新建CNT10.工程 (18)8.2.2建立VHDL源程序 (18)8.3建立六进制计数器模块 (19)8.3.1新建CNT6.工程 (19)8.3.2建立VHDL源程序 (19)8.4建立二十四进制计数器模块 (20)8.4.1新建CNT24.工程 (20)8.4.2建立VHDL源程序 (20)8.5建立7段LED显示驱动模块 (21)8.5.1新建LED_DRIV.工程 (21)8.5.2建立VHDL源程序 (22)9.仿真调试结果分析 (22)9.1顶层模块的编译与波形仿真 (22)9.2十进制计数器模块的编译与波形仿真 (23)9.3六进制计数器模块的编译与波形仿真 (24)9.4二十四进制计数器模块的编译与波形仿真 (25)9.5 7段LED显示驱动模块的编译与波形仿真 (26)10. 结论 (27)11.设计总结和体会 (27)12. 致谢 (28)13. 参考文献 (29)绪论1.研究的意义在快速发展的年代,时间对于人们来说越来越宝贵,在快节奏的生活中,人们往往会忘记了时间,一旦在一些重要的场合忘记了时间,将会带来重大的损失。
基于FPGA和Quartus II的多功能数字钟设计与实现
基于FPGA和Quartus II的多功能数字钟设计与实
现
现场可编程门阵列(Field Programmable Gate Arrays,FPGA)是一种可编程使用的信号处理器件。
通过改变配置信息,用户可对其功能进行定义,以满足设计需求。
通过开发,FPGA能够实现任何数字器件的功能。
与传统
数字电路相比,FPGA具有可编程、高集成度、高可靠性和高速等优点。
1 数字钟总体设计
本文以FPGA平台为基础,在QuartusⅡ开发环境下设计开发多功能数字钟。
数字钟实现的功能如下:
1)计时功能:进行正常的时、分、秒计时,并由6只8段数码管分别显示时、分、秒时间。
2)校时功能:当时校时按键按下时,计时器时位迅速增加,并按24小时循环;当分校时按键按下时,计时器分位迅速增加,并按60分循环。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EDA设计(二)摘要该实验是利用QuartusII软件设计一个数字钟,进行试验设计和仿真调试,实现了计时,校时,校分,清零,保持和整点报时等多种基本功能,并下载到SmartSOPC实验系统中进行调试和验证。
此外还添加了整点报时音乐功能使数字钟功能更加完善关键字:Quartus 数字钟多功能仿真AbstractThis experiment is to design a digital clock which is based on Quartus software and in which many basic functions like time-counting,hour-correcting,minute-correcting,reset,time-hol ding and belling on the hour. And then validated the design on the experimental board.In addition,the music behing the belling on the hour make it more perfectKey words: Quartus digital-clock multi-functionsimulate目录一设计要求 (3)二工作原理 (4)三各模块说明 (4)1)分频模块 (5)2)计时模块 (8)3)动态显示模块 (10)4)校分与校时模块 (11)5)清零模块 (12)6)保持模块 (12)7)报时模块 (12)四扩展模块 (13)整点报时音乐 (18)五调试、编程下载 (19)六实验中出现问题及解决办法 (19)七实验收获与感受 (20)八附录:数字钟总原理图…………………………九参考文献 (21)一、设计要求1.设计一个数字计时器,可以完成00:00:00到23:59:59的计时功能,并在控制电路的作用下具有保持、清零、快速校时、快速校分、整点报时等基本功能。
2.具体要求如下:1)能进行正常的时、分、秒计时功能,最大计时显示23小时59分59秒。
2)分别由六个数码管显示时分秒的计时。
3)K1是系统的使能开关,K1=0正常工作,K1=1时钟保持不变。
4)K2是系统的清零开关,K2=0正常工作,K2=1时钟的分、秒全清零。
5)在数字钟正常工作时可以对数字钟进行快速校时和校分。
K3是系统的校分开关,K3=0正常工作K3=1时可以快速校分;K4是系统的校时开关,K4=0正常工作,K4=1时可以快速校时。
3.设计提高部分要求1)时钟具有整点报时功能,当时钟计到59’51”时开始报时,在59’51”,59’53”, 59’55”,59’57”时报时频率为512Hz,59’59”时报时频率为1KHz。
2)星期显示:星期显示功能是在数字钟界面显示星期,到计时到24小时时,星期上显示的数据进一位。
3)闹表设定:通过开关切换显示至闹钟界面,利用闹钟校时和校分开关对闹钟时间进行设定,且不影响数字钟计时。
当计时到闹钟设定时间蜂鸣器鸣叫,并响起彩铃。
4)秒表计时:通过开关切换显示至秒表界面,分秒部分是100进制的,即当值为99时向秒位进位。
4.仿真与验证用Quartus软件对设计电路进行功能仿真,并下载到实验板上对其功能进行验证。
二、工作原理数字计时器是由计时电路、译码显示电路、脉冲发生电路和控制电路等几部分组成的,控制电路按要求可由校分校时电路、清零电路和保持电路组成。
其中,脉冲发生电路将试验箱提供的48Mhz的频率分成电路所需要的频率;计时电路与动态显示电路相连,将时间与星期显示在七段数码管上,并且驱动蜂鸣器整点报时;校时校分电路对时、分、星期提供快速校时;清零电路作用时,系统的分秒时同时归零;保持电路作用时,系统停止计时并保持时间不变。
其原理框图如图所示:三、各模块说明1.分频模块分频模块将实验箱提供的48MHZ的频率分频,得到所需的频率。
实验中需要1HZ作为时秒、分、时的时钟信号,2HZ作为校分、校时的时钟信号,200HZ、1000HZ作为报时蜂鸣所需频率信号等。
我们实现的方法是一个2分频,一个24分频,6个10分频级联。
a)24分频封装成模块波形图:b)1M分频封装成模块2.计时模块计时电路包括秒,分,时,星期四个模块,依次进位。
其中秒和分的模块类似,都是一个模六十计数器,时模块是一个模24计数器。
设计时采用的是同步计数器,它们所接的时钟信号均为1hz。
a)秒计时模块模60计数器封装成模块波形图:b)时计时模块模24计数器计时模块总图:3.动态显示模块此模块是用于数码管的动态显示,在本实验中一共需要6个数码管参与显示(秒2位,分2位,时2位),所以计数器74161设计为模6的循环,其输出既作为4片74151的控制端,又作为3-8译码器74138的控制端。
因为只有一片BCD译码器7447,所以当计数器到某一个数值时,四片74151同时选取对应位的一个输入组成计时器某一位的BCD编码接入显示译码器7447,与此同时根据计数器的数值,74138译码器也从七个显示管的使能端选择对应位有效,从而在实验箱上显现一个有效数据。
扫描的频率为几千赫兹,因为人眼视觉停留的原因,会感觉七个数码管同时显示。
24选4数据选择器:封装成模块显示模块原理图:4.校分与校时模块a)校分模块当K3为0时,校分模块输出的秒计时模块进位信号cos供给分计时模块正常计数;当K3为1时,校分模块输出2hz的脉冲供给分计时模块校分。
其中为了防止拨开关时引发的颤动给校分带来影响,在校分模块中加入了消颤的D触发器。
其输出送给分计时模块clkb)校时模块当K4为0时,校时模块输出分计时模块进位信号com供给时计时模块正常计数;当K4为1时,校时模块输出2hz的脉冲供给时计时模块校分。
其中为了防止拨开关时引发的颤动给校时带来影响,在校时模块中加入了消颤的D触发器。
5.清零模块通过增加一个开关K2来控制计时电路,开关通过非门接在每个74160的清零端,当开关断开时,计时器正常工作,当开关闭合时,计时器清零。
,6.保持模块通过开关K1控制秒的使能信号,当秒停止计时,计时器就“保持”了。
将其输出接到74160使能端7.报时模块当电路计时到59分51,53,55,57秒时,分别发出一声较低的蜂鸣声;当计时到59分59秒时,发出一声较高的蜂鸣声。
需要在某时刻报时,就将该时刻输出为“1”的信号作为触发信号,选通报时脉冲信号进行报时。
四、扩展模块整点报时音乐:各音调频率:2khz,1khz , 500hz, 250hz, 125hz, 62hz, 31hz, 16hz各音调分频器:封装成模块波形图:通过74160计数,74151选择将各音调频率输出封装成模块时、分全为0时,开始响起音乐,持续1分钟。
若将开关拨到1,音乐停止。
整点报时音乐原理图:五、调试、编程下载选择“Processing-start complication”进行全编译,编译通过后要进行管脚分配,选择“Assignments Pins”,在打开的对话框中的“Location”栏中选择相应的管脚填入,并将未用到的管脚置为三态,最后将程序下载到SmartSOPC实验系统中运行,检验结果是否正确。
六、试验中出现的问题及解决办法本次实验中出现遇到了很多问题,主要原因有的是本身思考问题不全面,导致调试时漏洞百出,还有就是设计方法的问题以及作图时不够细致。
以下是设计中出现的一些问题及解决方法:a)分频模块在设计分频模块的时候,由于没有考虑整体功能实现需要多个不同频率的输出,而只把1HZ作为我们的目标,导致后来用到时又返回去增加输出,导致模块的变动,也给整个工程带来了麻烦。
b)译码显示问题在检验计时输出时,发现分的个位显示乱码,经老师指导后才知道原来是输出的四位二进制位的顺序倒了,该软件中数组表示时一般高位在前,即应该是mg[3..0]的形式。
c)校分校时问题在一开始调试校分电路时,发现分和时并不在59后归零,而是一直不停的计数下去。
经讨论,是因为原先分清零的要求是分和秒的计数值都为59,而在校分的时候,不需要秒位也是59,因此对分的清零信号进行修改,要加入K3的作用,同理,时的清零信号要加入K4的作用。
d)显示复用问题本次实验的一个难点就是译码管的复用问题,要在正常计时、闹钟校时及秒计时三种状态下进行切换,经同学指点发现可以用开关控制选择器来达到选择显示界面的效果。
e)消颤问题在调试校时模块的时候发现拨动开关时数字显示跳动不正常,经验分析这是由于开关波动时会产生抖动造成的,所以要给开关加上消颤处理,其原理很简单,就是利用D锁存器的锁存功能。
七、实验收获和感受本次试验一方面需要我们掌握数字逻辑电路的知识,另一方面又要适应新的软件QuartusⅡ和试验箱的用法。
虽说和电工电子实验的内容基本一样,但用的方法却不一样。
上次实验除了理论知识外,还需要相当高的人品,万一哪边没接地或哪个孔差错了可能害你花掉整个小时的时间去查错,而且万一芯片坏了也很麻烦,效率比较低,而且眼花缭乱。
而这一次,可以利用软件仿真,观察波形,调试,而且不会发生芯片烧坏的情况。
当然,本次试验中我也遇到不少新的问题。
在调试的过程中,我经常会遇到一些错误,但一般错误都是能自己改正的,遇到最多的错误就是输入、输出忘标了,主要还是不够细致造成的。
当然也有许多问题是自己不能解决的,这时就要请教老师,或跟同组的商量。
首先在做分频的时候感觉很顺利,就是几个计数器,后来发现还是不对,输出就一个频率,不够用,看来还是需要有全局观念;然后在做显示模块的时候耽搁了一下,原因就是显示乱码,是输出二进制位顺序反了;接着是校分和校时,这里面的逻辑关系比较复杂,要考虑的因素也比较多,最后在跟同组同学的商量下把问题解决了;然而,最大的问题还是显示复用问题,刚开始对这个问题是一头雾水,因为以前的数字钟实验需要几个显示就给几个显示管,这一次遇到了切换的问题,我们开始每想到用选择器来控制切换,虽然有结果,但显示任不正常,且无法解决三种界面的切换问题,最终在其他同学的指导下采用选择器解决了问题。
对于本次实验,我体会颇深:作为学生,我们要学好专业知识和技能,这样在用到时才能得心应手;要有自学新知识的能力,对于陌生的东西要根据已掌握的知识来帮助自己尽快了解它;遇到困难时,首先要自己想办法解决,实在行不通时就要像老师和同学请教,此外,同学之间配合默契也是达到目标的关键。
最后,再次感谢我的同组实验人段朝霞,感谢姜萍老师和花汉兵老师!八附录:数字钟总原理图九参考文献[1] 数字逻辑电路与系统设计蒋立平主编电子工业出版社[2] EDA设计实验指导书南京理工大学电子技术中心。