毕业论文设计EDA课设数字钟
- 格式:doc
- 大小:151.00 KB
- 文档页数:27
湖北大学物电学院EDA课程设计报告(论文)题目:多功能数字钟设计专业班级: 14微电子科学与工程姓名:黄山时间:2016年12月20日指导教师:万美琳卢仕完成日期:2015年12月20日多功能数字钟设计任务书1.设计目的与要求了解多功能数字钟的工作原理,加深利用EDA技术实现数字系统的理解2.设计内容1,能正常走时,时分秒各占2个数码管,时分秒之间用小时个位和分钟个位所在数码管的小数点隔开;2,能用按键调时调分;3,能整点报时,到达整点时,蜂鸣器响一秒;4,拓展功能:秒表,闹钟,闹钟可调3.编写设计报告写出设计的全过程,附上有关资料和图纸,有心得体会。
4.答辩在规定时间内,完成叙述并回答问题。
目录(四号仿宋_GB2312加粗居中)(空一行)1 引言 (1)2 总体设计方案 (1)2.1 设计思路 (1)2.2总体设计框图 (2)3设计原理分析 (3)3.1分频器 (4)3.2计时器和时间调节 (4)3.3秒表模块 (5)3.4状态机模块 (6)3.5数码管显示模块 (7)3.6顶层模块 (8)3.7管脚绑定和顶层原理图 (9)4 总结与体会 (11)多功能电子表摘要:本EDA课程主要利用QuartusII软件Verilog语言的基本运用设计一个多功能数字钟,进行试验设计和软件仿真调试,分别实现时分秒计时,闹钟闹铃,时分手动较时,时分秒清零,时间保持和整点报时等多种基本功能关键词:Verilog语言,多功能数字钟,数码管显示;1 引言QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL 以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程,解决了传统硬件电路连线麻烦,出错率高且不易修改,很难控制成本的缺点。
利用软件电路设计连线方便,修改容易;电路结构清楚,功能一目了然2 总体设计方案2.1 设计思路根据系统设计的要求,系统设计采用自顶层向下的设计方法,由时钟分频部分,计时部分,按键调时部分,数码管显示部分,蜂鸣器四部分组成。
eda数字时钟课程设计论文一、课程目标知识目标:1. 理解数字时钟的基本原理,掌握EDA工具的使用方法。
2. 学习数字时钟设计的基本流程,包括时钟信号生成、分频、计数等模块的设计与实现。
3. 了解数字时钟的显示原理,掌握七段显示译码器的应用。
技能目标:1. 培养学生运用所学知识进行数字电路设计的能力。
2. 培养学生运用EDA工具进行电路仿真、调试的能力。
3. 培养学生团队协作、沟通表达的能力。
情感态度价值观目标:1. 激发学生对电子设计的兴趣,培养创新意识和动手能力。
2. 培养学生严谨的科学态度,注重实验数据的真实性。
3. 增强学生的自信心,勇于面对和解决问题。
本课程针对高年级学生,结合学科特点和教学要求,将目标分解为具体的学习成果。
课程性质为实践性较强的设计课,注重培养学生的实际操作能力和团队合作精神。
通过本课程的学习,学生能够掌握数字时钟设计的基本方法,提高电子设计能力,培养良好的情感态度价值观。
二、教学内容本课程教学内容主要包括以下三个方面:1. 数字时钟原理及设计流程- 了解数字时钟的基本原理,包括时钟信号、分频器、计数器等组成部分。
- 学习数字时钟设计的基本流程,结合教材相关章节,进行实例分析。
2. EDA工具的使用- 介绍EDA工具的基本功能,如原理图绘制、仿真、PCB设计等。
- 结合教材,学习使用EDA工具进行数字时钟电路的设计与仿真。
3. 数字时钟电路设计与实现- 分析并设计数字时钟的各个功能模块,如时钟信号生成、分频、计数、显示等。
- 结合教材章节,进行具体电路设计,列举所需元器件及参数。
教学进度安排如下:1. 第一周:数字时钟原理及设计流程学习。
2. 第二周:EDA工具的使用方法及操作练习。
3. 第三周:数字时钟电路设计与实现,包括各功能模块设计和整体调试。
教学内容注重科学性和系统性,结合教材章节,使学生能够循序渐进地掌握数字时钟的设计方法。
同时,通过实践操作,提高学生的动手能力和实际应用能力。
eda数字钟的设计课程设计一、课程目标知识目标:1. 让学生掌握EDA技术的基本原理和应用;2. 使学生了解数字时钟的工作原理,掌握其设计方法;3. 帮助学生理解数字电路的基本组成,掌握常用数字电路元件的功能和使用方法。
技能目标:1. 培养学生运用EDA软件进行数字电路设计的能力;2. 提高学生动手实践能力,能够独立完成数字钟的搭建和调试;3. 培养学生分析问题和解决问题的能力,学会运用所学知识解决实际工程问题。
情感态度价值观目标:1. 激发学生对电子工程领域的兴趣,培养其探索精神和创新意识;2. 培养学生良好的团队合作精神和沟通能力,学会在团队中发挥个人作用;3. 培养学生具备严谨的科学态度,注重实践操作的安全性和环保意识。
分析课程性质、学生特点和教学要求,本课程旨在通过数字钟的设计与实现,使学生在掌握基本理论知识的基础上,提高实践操作能力和创新设计能力。
课程目标具体、可衡量,便于学生和教师在教学过程中明确预期成果,为后续的教学设计和评估提供依据。
二、教学内容本课程教学内容主要包括以下三个方面:1. EDA技术基本原理:- EDA软件的使用方法与操作流程;- 常用数字电路元件的原理与功能;- 数字电路设计的基本步骤和技巧。
2. 数字时钟工作原理与设计方法:- 数字时钟的基本组成和各部分功能;- 时钟信号的产生、分频和计数原理;- 数字钟电路图设计及仿真分析。
3. 实践操作与调试:- 数字钟电路的搭建与连接;- 调试过程中故障分析与解决;- 数字钟功能测试与性能优化。
教学内容根据课程目标制定,具有科学性和系统性。
教学大纲明确,教学内容安排和进度如下:1. EDA技术基本原理(2课时)2. 数字时钟工作原理与设计方法(3课时)3. 实践操作与调试(4课时)教学内容与教材章节关联紧密,确保学生能够将所学理论知识与实际操作相结合,提高综合运用能力。
三、教学方法针对本课程的教学目标和学生特点,采用以下多样化的教学方法:1. 讲授法:教师通过PPT、板书等形式,系统讲解EDA技术基本原理、数字时钟工作原理与设计方法等理论知识。
EDA课程设计报告电子钟EDA课程设计报告——数字钟设计班级:学号:姓名:一、设计任务设计一台能显示时、分、秒的数字钟。
具体要求如下:(1)由实验箱上的时钟信号经分频产生秒脉冲;(2)计时计数器用24进制计时电路;(3)可手动校时, 能分别进行时、分的校正;(4)整点报时;选做: 可设置闹时功能, 当计时计到预定时间时, 扬声器发出闹铃信号, 闹铃时间为4s, 并可提前终止闹铃。
二、试验目的(1)掌握时十进制、六进制和二十四进制计数器的设计方法。
(2)掌握多位计数器相连的设计方法。
(3)掌握多位共阴极扫描显示数码管的驱动及编码。
三、总体设计方案本数字系统实现数字钟的基本的计时功能, 输入8Hz的时钟, 经过分频产生1Hz的时钟信号, 采用24/12小时制计时, 能显示时、分、秒。
本系统还具有校正功能, 能够进行时分的校时, 当计时器运行到59分59秒开始报时, 另外还能够设定闹钟, 当按下闹铃开关时, 可在规定时间闹铃, 当开关复位时, 闹铃停止。
本数字钟实际上是一个对频率(1Hz)进行计数的计数电路。
由于计数的起始时间不可能与标准时间一致, 故需要在电路上加一个校时电路, 同时分频后的1Hz时间信号必须做到准确稳定。
一般使用石英晶体振荡器电路构成数字钟。
数字钟的基本组成本数字钟的实现可分为以下几个模块:(1) 秒计数模块: 秒计数, 在频率为1Hz的时钟下以60次为循环计数, 并产生进位信号影响分计数;(2) 分计数模块: 分计数, 在秒进位信号为高电平时, 计数一次, 同样以60次为一个循环计数, 同时产生分进位信号影响时计数;(3) 时计数模块: 时计数, 在分进位信号为高电平时, 计数一次, 以24/12次为一个循环计数;(4) 频率产生模块: 产生8Hz的计数频率, 经过分频得到1Hz 频率;(5) 时间显示模块: 数码管经过动态显示, 同时进行一定频率的扫描显示时, 分, 秒。
(6) 时间设置模块: 设置调试使能端, 能够调时, 分, 秒。
EDA设计(2) ————多功能数字钟设计院系:电子工程与光电技术学院本实验利用QuartusII软件,结合所学的数字电路的知识,采用自顶向下的分析方法。
首先分析了多功能数字钟的设计要求、所需实现的功能,然后分析了实现每个功能所需要的基础模块,最后进一步分析了各种基础模块。
在具体设计时,采用的是自底向上的设计方法。
首先设计各种基础模块,然后设计各种功能模块,最后进行综合设计。
本次设计除了实现基本的时钟电路外,还实现了整点报时、闹钟、日期、星期、秒表等多种功能。
报告首先分析了整个数字中电路的工作原理,其中重点解释说明了个子模块的设计原理及调试、编译、仿真、下载等过程。
其次对最终结果进行总结及提出课后对于其他附加电路的部分思考。
在报告的最后总结了此次实验过程中出现的问题困难和相应解决方法。
Abstract:Using the QuartusII, we design a digital clock of 24 hours with learning electric circuit knowledge,adopts the top-down analysis method .Above all ,it analyses the design requirement and the required functionality of Multi function Digital Clock .And then it analyses the needed basic modules which can achieve each function .Lastly ,it analyses each basic module further .When it comes to the specific design ,it adopts the bottom-up design method .Firstly ,it designs each basic module .Then , it designs the function modules based on the basic modules .Finally ,it integrates all the designs .Besides the function of basic clock ,it also achieves functions of hourly chime, alarm, date, week and clock. To begin with,the report analysis functional theory of the whole digital circuit, in which emphasize designing principle of different parts separately and debugging, simulating, compiling, programming. Moving forward are the conclusion of the final out-coming and partial thinking about some other extra circuit which cannot accomplish in class. Finally, I will summarize sorts of problems and difficulties encountered in the process and respectively solutions关键词:计数功能组合多功能数字时钟同步整点报时下载检验Key word: counting combination of functions multi-function digital clock、Synchronous、 A little bit whole tell the time download inspection一、实验内容 (3)二、题目简介 (3)三、基本要求 (3)3.1 设计的基本要求 (3)3.2 设计提高部分要求 (3)四、方案论证 (3)五、基本电路各个功能的模块设计 (6)4.1 脉冲发生电路 (6)4.2 计时电路 (10)4.3 较分校时电路 (13)4.4 清零电路 (15)4.5 保持电路 (16)4.6 报时电路 (16)4.7 译码显示电路 (17)4.8 消颤电路 (19)4.9 各种组合电路 (20)六、附加功能的设计 (21)6.1 星期电路 (21)6.2 秒表电路 (22)七、实验的改进 (25)7.1 较分校时较星期的改进 (25)八、实验的电路设计总图 (26)九、实验中遇到的困难及改进方法 (26)9.1 最大的困难:数字钟计数器的设计 (26)十、正在设计还未能实现的功能 (27)10.1 闹钟电路 (27)十一、电路下载 (29)十二、实验感想 (30)十三、鸣谢 (31)十四、参考文献 (31)一、实验内容:利用QuartusII软件设计一个数字钟,并下载到SmartSOPC实验系统中。
EDA数字钟毕业设计第一篇:EDA数字钟毕业设计[ 标签:数字钟, eda ]1、设计一个能显示1/10秒、秒、分、时的12小时数字钟。
2、时钟源使用频率为0.1Hz的连续脉冲。
3、设置两个按钮,一个供“开始”及“停止”用,一个供系统“复位”用。
4、时钟显示使用数码管显示。
基于VHDL的多功能数字钟的设计EDA课程设计资料类别课程(专业)EDA 适用年级大学文件格式word+DLS 文件大小1725K 上传时间2008-10-10 20:57:00 预览文件无(只能预览文件中的部分内容)下载次数0内容简介:EDA课程设计基于VHDL的多功能数字钟的设计,共11页,6086字,附源程序。
摘要:介绍了利用VHDL硬件描述语言设计的多功能数字钟的思路和技巧。
在MAX+PLUSII开发环境中编译和仿真了所设计的程序,并在可编程逻辑器件上下栽验证。
仿真和验证结果表明,该设计方法切实可行。
EDA-时钟设计-基于Altera数字钟的实现:EDA课程设计基于VHDL的多功能数字钟的设计:EDA数字钟设计报告:资料包括:论文(12页2036字)图纸说明:中文摘要:数字钟学习的目的是掌握各类计数器及它们相连的设计方法;掌握多个数码管显示的原理与方法;掌握FPGA技术的层次化设计方法;掌握用VHDL语言的设计思想以及整个数字系统的设计。
此数字钟设计具有时,分,秒计数显示功能,以24小时为计数循环;能实现清零,调节小时,分钟以及整点报时的功能。
第二篇:eda数字钟程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY clock IS PORT(EN :IN STD_LOGIC;数码管使能CLK:IN STD_LOGIC;时钟信号RST:IN STD_LOGIC;复位信号SEC_1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);秒高位SEC_01 :OUT STD_LOGIC_VECTOR(3 DOWNTO 0);秒低位MIN_1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);分高位MIN_01 :OUT STD_LOGIC_VECTOR(3 DOWNTO 0);分低位HOU_1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);时高位HOU_01 :OUT STD_LOGIC_VECTOR(3 DOWNTO 0);时低位BEE:OUT STD_LOGIC);END clock;ARCHITECTURE behovior OF clock IS SIGNAL SEC_HIGH:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL SEC_LOW:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL MIN_HIGH:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL MIN_LOW:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL HOU_HIGH:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL HOU_LOW:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL CY_MIN:STD_LOGIC;分进位SIGNAL CY_HOU:STD_LOGIC;时进位SIGNAL LOGO_1:STD_LOGIC;标志SIGNAL LOGO_2:STD_LOGIC;SIGNAL LOGO_3:STD_LOGIC;BEGIN MIAOLOW:PROCESS(CLK,RST,EN)BEGINIF(RST = '0')THENSEC_LOW <= “1000”;附给秒低位为8ELSIF(CLK'EVENT AND CLK = '1' AND EN = '1')THEN 检测时钟上升沿及数码管使能端IF(SEC_LOW = “1001”)THENSEC_LOW <= “0000”;ELSESEC_LOW <= SEC_LOW + “0001”;加一END IF;END IF;END PROCESS MIAOLOW;LOGO_1 <= SEC_LOW(3)AND SEC_LOW(0);SEC_01<= SEC_LOW;秒个位放8MIAOHIGH:PROCESS(CLK,RST)BEGINIF(RST = '0')THENSEC_HIGH <= “0101”;ELSIF(CLK'EVENT AND CLK = '1')THEN检测时钟上升沿IF(LOGO_1 = '1')THENIF(SEC_HIGH = “0101”)THENSEC_HIGH <= “0000”;CY_MIN <= '1';ELSESEC_HIGH <= SEC_HIGH + “0001”;加一CY_MIN <= '0';END IF;END IF;END IF;END PROCESS MIAOHIGH;SEC_1 <= SEC_HIGH;秒十位放5FENLOW:PROCESS(CY_MIN,RST,EN)BEGINIF(RST = '0')THEN 若复位位为0MIN_LOW <= “1000”;则分个位为8ELSIF(CY_MIN'EVENT AND CY_MIN = '1' AND EN = '1')THEN 检测时钟上升沿及数码管使能端IF(MIN_LOW = “1001”)THENMIN_LOW <= “0000”;ELSEMIN_LO W <= MIN_LOW + “0001”;加一END IF;END IF;END PROCESS FENLOW;LOGO_2 <= MIN_LOW(3)AND MIN_LOW(0);MIN_01 <= MIN_LOW;分个位放8FENHIGH:PROCESS(CY_MIN,RST)BEGINIF(RST = '0')THENMIN_HIGH <= “0101”;ELSIF(CY_MIN'EVENT AND CY_MIN = '1')THEN检测分进位上升沿IF(LOGO_2 = '1')THENIF(MIN_HIGH = “0101”)THEN若分十位为5MIN_HIGH <= “0000”;CY_HOU <= '1';时进位为1ELSEMIN_HIGH <= MIN_HIGH + “0001”;加一CY_HOU <= '0';END IF;END IF;END IF;END PROCESS FENHIGH;MIN_1 <= MIN_HIGH;分十位放5SHILOW:PROCESS(CY_HOU,RST,EN)BEGINIF(RST = '0')THENHOU_LOW <= “1001”;ELSIF(CY_HOU'EVENT AND CY_HOU = '1'AND EN = '1')THEN检测时进位上升沿及数码管使能端IF(HOU_LOW = “1001”)THEN若时低位为9HOU_LOW <= “0000”;ELSIF(HOU_HIGH = “0010” AND HOU_LOW = “0011”)THEN若时十位为2,个位为3HOU_LOW <= “0000”;ELSEHOU_LOW <= HOU_LOW + “0001”;加一END IF;END IF;END PROCESS SHILOW;LOGO_3 <= HOU_LOW(3)AND HOU_LOW(0);HOU_01 <= HOU_LOW;时个位放3SHIHIGH:PROCESS(CY_HOU,RST)BEGINIF(RST = '0')THENHOU_HIGH <= “0001”;ELSIF(CY_HOU'EVENT AND CY_HOU = '1')THEN检测时进位上升沿IF(HOU_HIGH = “0010” AND HOU_LOW = “0011”)THEN 若时十位为2,时个位为3HOU_HIGH <= “0000”;ELSIF(LOGO_3 = '1')THENHOU_HIGH <= HOU_HIGH + “0001”;加一END IF;END IF;END PROCESS SHIHIGH;BEE_CLOCK:PROCESS(CLK)BEGINIF(CLK'EVENT AND CLK = '1')THEN检测时钟上升沿IF(SEC_HIGH = “0101” AND SEC_LOW = “1001”AND MIN_HIGH = “0101” AND MIN_LOW = “1001”)THENBEE <= '1';ELSEBEE <= '0';END IF;END IF;END PROCESS BEE_CLOCK;HOU_1 <= HOU_HIGH;时十位放2END behovior;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY clock1 IS PORT(EN :IN STD_LOGIC;CLK:IN STD_LOGIC;RST:IN STD_LOGIC;SEC_1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);SEC_01 :OUT STD_LOGIC_VECTOR(3 DOWNTO 0);MIN_1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);MIN_01 :OUT STD_LOGIC_VECTOR(3 DOWNTO 0);HOU_1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);HOU_01 :OUT STD_LOGIC_VECTOR(3 DOWNTO 0);BEE:OUT STD_LOGIC);END clock1;ARCHITECTURE behovior OF clock1 IS SIGNAL SEC_HIGH:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL SEC_LOW:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL MIN_HIGH:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL MIN_LOW:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL HOU_HIGH:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL HOU_LOW:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL CY_MIN:STD_LOGIC;SIGNAL CY_HOU:STD_LOGIC;SIGNAL LOGO_1:STD_LOGIC;SIGNAL LOGO_2:STD_LOGIC;SIGNAL LOGO_3:STD_LOGIC;BEGIN MIAOLOW:PROCESS(CLK,RST,EN)BEGINIF(RST = '0')THENSEC_LOW <= “1000”;ELSIF(CLK'EVENT AND CLK = '1' AND EN = '1')THEN IF(SEC_LOW = “1001”)THENSEC_LOW <= “0000”;ELSESEC_LOW <= SEC_LOW + “0001”;END IF;END IF;END PROCESS MIAOLOW;LOGO_1 <= SEC_LOW(3)AND SEC_LOW(0);SEC_01<= SEC_LOW;MIAOHIGH:PROCESS(CLK,RST)BEGINIF(RST = '0')THENSEC_HIGH <= “0101”;ELSIF(CLK'EVENT AND CLK = '1')THENIF(LOGO_1 = '1')THENIF(SEC_HIGH = “0101”)THENSEC_HIGH <= “0000”;CY_MIN <= '1';ELSESEC_HIGH <= SEC_HIGH + “0001”;CY_MIN <= '0';END IF;END IF;END IF;END PROCESS MIAOHIGH;SEC_1 <= SEC_HIGH;FENLOW:PROCESS(CY_MIN,RST,EN) BEGINIF(RST = '0')THENMIN_LOW <= “1000”;ELSIF(CY_MIN'EVENT AND CY_MIN = '1' AND EN = '1')THEN IF(MIN_LOW = “1001”)THENMIN_LOW <= “0000”;ELSEMIN_LOW <= MIN_LOW + “0001”;END IF;END IF;END PROCESS FENLOW;LOGO_2 <= MIN_LOW(3)AND MIN_LOW(0);MIN_01 <= MIN_LOW;FENHIGH:PROCESS(CY_MIN,RST)BEGINIF(RST = '0')THENMIN_HIGH <= “0101”;ELSIF(Cy_MIN'EVENT AND CY_MIN = '1')THENIF(LOGO_2 = '1')THENIF(MIN_HIGH = “0101”)THENMIN_HIGH <= “0000”;CY_HOU <= '1';ELSEMIN_HIGH <= MIN_HIGH + “0001”;CY_HOU <= '0';END IF;END IF;END IF;END PROCESS FENHIGH;MIN_1 <= MIN_HIGH;SHILOW:PROCESS(CY_HOU,RST,EN)BEGINIF(RST = '0')THENHOU_LOW <= “1001”;ELSIF(CY_HOU'EVENT AND CY_HOU = '1' AND EN = '1')THEN IF(HOU_LOW = “1001”)THENHOU_LOW <= “0000”;ELSIF(HOU_HIGH = “0010” AND HOU_LOW = “0011”)THENHOU_LOW <= “0000”;ELSEHOU_LOW <= HOU_LOW + “0001”;END IF;END IF;END PROCESS SHILOW;LOGO_3 <= HOU_LOW(3)AND HOU_LOW(0);HOU_01 <= HOU_LOW;SHIHIGH:PROCESS(Cy_HOU,RST)BEGINIF(RST = '0')THENHOU_HIGH <= “0001”;ELSIF(CY_HOU'EVENT AND CY_HOU = '1')THENIF(HOU_HIGH = “0010” AND HOU_LOW = “0011”)THEN HOU_HIGH <= “0000”;ELSIF(LOGO_3 = '1')THENHOU_HIGH <= HOU_HIGH + “0001”;END IF;END IF;END PROCESS SHIHIGH;BEE_CLOCK:PROCESS(CLK)BEGINIF(CLK'EVENT AND CLK = '1')THENIF(SEC_HIGH = “0101” AND SEC_LOW = “1001”AND MIN_HIGH = “0101” AND MIN_LOW = “1001”)THENBEE <= '1';ELSEBEE <= '0';END IF;END IF;END PROCESS BEE_CLOCK;HOU_1 <= HOU_HIGH;END behovior;第三篇:EDA数字钟课程设计课程设计报告设计题目:用VHDL语言实现数字钟的设计班级:电子1002班学号:20102625 姓名:于晓指导教师:李世平、李宁设计时间:2012年12月摘要数字钟是一种用数字电路技术实现时、分、秒计时的钟表。
eda课程设计数字钟设计一、课程目标知识目标:1. 学生能理解EDA(电子设计自动化)的基本概念,掌握数字钟的基本原理和设计流程。
2. 学生能描述数字钟的各个模块功能,如计时、显示、调整等,并理解它们之间的协同工作方式。
3. 学生掌握Verilog等硬件描述语言的基本语法,能够利用EDA工具进行基本的数字电路设计和仿真。
技能目标:1. 学生能够运用所学知识,使用EDA工具设计简单的数字时钟电路,并进行功能仿真。
2. 学生通过小组合作,培养团队协作能力和问题解决能力,提高工程实践和项目管理的初步技能。
3. 学生能够运用批判性思维分析设计过程中的问题,提出优化方案,并对设计方案进行改进。
情感态度价值观目标:1. 学生通过数字钟的设计实践,培养对电子工程领域的兴趣和探究精神,激发创新意识和创造潜能。
2. 学生在学习过程中,形成严谨的科学态度和良好的工程意识,认识到技术对日常生活的影响。
3. 学生在小组合作中,学会相互尊重和沟通,培养积极向上的团队精神,增强集体荣誉感。
课程性质分析:本课程为实践性较强的电子设计课程,要求学生将理论知识与实际操作相结合,通过动手实践,深化对电子设计自动化原理的理解。
学生特点分析:针对高中年级学生,已有一定的电子基础和逻辑思维能力,对新鲜事物充满好奇心,具备自主学习的能力。
教学要求:课程要求教师通过引导和启发,帮助学生将抽象的理论具体化,通过项目式的教学方法,使学生能够将所学知识应用于实际问题的解决中。
二、教学内容本课程教学内容围绕数字钟设计的全过程,分为以下三个部分:1. 理论知识学习:- 电子设计自动化(EDA)基本概念与原理;- 数字时钟的组成、工作原理及各模块功能;- Verilog硬件描述语言的基本语法及使用方法;- 相关电子元器件的特性和应用。
2. 实践操作部分:- 使用EDA工具(如ModelSim、Quartus等)进行基本操作;- 设计数字钟的各个模块,并进行功能仿真;- 对设计过程中出现的问题进行分析,提出优化方案;- 完成数字钟整体设计与调试。
eda课程设计 数字钟。
一、课程目标知识目标:1. 让学生理解数字时钟的基本原理,掌握数字时钟电路的设计方法。
2. 使学生掌握EDA工具的使用,学会利用工具进行电路设计、仿真和调试。
3. 帮助学生了解数字时钟中各个模块的功能和相互关系。
技能目标:1. 培养学生运用EDA工具进行数字电路设计的能力。
2. 培养学生分析问题、解决问题的能力,能够根据实际需求设计简单的数字时钟电路。
3. 提高学生的动手实践能力,学会使用相关仪器设备进行电路调试。
情感态度价值观目标:1. 激发学生对电子设计的兴趣,培养创新意识和探索精神。
2. 培养学生良好的团队协作精神,学会与他人共同解决问题。
3. 培养学生严谨的科学态度和勤奋刻苦的学习精神。
课程性质:本课程为实践性课程,旨在通过数字时钟电路设计,提高学生的电子设计能力。
学生特点:学生具备一定的电子基础知识,对EDA工具感兴趣,但动手实践能力有待提高。
教学要求:注重理论与实践相结合,充分调动学生的积极性,引导学生主动参与教学活动,提高学生的实践能力。
教学过程中,注重培养学生的团队合作精神和创新能力,为学生的未来发展奠定基础。
通过本课程的学习,使学生能够具备独立设计、制作和调试数字时钟电路的能力。
二、教学内容根据课程目标,本章节教学内容主要包括以下几部分:1. 数字时钟原理:讲解数字时钟的基本原理,分析数字时钟的各个模块功能,如秒脉冲发生器、计数器、显示驱动等。
2. EDA工具使用:介绍EDA工具的基本操作,如原理图绘制、电路仿真、PCB设计等,使学生掌握使用EDA工具进行数字电路设计的方法。
3. 数字时钟电路设计:根据实际需求,制定数字时钟设计方案,包括选择合适的元器件、绘制原理图、编写程序等。
4. 电路仿真与调试:指导学生利用EDA工具进行电路仿真,分析电路性能,优化设计方案;并进行实际电路搭建与调试,培养学生的动手实践能力。
教学大纲安排如下:1. 第一周:数字时钟原理学习,熟悉各个模块功能。
EDA课程数字钟设计报告(1)EDA课程数字钟设计报告一、设计目标:本次设计要求设计一款数字钟,要求具有如下功能:1.计时功能:能够以时、分、秒的形式显示时间,每经过一秒钟就自动更新时间。
2.报时功能:能够在每个整点或半个小时时报时,并具有报时器关闭功能。
3.闹钟功能:设定闹钟时间后,在设定时间到达时自动响铃。
4.指示功能:能够以数字形式指示时间,并能在背景板上对时间进行显示。
二、方案设计:1.硬件设计:本次设计所需器材包括Cyclone IV E FPGA,七段数码管以及电路底板。
Cyclone IV E是英特尔公司推出的第四代Cyclone系列FPGA器件,具有可编程的逻辑元件、存储器单元和DSP功能单元等特点,足以满足本项目所需的复杂性。
七段数码管是一种显示器件,可以用来显示数字和一些字母。
本设计采用了常见的共阳极七段数码管。
电路底板是一个电路板,用于连接各种测试设备并测试控制电路。
2.软件设计:本设计的软件应该被分为以下几个部分来实现:1.时钟模块:该模块负责自动更新钟表,更新范围应该包括时、分、秒的更新。
2.闹钟模块:该模块负责实现闹钟功能,比较当前时间和设定时间,如果相同,则自动响铃。
3.报时模块:该模块负责在每个整点或半个小时时报时,并可自动关闭报时器。
4.数字显示模块:该模块主要用于以数字形式指示时间,并能在背景板上显示时间。
5.用户交互模块:该模块负责接受用户输入,开关闹钟、报时器,并显示设置的时间和状态信息。
三、实现:1. 外部电路该设计采用七段数码管显示时间,其中每个数码管都有8个引脚,分别对应7条段和一个共阳极。
在数字显示时,需要依次将每个数码管复位,并发送相应的数据信号,以显示所需的数字。
数字与LED的亮度控制采用PWM宽度调制技术,可实现手动调节亮暗。
2. 操作流程本设计操作流程为:用户首先输入设定的闹钟时间、关闭报时器的时间间隔及报时器、闹钟等的开启与关闭状态。
系统开始计时并根据所设定的时间执行相应操作。
eda多功能数字时钟课程设计一、课程目标知识目标:1. 学生能理解数字时钟的基本原理,掌握EDA工具的使用方法,并运用相关电路知识设计多功能数字时钟。
2. 学生能够运用所学知识,分析并解释数字时钟电路中各个部分的功能及其相互关系。
3. 学生了解数字时钟在实际生活中的应用,理解其重要性。
技能目标:1. 学生能够运用EDA工具进行电路设计,具备实际操作能力。
2. 学生通过动手实践,培养解决实际问题的能力,提高创新意识和团队协作能力。
3. 学生能够运用所学知识,对数字时钟电路进行调试和优化。
情感态度价值观目标:1. 学生在学习过程中,培养对电子技术的兴趣,激发创新精神。
2. 学生通过团队合作,学会尊重他人,培养良好的沟通能力和团队精神。
3. 学生认识到科技发展对社会进步的重要性,树立正确的价值观。
课程性质:本课程为实践性较强的课程,结合理论教学,注重培养学生的动手能力和实际操作技能。
学生特点:学生具备一定的电子技术基础知识,对实践操作有较高的兴趣。
教学要求:教师需结合理论教学,指导学生进行实践操作,注重启发式教学,引导学生主动探究,提高学生的综合能力。
在教学过程中,关注学生的学习进度,及时调整教学策略,确保课程目标的实现。
通过课程学习,使学生能够将所学知识应用于实际生活中,提高学生的创新意识和实践能力。
二、教学内容本课程教学内容主要包括以下几部分:1. 数字时钟原理:讲解数字时钟的基本工作原理,包括时钟信号、计数器、显示驱动等组成部分。
2. EDA工具使用:介绍EDA工具的基本操作,如原理图绘制、电路仿真、PCB设计等。
3. 电路设计与实现:指导学生运用EDA工具设计多功能数字时钟电路,包括时钟信号电路、分频器、计数器、显示驱动和按键控制等模块。
4. 电路调试与优化:教授学生如何对设计的数字时钟电路进行调试,找出问题并进行优化。
教学内容与教材关联性如下:1. 《电子技术基础》中关于数字电路的基础知识,为理解数字时钟原理提供理论支持。
一、设计要求1、设计一个能显示1/10秒、秒、分、时的12小时数字钟。
2、熟练掌握各种计数器的使用。
能用计数器构成十进制、六十进制、十二进制等所需进制的计数器。
能用低位的进位输出构成高位的计数脉冲。
3、“时显示”部分应注意12点后显示1点。
4、注意各部分的关系,由低位到高位逐级设计、调试。
5、时钟显示使用数码管显示。
二、系统方案论证与模块划分1、计数器模块计数器模块中,1/10秒采用带进位的10进制功能模块,秒和分采用带进位的60进制功能模块,小时采用不带进位的12进制功能模块。
计数器模块均用Verilog HDL语言编写,实现计数逻辑功能。
(1)十进制计数器设计程序如下:module ssecond(q,rco,clk,reset);input clk,reset;output [3:0] q;output rco;reg rco;reg [3:0] q;always @(posedge clk or negedge reset)beginif(~reset)q<=4'b0000;else if (q==4'b1001) begin q<=4'b0000; rco=1;endelse begin q<=q+1'b1; rco=0;endendendmodule经编译、仿真、下载,满足要求。
然后通过Create Default Symbol,生成符号体如下:(2)六十进制计数器设计程序如下:module second(qh,ql,rco,clk,reset);output[3:0]qh;output[3:0]ql;output rco;reg [3:0]qh;reg [3:0]ql;reg rco;input clk,reset;always @(posedge clk or negedge reset)beginif(~reset){qh,ql}<=0;elsebeginif({qh,ql}==8'h59)begin {qh,ql}<=0;rco<=1;endelsebeginif(ql==9)begin ql<=0; qh<=qh+1;endelsebegin ql<=ql+1;rco<=0;endendendendendmodule经编译、仿真、下载,满足要求。
EDA课程设计论文-----数字钟一、设计要求说明设计并实现具有一定功能的数字小系统(数字钟)要求:1、对所有设计的小系统能够正确分析;2、基于VHDL语言描述系统的功能;3、在max+plus2环境中编译通过;4、仿真通过并得到正确的波形;5、给出相应的设计报告。
6;要求数字钟能够设置初始时间难度要求:至少有2层电路,底层电路至少有4中元件。
二、方案论证该数字钟可以实现3个功能:计时功能、整点报时功能和重置时间功能,因此有3个子模块:计时、报时(alarm1)、重置时间(s1、m1、h1、d1)。
其中计时模块有4部分构成:秒计时器(second1)、分计时器(minute1)、时计时器(hour1)和星期计时器(day1)。
秒计时器(second1)是由一个60进制的计数器构成的,具有清0、置数和计数功能。
其中reset 为清0信号,当reset为0时,秒计时器清0;set 为置数信号,当set为0时,秒计时器置数,置s1的值。
clk为驱动秒计时器的时钟,sec为秒计时器的输出,ensec为秒计时器的进位信号,作为下一级的时钟输入信号。
分计时器(minute1)是由一个60进制的计数器构成的,具有清0、置数和计数功能。
其中reset 为清0信号,当reset为0时,分计时器清0;set 为置数信号,当set为0时,分计时器置数,置m1的值。
clkm为驱动分计时器工作的时钟,与ensec相连接;min为分计时器的输出;enmin为分计时器的进位信号,作为下一级的时钟输入信号。
时计时器(hour1)是由一个24进制的计数器构成的,具有清0、置数和计数功能。
其中reset 为清0信号,当reset为0时,时计时器清0;set 为置数信号,当set为0时,时计时器置数,置h1的值。
clkh为驱动时计时器工作的时钟,与enmin相连接;hour为时计时器的输出;enhour为时计时器的进位信号,作为下一级的时钟输入信号。
eda课程设计 数字时钟一、课程目标知识目标:1. 学生能理解数字时钟的基本概念和原理,掌握数字时钟的组成、功能及使用方法。
2. 学生能够运用所学知识,分析并设计简单的数字时钟电路。
3. 学生了解EDA(电子设计自动化)软件在数字时钟设计中的应用。
技能目标:1. 学生能够运用EDA软件完成数字时钟电路的绘制、仿真和调试。
2. 学生能够运用逻辑电路知识,设计并实现数字时钟的基本功能,如时、分、秒显示。
3. 学生能够通过团队合作,解决数字时钟设计过程中遇到的问题。
情感态度价值观目标:1. 学生培养对电子设计技术的兴趣,提高创新意识和动手能力。
2. 学生在学习过程中,养成积极思考、主动探究的良好习惯。
3. 学生通过团队合作,培养沟通协作能力和集体荣誉感。
课程性质:本课程为实践性课程,以学生动手实践为主,注重培养学生的实际操作能力和创新能力。
学生特点:本课程面向初中生,学生对电子技术有一定了解,具备基本的逻辑思维能力,但实际操作能力有待提高。
教学要求:教师应结合学生特点,采用任务驱动法、分组合作法等教学方法,引导学生主动参与,确保课程目标的实现。
同时,注重过程评价和成果评价,全面评估学生的学习成果。
二、教学内容本章节教学内容依据课程目标,紧密结合教材,确保科学性和系统性。
具体内容包括:1. 数字时钟基础知识:介绍数字时钟的原理、组成及功能,对应教材第3章“数字电路基础”。
- 时钟信号产生- 计数器原理- 显示技术2. EDA软件应用:学习EDA软件的使用方法,绘制数字时钟电路图,对应教材第5章“EDA技术及其应用”。
- EDA软件操作- 电路图绘制- 电路仿真与调试3. 数字时钟电路设计:运用逻辑电路知识,设计数字时钟电路,对应教材第4章“组合逻辑电路”。
- 逻辑门电路- 时钟分频器设计- 计数器设计- 显示控制电路4. 数字时钟制作与调试:分组合作,动手实践,完成数字时钟的制作与调试,对应教材第6章“数字电路实践”。
一、设计任务及要求1、设计内容选用合适的可编程逻辑器件及外围电子元器件,设计一个数字电子钟,利用EDA 软件(QUARTUS Ⅱ)进行编译及仿真,设计输入采用Verilog HDL硬件描述语言输入法,并下载到EDA实验箱系统,连接外围电路,完成实际测试。
2、设计要求(1)具有时、分、秒计数显示功能,该电子钟正常显示小时、分钟、秒,各用2位数码管(共6位数码管),显示范围为0—23时59分59秒。
(2)具有复位清零的功能,且能够对计时系统的小时、分钟进行调整。
(3)定时响铃功能,设计计时到01分10秒后蜂鸣器开始响,持续时间10秒。
二、设计思想对于数字钟来说首先是时分秒的计数功能,然后能显示,附带功能是清零、调整时分,拟定如下方案:计时校正模块中,用1Hz时钟送入秒脉冲信号,“秒计数器”采用60进制,每累计60秒,发出一个“分脉冲”信号,该信号将被送到“分计数器”。
“分计数器”采用60进制计数器,每累计60分,发出一个“分脉冲”信号,该信号被送到“时计数器”。
“时计数器”采用24进制,可实现24小时的累计计数,时钟使用三个输入按键K1、K2、K3,分别控制数字钟的校时、校分、清零,每次分别按下K1、K2按键,对应的时、分计数就加1,按下K3,时间清零。
显示模块中,分别用六个八位数码管显示时钟的时十位、时个位、分十位、分个位、秒十位、秒个位,设置一个时钟脉冲用于扫描数码管显示。
最后的定时响铃功能,本报告设计为计时到01分10秒开始驱动蜂鸣器响,持续十秒。
三、程序清单Verilog HDL源程序:module clock(clk1,clk2,dx,wei,k1,k2,rst,led);input clk1,clk2,k1,k2,rst;output [2:0] wei;output [7:0] dx;output led;reg led;reg [2:0] wei;reg [7:0] dx;reg [7:0] as,ts,am,tm,ah,th,xs;reg [7:0] q;always @(posedge clk1 or posedge rst)beginif(rst){as,ts,xs,am,tm,xs,ah,th}<=8'b00000000; else if(k1)beginif(ah==8'b00001001)beginah=8'b00000000;th=th+8'b00000001;endelse if(ah==8'b00000011&&th==8'b00000010) beginth=8'b00000000;ah=8'b00000000;endelse ah=ah+8'b00000001;endelse if(k2)beginif(am==8'b00001001)beginam=8'b00000000;if(tm==8'b00000101)tm=8'b00000000;else tm=tm+8'b00000001;endelse am=am+8'b00000001;endelse if(as==8'b00001001)beginas=8'b00000000;if (ts==8'b00000101) begints=8'b00000000;if(am==8'b00001001)beginam=8'b00000000;if(tm==8'b00000101)begintm=8'b00000000;if(ah==8'b00001001)beginah=8'b00000000;th=th+8'b00000001;endelseif(ah==8'b00000011&&th==8'b00000010)beginth=8'b00000000;ah=8'b00000000;endelse ah=ah+8'b00000001;endelse tm=tm+8'b00000001;endelse am=am+8'b00000001;end else ts=ts+8'b00000001; endelse as=as+8'b00000001;endalways @(posedge clk2)beginif(wei==3'b111)wei<=3'b000;else wei<=wei+3'b001;endalways @(q or wei or k1)beginif(wei==3'b000)q<=as;else if(wei==3'b001)q<=ts;else if(wei==3'b010)q<=8'b11111111;else if(wei==3'b011)q<=am;else if(wei==3'b100)q<=tm;else if(wei==3'b101)q<=8'b11111111;else if(wei==3'b110)q<=ah;else if(wei==3'b111)q<=th;case(q)0:dx<=8'b11111100;1:dx<=8'b01100000;2:dx<=8'b11011010;3:dx<=8'b11110010;4:dx<=8'b01100110;5:dx<=8'b10110110;6:dx<=8'b10111110;7:dx<=8'b11100000;8:dx<=8'b11111110;9:dx<=8'b11110110;default dx<=8'b00000010;endcaseendalways @(posedge clk1)beginled=1;if(ts==8'b00000001&&am==8'b00000001&&tm==8'b00000000&&ah= =8'b00000000&&th==8'b00000000)led=~led;elseif(as==8'b00000000&&ts==8'b00000010&&am==8'b00000001&&tm= =8'b00000000&&ah==8'b00000000&&th==8'b00000000) led=0;endendmodule四、调试及总结1.仿真波形图2.总结通过此次课程设计,让我对EDA这门技术有了更深的体会,并更好的学会了使用QuartusⅡ软件进行硬件设计。
eda课程设计数字时钟设计一、教学目标本课程旨在通过数字时钟设计项目,让学生掌握EDA(电子设计自动化)工具的基本使用,理解数字电路的设计原理,培养学生的动手实践能力和创新能力。
具体目标如下:1.知识目标:•掌握数字电路的基本概念和设计方法。
•学习常用的EDA工具,如Multisim、Proteus等,并能够运用它们进行数字电路的设计和仿真。
•了解时钟信号的产生和应用,理解RTC(实时时钟)的工作原理。
2.技能目标:•能够运用EDA工具设计简单的数字时钟电路。
•能够进行电路仿真,调试并优化设计。
•学会阅读和理解电子电路图,培养良好的电子工程实践能力。
3.情感态度价值观目标:•培养学生对电子科技的兴趣,增强其科技意识。
•培养学生团队协作精神和自主学习能力。
•培养学生解决问题的能力,增强其面对挑战的信心。
二、教学内容本课程的教学内容主要包括数字电路基础、EDA工具的使用、数字时钟设计原理和RTC的应用。
具体安排如下:1.数字电路基础:•数字逻辑门电路•组合逻辑电路•时序逻辑电路2.EDA工具的使用:•Multisim和Proteus的基本操作•数字电路图的绘制和仿真3.数字时钟设计原理:•常见的时钟信号生成电路•数字时钟电路的设计方法4.RTC的应用:•RTC的工作原理•RTC在数字时钟中的应用三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式,包括:1.讲授法:用于讲解数字电路基础和EDA工具的使用方法。
2.案例分析法:通过分析具体的数字时钟设计案例,让学生理解数字时钟的设计过程。
3.实验法:让学生动手实践,使用EDA工具进行数字时钟的设计和仿真。
四、教学资源为了支持教学,我们将准备以下教学资源:1.教材:选用《数字电路与EDA技术》作为主要教材。
2.参考书:提供《EDA技术教程》等参考书籍,供学生课后自主学习。
3.多媒体资料:制作课件和教学视频,用于课堂讲解和课后复习。
4.实验设备:提供计算机、EDA工具软件、电路仿真实验板等,供学生进行实验和实践。
EDA 课程设计报告书数字钟设计设计者指导老师:学号:专业班级: XXXXXXXXX 学院 201X.X.XX目录1. 摘要,关键字...............................................................3 2. 正文 (3)2.1设计任务及要求............................................................3 2.2方案选择与论证............................................................3 2.3方案的原理框图及其说明...................................................4 2.4硬件选择.....................................................................4 2.5系统设计详述...............................................................4 2.6系统仿真及分析............................................................ 6 2.7下载测试及分析............................................................9 2.8收获体会、存在问题和进一步的改进意见等 (10)3. 参考文献 (10)VHDL 语言实现数字电子钟的设计作者:xxx 指导老师:xxx (xx 大学xxxx 学院 xxx xxxx )[摘要]:随着基于PLD 的EDA 技术的发展和应用领域的扩大与深入,EDA 技术在电子信息、通信、自动控制及计算机应用等领域的重要性日益突出。
EDA数字钟设计目录1.设计思路 (3)1.1总体结构 (3)2.方案论证与选择 (3)2.1.数字钟方案论证与选择 (3)3.单元模块设计部分 (3)6模块的设计 (3)3.2.SEL61模块的设计 (4)3.3.DISP模块的设计 (5)3.4.K4模块的设计 (6)T10模块的设计 (6)T6模块的设计 (7)T101模块的设计 (8)T61模块的设计 (9)3.4.5 CNT23模块的设计 (10)4.系统仿真 (11)4.1.数字钟仿真图 (11)4.2.数字钟编译报告 (12)4.3.数字钟原理图 (12)vEDA数字钟设计中文摘要:数字钟学习的目的是掌握各类计数器及它们相连的设计方法;掌握多个数码管显示的原理与方法;掌握FPGA技术的层次化设计方法;掌握用VHDL语言的设计思想以及整个数字系统的设计。
此数字钟具有时,分,秒计数显示功能,以24小时为计数循环;能实现清零,调节小时,分钟以及整点报时的功能。
关键词:数字钟,计数器,数码管,FPGA,VHDL1.设计思路基于VHDL语言,用Top_Down的思想进行设计。
1.1 确定总体结构,如图1-1所示。
图1-12. 方案论证与选择2.1 数字钟方案论证与选择:方案一是用CN6无进位六进制计数器选择数码管的亮灭以及对应的数,循环扫描显示,用SEL61六选一选择器选择给定的信号输出对应的数送到七段码译码器。
K4模块进行复位,设置小时和分,输出整点报时信号和时,分,秒信号。
作品中选方案二。
方案二也采用自顶向下的设计方法,它由秒计数模块,分计数模块,小时计数模块,报警模块,秒分时设置模块和译码模块六部分组成。
两者设计方式,功能实现方面都差不多,作品中选择的是方案一。
3. 单元模块设计部分单元模块设计部分分四个部分,介绍数字钟选择显示数码管和对应的数模块CN6,信号选择模块SEL61,七段码译码器模块DISP和复位,秒,分,时显示,设置模块。
湖北大学物电学院EDA课程设计报告(论文)题目:多功能数字钟设计专业班级: 14微电子科学与工程*名:**时间:2016年12月20日指导教师:万美琳卢仕完成日期:2015年12月20日多功能数字钟设计任务书1.设计目的与要求了解多功能数字钟的工作原理,加深利用EDA技术实现数字系统的理解2.设计内容1,能正常走时,时分秒各占2个数码管,时分秒之间用小时个位和分钟个位所在数码管的小数点隔开;2,能用按键调时调分;3,能整点报时,到达整点时,蜂鸣器响一秒;4,拓展功能:秒表,闹钟,闹钟可调3.编写设计报告写出设计的全过程,附上有关资料和图纸,有心得体会。
4.答辩在规定时间内,完成叙述并回答问题。
目录(四号仿宋_GB2312加粗居中)(空一行)1 引言 (1)2 总体设计方案 (1)2.1 设计思路 (1)2.2总体设计框图 (2)3设计原理分析 (3)3.1分频器 (4)3.2计时器和时间调节 (4)3.3秒表模块 (5)3.4状态机模块 (6)3.5数码管显示模块 (7)3.6顶层模块 (8)3.7管脚绑定和顶层原理图 (9)4 总结与体会 (11)多功能电子表摘要:本EDA课程主要利用QuartusII软件Verilog语言的基本运用设计一个多功能数字钟,进行试验设计和软件仿真调试,分别实现时分秒计时,闹钟闹铃,时分手动较时,时分秒清零,时间保持和整点报时等多种基本功能关键词:Verilog语言,多功能数字钟,数码管显示;1 引言QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL 以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程,解决了传统硬件电路连线麻烦,出错率高且不易修改,很难控制成本的缺点。
利用软件电路设计连线方便,修改容易;电路结构清楚,功能一目了然2 总体设计方案2.1 设计思路根据系统设计的要求,系统设计采用自顶层向下的设计方法,由时钟分频部分,计时部分,按键调时部分,数码管显示部分,蜂鸣器四部分组成。
课程设计任务书学生:董勇涛专业班级:电子科学与技术0902班指导教师:梁小宇工作单位:信息工程学院题目: 数字钟设计目的:1、掌握在QuartusⅡ软件的使用方法,并能熟练的在QuartusⅡ环境中运用VHDL 语言完成一些简单程序的设计;2、掌握数字钟的主要功能与在FPGA中的实现方法。
要求完成的主要任务:1、课程设计工作量:1周。
2、技术要求:(1)设计一个6位LED动态扫描显示的数字钟,根据一个控制键能选择显示时、分、秒或年、月、日;(2)通过拨码开关可以进行时、分、年、月、日的调整,可以实现翻屏;3、查阅至少5篇参考文献。
按《理工大学课程设计工作规》要求撰写设计报告书。
全文用A4纸打印,图纸应符合绘图规。
时间安排:1、2012 年6 月11日集中,作课设具体实施计划与课程设计报告格式的要求说明。
2、2012 年6 月12日至2012 年6 月15日查阅相关资料,学习电路的工作原理。
3、2012 年6 月17 日至2012 年 6 月19 日,方案选择和电路设计。
4、2012 年6 月20 日至2012 年 6 月21 日,电路调试和设计说明书撰写。
5、2011 年6 月22日上交课程设计成果及报告,同时进行答辩。
指导教师签名:年月日系主任(或责任教师)签名:年月日目录摘要 (I)Abstract (II)1 绪论 (1)2 设计容及要求 (1)2.1设计目的及主要任务 (1)2.1.1设计目的 (1)2.1.2 设计任务及要求 (1)2.2设计思想 (2)3 数字钟的设计 (4)3.1 设计原理与方法 (4)3.2 单元模块设计 (4)3.2.1 分频计模块设计 (4)3.2.2 消抖电路模块设计 (5)3.2.3 计数器模块设计 (5)3.2.4 闹钟及蜂鸣器设计 (7)3.2.5 多路复用器模块设计 (8)3.2.6 八段译码模块设计 (8)3.3 数字钟设计总原理图 (8)4 编译报告 (8)4.1 设计原理与方法 (8)5 电路仿真与硬件调试 (9)5.1 电路仿真 (9)5.2 硬件调试 (10)6 总结与心得体会 (10)参考文献 (11)附录 (12)摘要EDA技术在进入21世纪后,得到了更大的发展。
在仿真和设计两方面支持标准硬件描述语言的功能越来越强大,软硬件技术也进一步得到了融合,在电子行业的产业领域、技术领域和设计应用领域得到了进一步的肯定,使得复杂电子系统的设计和验证趋于简单化。
[1]本设计是通过Quartus Ⅱ软件、VHDL语言编程及FPGA芯片来实现常见的数字钟,该数字钟可以根据一个控制键能选择显示时、分、秒或年、月、日。
本设计中用8位LED 数码管显示时、分和秒,年、月、日,同时可以通过按键调整时、分、及对秒进行清零。
关键词:Quartus Ⅱ;VHDL;数字钟;AbstractEDA technology in the 21 century has achieved great success. In the simulation and design two aspects of hardware description language support standard function more and more powerful, software and hardware technology also further got fusion, in the electronics industry industry field, technology and design application field has been further sure, making complex electronic system design and validation tend to be simple.[1]The design is by Quartus Ⅱ software, VHDL language programming and CPLD chip to achieve a common digital clock, the digital clock according to a control keys can choose to display hours, minutes and seconds or year, month, day, and can display scroll off. This design using 6 LED digital tube display hours, minutes and seconds, but with the 8-bit LED digital tube display year, month, day, at the same time can be adjusted through the DIP switches hour, minute, year, month and day, and on the seconds to Clear.Keywords:Quartus Ⅱ;VHDL;Digital Clock;1 绪论FPGA(现场可编程门阵列)和CPLD(复杂可编程逻辑器件)都是可编程逻辑器件,他们是在PAL,GAL等逻辑器件的基础上发展起来的。
同以往的PAL,GAL相比较,FPGA/CPLD的规模比较大,它可以替代几十甚至几千块通用IC芯片。
这样的FPGA/CPLD实际上就是一个子系统部件。
比较典型的就是Altera公司和Xilinx公司的CPLD器件系列和FPGA器件系列,他们开发较早,占用了较大的PLD市场。
[2]本设计是通过对数字钟个组要组成部分的VHDL源程序编程和顶层文件的生成来实现的。
在本设计中数字钟的主要组成部分有拨码开关模块、按键修改模块,计数器模块、分频计模块、七段译码器模块和数据选择器模块。
通过按键可以实现选择显示时、分、秒或年、月、日,同时可以显示翻屏,还可以通过按键调整时、分及对秒进行清零。
2 设计容及要求2.1设计目的及主要任务2.1.1设计目的(1)初步掌握Quartus软件的使用方法,提高运用硬件描述语言VHDL的能力,初步了解时序电路的设计。
(2)利用对生活中熟悉的电子表,用语言设计相似功能的数字钟。
2.1.2 设计任务及要求完成以下基本要求及进行提高:(1)设计一个6位LED动态扫描显示的数字钟,根据一个控制键能选择显示时、分、秒或年、月、日;(2)通过按键可以进行时、分、年、月、日的调整,可以实现翻屏;(3)可以设置闹钟时间及整点报时,闹铃蜂鸣器频率为1000Hz,整点报时频率为2000Hz;(4)具有定时翻屏功能,每隔54s,显示一次年月日;(5)运用图形设计方法完成顶层原理图的设计。
2.2设计思想本次设计中根据数字钟的工作原理首先进行计数器的设计,其中包括分秒60进制计数器、时24进制计数器、日30进制计数器、月12进制计数器和年10进制计数器,然后根据要求设置一个6选1的数据选择器并且通过控制键实现选择显示时、分、秒或年、月、日,最后再设置3个按键调整数字钟,并且通过一个七段译码器和8进制计数器控制七段数码管实现显示。
3 数字钟的设计3.1 设计原理与方法数字电子钟由振荡器、分频器计数器、译码显示、报时等电路组成。
振荡器产生稳定的高频脉冲信号,作为数字钟的时间基准,然后经过分频器输出标准秒脉冲。
秒计数器满60后向分计数器进位,分计数器满60后向小时计数器进位,小时计数器按照“24翻1”规律计数。
计满后各计数器清零,重新计数。
计数器的输出分别经译码器送数码管显示,计时出现误差时,可以用校时电路“校时”“校分”“清零”。
秒脉冲可以通过分频电路得到。
通过报时设计模块可以实现整点报时及定时闹铃,译码显示由七段译码器完成,显示由数码管构成,采用的是动态显示方式。
数码管动态显示:动态扫描电路将计数器输出的8421BGD码转换为数码管需要的逻辑状态,并且输出数码管的片选信号和为选信号。
所谓动态扫描显示方式是在显示某一位LED 显示块的数据的时候,让其它位不显示,然后再显示下一位的数据。
只要保证每一位显示的时间间隔不要太大,利用人眼的视觉暂留的现象,就可以造成各位数据同时显示的假象。
一般每一位的显示时间为1~10ms。
[3]3.2 单元模块设计3.2.1 分频器模块设计根据设计要求,需要将开发板的50MHZ信号分出1HZ和1KHZ共2种时钟信号,1HZ脉冲信号用来提供计数模块的时钟信号——在1HZ的脉冲下,每隔一秒,秒自加一次,1KHZ脉冲信号用来提供消抖电路的时钟信号,cnt用于数码管扫描。
完成程序后可以创建原理图元件,其元件符号如图3-1 所示。
图3-1 分频器3.2.2 按键消抖电路模块通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,电压信号并不稳定,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。
[4]因而在闭合及断开的瞬间均有一连串的抖动,抖动的时间的长短有按键的机械特性决定,一般为5ms~10ms。
完成程序后可以创建元件,其元件符号如图3-2 所示。
图3-2 消抖电路3.2.3 计数器模块设计计数器模块主要由秒60进制计数模块、分60进制计数模块、时24进制计数模块、日30进制计数模块、月12进制计数模块、年计数模块和8进制计数器。
下图3-3 是将60进制计数模块、分60进制计数模块、时24进制计数模块融合为一个模块。
图3-3 时钟电路秒60进制计数模块的时钟信号为1HZ的脉冲信号,每计数到59便会产生一次进位作为分60进制计数模块的时钟信号,该模块加入一个清零端,当CS为1时,秒计数模块中的个位和十位同时为零,当CS为1时正常计数.分60进制计数模块的时钟信号为秒计数模块的进位信号,其通过一个增加键CM对其调整。
时24进制计数模块的时钟信号为分计数模块的进位信号,其通过一个增加键CH对其调整。
其中UP,CHANGE信号说明如下,当UP 信号为高时时,表示数码管翻屏了,即显示年月日的时间为6ms。
UP信号为低电平时,显示时分秒。
在UP有效时,CHANGE为低电平,所有数码管上部分熄灭,下部分显示年月日的下半部分,CHANGE为高电平时,正常显示年月日部分,直到UP 为低。
[5]日30进制计数模块的时钟信号为时计数模块的进位信号,其通过一个置数端load对其调整。
日30进制计数器的VHDL程序如附录所示,完成程序后可以创建元件,其元件符号如图3-4所示。
图3-4 日30进制计数器月12进制计数模块的时钟信号为日计数模块的进位信号,其通过一个置数端对其调整。