EDA数字时钟课程设计

合集下载

eda课程设计5篇[修改版]

eda课程设计5篇[修改版]

第一篇:eda课程设计数字钟一、设计要求设计一个数字钟,具体要求如下:1、具有时、分、秒计数显示功能,以24小时循环计时。

2、具有清零、校时、校分功能。

3、具有整点蜂鸣器报时以及LED花样显示功能。

二、设计方案根据设计要求,数字钟的结构如图8-3所示,包括:时hour、分minute、秒second计数模块,显示控制模块sel_clock,七段译码模块deled,报时模块alert。

三、VHDL程序library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; useIEEE.STD_LOGIC_UNSIGNED.ALL;---- Uncomment the following library declaration if instantiating ---- any Xilinx primitives in this code. --library UNISIM;--use UNISIM.VComponents.all;entityddz is port(rst,clk: in std_logic; hour_h: out std_logic_vector( 6 downto 0); hour_l: outstd_logic_vector( 6 downto 0); min_h: out std_logic_vector( 6 downto 0);min_l: out std_logic_vector( 6 downto 0);sec_h: out std_logic_vector( 6 downto 0);sec_l: out std_logic_vector( 6 downto 0)); endddz;architecture Behavioral of ddz is signalcnt: std_logic_vector(15 downto 0); signalsec_h_in: std_logic_vector( 3 downto 0); signalsec_l_in: std_logic_vector( 3 downto 0); signalmin_h_in: std_logic_vector( 3 downto 0); signalmin_l_in: std_logic_vector( 3 downto 0); signalhour_h_in: std_logic_vector(3 downto 0); signalhour_l_in: std_logic_vector(3 downto 0);signalclk_s,clk_m,clk_h: std_logic; begin process(rst,clk) begin if rst='0' then sec_h_in'0');sec_l_in'0');clk_msec_l_inifsec_h_in=5 thensec_h_inclk_melsesec_h_inclk_mend if; else sec_l_inclk_mend if; end if; end process;process(rst,clk_m) begin if rst='0' then-- min_h_in'0');min_l_in'0'); -- clk_hmin_l_inmin_h_inclk_mend if; else min_l_inend if; end if; end process;process(rst,clk_n) begin if rst='0' then-- hour_h_in'0');hour_l_in'0'); -- clk_hhour_l_inhour_h_inclk_nend if; else hour_l_inend if; end if; end process;process(sec_l_in) begin casesec_l_in iswhen "0000" =>sec_lsec_lsec_lsec_lsec_lsec_lsec_lsec_lsec_lsec_lsec_lprocess(sec_h_in) begin casesec_h_in iswhen "0000" =>sec_hsec_hsec_hsec_hsec_hsec_hsec_hsec_hsec_hsec_hsec_hprocess(min_l_in) begin casemin_l_in iswhen "0000" =>min_lmin_lmin_lwhen "0011" =>min_lmin_lmin_lmin_lmin_lmin_lmin_lmin_lprocess(min_h_in) begin casemin_h_in iswhen "0000" =>min_hmin _h min _hmin _hmin _h min _hmin _hmin _hmin _hmin _hmin _hend case; end process;process(hour_l_in) begin casehour_l_in iswhen "0000" =>hour_lhour_lhour_lhour_lhour_lhour_lhour_lhour_lhour_lhour_lhour_lprocess(hour_h_in) begin casehour_h_in iswhen "0000" =>hour_hhour_hhour_hhour_h hour _h hour _h hour _h hour _h hour _hhour_h hour _h四、VHDL仿真结果五、课程设计心得通过这次课程设计,有效得巩固了课本所学的知识,而且通过上机仿真不断发现问题并及时改正,加深了我们对该课程设计的印象。

eda数字时钟课程设计论文

eda数字时钟课程设计论文

eda数字时钟课程设计论文一、课程目标知识目标:1. 理解数字时钟的基本原理,掌握EDA工具的使用方法。

2. 学习数字时钟设计的基本流程,包括时钟信号生成、分频、计数等模块的设计与实现。

3. 了解数字时钟的显示原理,掌握七段显示译码器的应用。

技能目标:1. 培养学生运用所学知识进行数字电路设计的能力。

2. 培养学生运用EDA工具进行电路仿真、调试的能力。

3. 培养学生团队协作、沟通表达的能力。

情感态度价值观目标:1. 激发学生对电子设计的兴趣,培养创新意识和动手能力。

2. 培养学生严谨的科学态度,注重实验数据的真实性。

3. 增强学生的自信心,勇于面对和解决问题。

本课程针对高年级学生,结合学科特点和教学要求,将目标分解为具体的学习成果。

课程性质为实践性较强的设计课,注重培养学生的实际操作能力和团队合作精神。

通过本课程的学习,学生能够掌握数字时钟设计的基本方法,提高电子设计能力,培养良好的情感态度价值观。

二、教学内容本课程教学内容主要包括以下三个方面:1. 数字时钟原理及设计流程- 了解数字时钟的基本原理,包括时钟信号、分频器、计数器等组成部分。

- 学习数字时钟设计的基本流程,结合教材相关章节,进行实例分析。

2. EDA工具的使用- 介绍EDA工具的基本功能,如原理图绘制、仿真、PCB设计等。

- 结合教材,学习使用EDA工具进行数字时钟电路的设计与仿真。

3. 数字时钟电路设计与实现- 分析并设计数字时钟的各个功能模块,如时钟信号生成、分频、计数、显示等。

- 结合教材章节,进行具体电路设计,列举所需元器件及参数。

教学进度安排如下:1. 第一周:数字时钟原理及设计流程学习。

2. 第二周:EDA工具的使用方法及操作练习。

3. 第三周:数字时钟电路设计与实现,包括各功能模块设计和整体调试。

教学内容注重科学性和系统性,结合教材章节,使学生能够循序渐进地掌握数字时钟的设计方法。

同时,通过实践操作,提高学生的动手能力和实际应用能力。

edal数字钟课程设计

edal数字钟课程设计

edal数字钟课程设计一、课程目标知识目标:1. 学生能够理解数字时钟的基本原理,掌握edal数字钟的组成和功能。

2. 学生能够运用所学知识,分析并解释edal数字钟显示时间的原理。

3. 学生能够掌握数字时钟的编程方法,实现edal数字钟的基本功能。

技能目标:1. 学生能够运用所学知识,设计并搭建简单的edal数字钟电路。

2. 学生能够通过编程,实现edal数字钟的显示、校时和闹钟功能。

3. 学生能够运用问题解决策略,调试并优化edal数字钟的程序。

情感态度价值观目标:1. 培养学生对电子技术和编程的兴趣,激发他们探索未知领域的热情。

2. 培养学生的团队合作意识,学会在小组合作中互相学习、共同进步。

3. 培养学生严谨、细心的科学态度,养成认真观察、思考问题的习惯。

课程性质:本课程为信息技术与电子技术的融合课程,以项目式教学为主,注重培养学生的实践能力和创新能力。

学生特点:五年级学生具有一定的电子技术基础和编程能力,对新鲜事物充满好奇心,善于动手实践。

教学要求:结合学生特点,采用任务驱动法,引导学生主动探究,注重理论与实践相结合,培养学生解决问题的能力。

通过课程目标的分解,使学生在完成具体任务的过程中,达到预期学习成果,为后续教学设计和评估提供依据。

二、教学内容本章节教学内容主要包括以下三个方面:1. 数字时钟基础知识:- 了解数字时钟的组成,包括时钟芯片、显示屏、电阻、电容等元件。

- 学习数字时钟的工作原理,掌握edal数字钟的基本功能。

2. edal数字钟编程与搭建:- 学习edal数字钟的编程语言和编程方法,掌握基本指令和程序结构。

- 按照教材章节,逐步完成edal数字钟的搭建,包括电路连接、程序编写和功能调试。

教学内容安排如下:- 第一章:数字时钟概述,介绍数字时钟的原理和组成。

- 第二章:edal数字钟编程基础,学习编程语言和基本指令。

- 第三章:edal数字钟电路搭建,学习电路连接和元件使用。

eda数字钟的设计课程设计

eda数字钟的设计课程设计

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课程设计数字闹钟

EDA课程设计数字闹钟一、教学目标本课程旨在通过数字闹钟的设计与实现,让学生掌握EDA(电子设计自动化)的基本原理和方法,培养学生的实践能力和创新精神。

具体目标如下:知识目标:使学生了解数字闹钟的原理和结构,理解时钟芯片的工作原理,掌握EDA工具的使用方法。

技能目标:培养学生使用EDA工具进行数字电路设计的能力,提升学生的编程和调试技能,训练学生的团队协作和沟通能力。

情感态度价值观目标:培养学生对电子科技的兴趣和热情,增强学生解决实际问题的信心和勇气,培养学生负责任的工作态度和良好的团队合作精神。

二、教学内容本课程的教学内容主要包括数字闹钟的原理与设计、时钟芯片的工作原理、EDA工具的使用等。

1.数字闹钟的原理与设计:介绍数字闹钟的工作原理,包括时钟发生器、分频器、计数器等基本组成部分,以及如何实现闹钟功能。

2.时钟芯片的工作原理:讲解时钟芯片的内部结构和工作原理,使学生了解时钟芯片在数字电路中的应用。

3.EDA工具的使用:介绍常用的EDA工具,如Cadence、Altera等,讲解如何使用这些工具进行数字电路设计。

三、教学方法为了提高教学效果,本课程将采用多种教学方法,包括讲授法、案例分析法、实验法等。

1.讲授法:通过讲解数字闹钟的原理、时钟芯片的工作原理以及EDA工具的使用方法,使学生掌握相关知识。

2.案例分析法:分析实际案例,让学生了解数字闹钟设计的过程和注意事项。

3.实验法:让学生动手实践,使用EDA工具设计数字闹钟,提高学生的实践能力。

四、教学资源为了支持教学内容的实施,我们将准备以下教学资源:1.教材:选择合适的教材,如《数字电路与EDA技术》等,为学生提供理论支持。

2.多媒体资料:制作课件、视频等多媒体资料,丰富教学手段,提高学生的学习兴趣。

3.实验设备:准备实验设备,如计算机、EDA工具软件、开发板等,为学生提供实践平台。

4.网络资源:利用网络资源,为学生提供更多的学习资料和实践案例,拓宽学生的视野。

eda课程设计数字钟

eda课程设计数字钟


d: in std_logic_vector(7 downto 0);

fout: out std_logic);

end dvf;

architecture behav of dvf is

signal full: std_logic;

பைடு நூலகம்
begin

p_reg:process(clk)

variable cnt8: std_logic_vector(7 downto 0);
将标准秒信号送入“秒计数器”,“秒计数器”采 用60进制计数器,每累计60秒发出一个“分脉冲” 信号,该信号将作为“分计数器”的时钟脉冲。 “分计数器”也采用60进制计数器,每累计60分钟, 发出一个“时脉冲”信号,该信号将被送到“时计 数器”。“时计数器”采用24进制计时器,可实现 对一天24小时的累计。每累计24小时,发出一个 “星期脉冲”信号,该信号将被送到“星期计数 器”,“星期计数器” 采用7进制计时器,可实现 对一周7天的累计。工作原理图如图3.1所示。
数字钟的工作原理图
分频器电路
分频器电路将32768HZ的高频方波信号经 32768次分频后得到1Hz的方波信号供秒计数器 进行计数。分频器实际上也就是计数器。本次设 计是运用了CD4060分频器进行分频,分频电路 可提供512HZ和1024HZ的频率,在经CD4027 分频器进行一分频,为此电路输送一秒脉冲。

begin

if clk'event and clk='1' then --检测时钟上升沿

if cnt8= "11111111" then

eda课程设计数字钟实验

eda课程设计数字钟实验

eda课程设计数字钟实验一、课程目标知识目标:1. 学生能够理解数字时钟的基本原理,掌握EDA工具的使用方法,并能够运用Verilog HDL语言描述数字时钟的基本功能。

2. 学生能够掌握数字时钟设计中涉及的计数器、分频器等基本模块的工作原理和设计方法。

3. 学生了解数字时钟系统的层次化设计方法,并能够根据设计需求进行模块划分。

技能目标:1. 学生能够运用所学知识,使用EDA工具设计并实现一个简单的数字时钟,培养动手实践能力。

2. 学生能够通过分析问题、解决问题,培养逻辑思维能力和团队协作能力。

情感态度价值观目标:1. 学生通过实际操作,体验数字电路设计的乐趣,激发对电子信息技术学习的兴趣。

2. 学生在课程学习过程中,培养严谨的科学态度和良好的工程意识,提高对电子产品质量的追求。

3. 学生通过团队合作,培养沟通协作能力,增强团队意识和集体荣誉感。

课程性质:本课程为电子设计自动化(EDA)的实践课程,结合数字电路设计原理,让学生通过实际操作,掌握数字时钟的设计与实现。

学生特点:学生已经具备一定的电子信息技术基础,对数字电路有一定的了解,具备基本的编程能力。

教学要求:注重理论与实践相结合,强调学生的动手实践能力,鼓励学生独立思考和团队协作,培养解决实际问题的能力。

通过本课程的学习,使学生能够将所学知识应用于实际工程项目中,提高学生的综合素质。

二、教学内容本课程教学内容主要包括以下三个方面:1. 数字时钟原理及设计方法- 理解数字时钟的基本原理,包括计时原理、分频原理等。

- 学习数字时钟的模块化设计方法,掌握计数器、分频器等基本模块的设计与实现。

关联教材章节:第五章《数字时钟的设计与应用》2. EDA工具及Verilog HDL语言- 学习EDA工具的使用方法,如Quartus II等。

- 掌握Verilog HDL语言的基本语法和编程技巧,能够使用Verilog描述数字电路。

关联教材章节:第四章《EDA工具与Verilog HDL编程》3. 数字时钟设计与实现- 学习数字时钟的整体设计流程,包括模块划分、代码编写、仿真验证等。

eda课程设计数字钟设计

eda课程设计数字钟设计

eda课程设计数字钟设计一、课程目标知识目标:1. 学生能理解EDA(电子设计自动化)的基本概念,掌握数字钟的基本原理和设计流程。

2. 学生能描述数字钟的各个模块功能,如计时、显示、调整等,并理解它们之间的协同工作方式。

3. 学生掌握Verilog等硬件描述语言的基本语法,能够利用EDA工具进行基本的数字电路设计和仿真。

技能目标:1. 学生能够运用所学知识,使用EDA工具设计简单的数字时钟电路,并进行功能仿真。

2. 学生通过小组合作,培养团队协作能力和问题解决能力,提高工程实践和项目管理的初步技能。

3. 学生能够运用批判性思维分析设计过程中的问题,提出优化方案,并对设计方案进行改进。

情感态度价值观目标:1. 学生通过数字钟的设计实践,培养对电子工程领域的兴趣和探究精神,激发创新意识和创造潜能。

2. 学生在学习过程中,形成严谨的科学态度和良好的工程意识,认识到技术对日常生活的影响。

3. 学生在小组合作中,学会相互尊重和沟通,培养积极向上的团队精神,增强集体荣誉感。

课程性质分析:本课程为实践性较强的电子设计课程,要求学生将理论知识与实际操作相结合,通过动手实践,深化对电子设计自动化原理的理解。

学生特点分析:针对高中年级学生,已有一定的电子基础和逻辑思维能力,对新鲜事物充满好奇心,具备自主学习的能力。

教学要求:课程要求教师通过引导和启发,帮助学生将抽象的理论具体化,通过项目式的教学方法,使学生能够将所学知识应用于实际问题的解决中。

二、教学内容本课程教学内容围绕数字钟设计的全过程,分为以下三个部分:1. 理论知识学习:- 电子设计自动化(EDA)基本概念与原理;- 数字时钟的组成、工作原理及各模块功能;- Verilog硬件描述语言的基本语法及使用方法;- 相关电子元器件的特性和应用。

2. 实践操作部分:- 使用EDA工具(如ModelSim、Quartus等)进行基本操作;- 设计数字钟的各个模块,并进行功能仿真;- 对设计过程中出现的问题进行分析,提出优化方案;- 完成数字钟整体设计与调试。

eda数字电子钟课程设计

eda数字电子钟课程设计

eda数字电子钟课程设计一、课程目标知识目标:1. 让学生理解数字电子时钟的基本原理,掌握EDA技术及其在数字电子时钟中的应用。

2. 使学生掌握数字电子时钟的设计流程,包括硬件设计、软件编程及系统调试。

3. 让学生掌握时钟信号的产生、计数、显示等模块的工作原理和电路设计。

技能目标:1. 培养学生运用EDA工具(如Protel、Multisim等)进行电路设计与仿真测试的能力。

2. 培养学生具备编程和调试数字电子时钟程序的基本技能,提高实际动手操作能力。

3. 培养学生团队协作、沟通表达、问题分析和解决的能力。

情感态度价值观目标:1. 培养学生对电子工程学科的兴趣,激发学生学习热情,形成积极的学习态度。

2. 培养学生具有创新意识和实践精神,鼓励学生勇于尝试,不断优化设计方案。

3. 培养学生关注社会发展,了解电子产品在生活中的应用,提高社会责任感和使命感。

分析课程性质、学生特点和教学要求,本课程目标将分解为以下具体学习成果:1. 学生能够独立完成数字电子时钟的电路设计和程序编写。

2. 学生能够运用EDA工具进行电路仿真测试,分析并解决设计中出现的问题。

3. 学生能够以团队形式进行项目汇报,展示设计成果,接受提问并给予解答。

4. 学生通过课程学习,提升对电子工程的兴趣,树立正确的价值观和人生观。

二、教学内容根据课程目标,本章节教学内容主要包括以下三个方面:1. 数字电子时钟原理及EDA技术概述- 时钟信号的产生与计数原理- 数字电子时钟的组成与工作原理- EDA技术简介及其在数字电子时钟设计中的应用2. 数字电子时钟设计与实现- 硬件设计:时钟信号电路、计数器电路、显示电路等- 软件编程:基于单片机的程序编写,实现时钟功能- 系统调试:电路测试、程序调试及优化3. 教学实践与项目汇报- 实践操作:运用EDA工具进行电路设计与仿真测试- 项目实施:分组进行数字电子时钟设计,培养学生的团队协作能力- 项目汇报:展示设计成果,锻炼学生的沟通表达和问题分析解决能力教学内容安排和进度如下:1. 第一周:数字电子时钟原理及EDA技术概述2. 第二周:硬件设计与软件编程基础3. 第三周:系统调试与优化4. 第四周:实践操作与项目实施5. 第五周:项目汇报与评价教学内容与教材章节关联如下:1. 《电子技术基础》第三章:数字电路基础2. 《单片机原理与应用》第四章:单片机程序设计3. 《EDA技术及应用》第二章:EDA工具使用与电路设计实例三、教学方法针对本章节内容,采用以下多样化的教学方法,以激发学生的学习兴趣和主动性:1. 讲授法:用于对基本原理和概念进行系统讲解,如数字电子时钟的工作原理、EDA技术概述等。

eda课程设计数字钟

eda课程设计数字钟

eda课程设计 数字钟。

一、课程目标知识目标:1. 让学生理解数字时钟的基本原理,掌握数字时钟电路的设计方法。

2. 使学生掌握EDA工具的使用,学会利用工具进行电路设计、仿真和调试。

3. 帮助学生了解数字时钟中各个模块的功能和相互关系。

技能目标:1. 培养学生运用EDA工具进行数字电路设计的能力。

2. 培养学生分析问题、解决问题的能力,能够根据实际需求设计简单的数字时钟电路。

3. 提高学生的动手实践能力,学会使用相关仪器设备进行电路调试。

情感态度价值观目标:1. 激发学生对电子设计的兴趣,培养创新意识和探索精神。

2. 培养学生良好的团队协作精神,学会与他人共同解决问题。

3. 培养学生严谨的科学态度和勤奋刻苦的学习精神。

课程性质:本课程为实践性课程,旨在通过数字时钟电路设计,提高学生的电子设计能力。

学生特点:学生具备一定的电子基础知识,对EDA工具感兴趣,但动手实践能力有待提高。

教学要求:注重理论与实践相结合,充分调动学生的积极性,引导学生主动参与教学活动,提高学生的实践能力。

教学过程中,注重培养学生的团队合作精神和创新能力,为学生的未来发展奠定基础。

通过本课程的学习,使学生能够具备独立设计、制作和调试数字时钟电路的能力。

二、教学内容根据课程目标,本章节教学内容主要包括以下几部分:1. 数字时钟原理:讲解数字时钟的基本原理,分析数字时钟的各个模块功能,如秒脉冲发生器、计数器、显示驱动等。

2. EDA工具使用:介绍EDA工具的基本操作,如原理图绘制、电路仿真、PCB设计等,使学生掌握使用EDA工具进行数字电路设计的方法。

3. 数字时钟电路设计:根据实际需求,制定数字时钟设计方案,包括选择合适的元器件、绘制原理图、编写程序等。

4. 电路仿真与调试:指导学生利用EDA工具进行电路仿真,分析电路性能,优化设计方案;并进行实际电路搭建与调试,培养学生的动手实践能力。

教学大纲安排如下:1. 第一周:数字时钟原理学习,熟悉各个模块功能。

EDA课程设计 数字时钟

EDA课程设计 数字时钟

EDA课程设计报告一·设计任务使用硬件描述语言,在CPLD/FPGA上实现一个多功能数字钟。

二·设计要求除按键、LED、扬声器、时钟信号外,整个数字钟的功能要求在一块芯片上实现。

a)具有时,分,秒,计数显示功能,以24小时循环计时;b)具有时间清零功能;c)具有小时、分钟和秒钟调整功能(个位和十位分开调或合起来调)。

d)具有闹钟功能,能预设闹钟时间,精确到秒。

整个数字钟只设一个时钟输入端口,所需不同频率信号在内部分频实现。

(LED扫描频率设为50Hz以上)。

三·设计方案设计采用模块方式,分别为分频模块:产生1Hz的脉冲作为秒的输入,和产生1kHz的脉冲作为数码管显示的动态扫描。

计时模块:秒模块,分模块,时模块。

闹钟模块,显示模块,控制模块。

四·模块端口设置1. 分频模块输入:clkin : 本实验输入为50MHz晶振输出:clk : 为显示模块及始终调节提供1KHz脉冲clkt: 为计数器模块提供1Hz脉冲2. 计时模块m 是模式按键,当m=0 时,进入计时模式,在计时模式下可以进行时间调整。

num3,num4 产生加速调整时间,当其值为1 时,可以快速调整时间,该调整时间的频率由clk 提供。

counta,count1 是手动调节时间。

Turn 接按键,可以改变当前调节的是小时还是分钟,长按turn 键还可以使秒钟信号清零。

sec1,min1,hour1 输出的是计时的秒,分,时。

3.闹钟模块原理:num1,num2 产生加速调整时间,当其值为1 时,可以快速调整时间,该调整时间的频率由clk 提供。

countb,count2 是手动调节闹钟时间。

amin,ahour 是输出的闹钟的分钟和小时4. 控制模块m 是模式按键,当m=0 时,指当前输出的是计时功能;当m=1 时,指当前调整的是闹钟时间;当m=2 时,指当前调整的是计时时间;当m=3 时,此时turn 按键可用于跑表的暂停与开始。

eda数字钟课程设计

eda数字钟课程设计

eda数字钟课程设计一、课程目标知识目标:1. 让学生掌握EDA技术的基本概念,理解数字钟的原理和设计流程。

2. 学会使用Verilog HDL语言编写简单的数字电路程序,实现数字钟的基本功能。

3. 了解数字钟各模块的功能和相互关系,如分频器、计数器、秒/分/时显示等。

技能目标:1. 培养学生运用所学知识,自主设计并实现简单数字电路的能力。

2. 提高学生动手实践能力,学会使用FPGA/CPLD等开发工具进行数字电路的调试和验证。

3. 培养学生团队协作和沟通能力,能在小组合作中发挥各自优势,共同完成项目任务。

情感态度价值观目标:1. 激发学生对电子设计自动化技术的兴趣,培养其创新意识和探索精神。

2. 培养学生严谨、细致、负责的工作态度,注重实践操作的规范性和安全性。

3. 增强学生的自信心,使其在项目实践中体验到成功的喜悦,培养克服困难的勇气。

课程性质:本课程为电子信息类专业的实践课程,旨在培养学生的实际操作能力和创新能力。

学生特点:学生已经掌握了数字电路和Verilog HDL语言的基本知识,具有一定的编程和实践能力。

教学要求:结合学生特点,注重理论与实践相结合,以项目为导向,引导学生自主探究和合作学习。

通过课程学习,使学生能够独立完成数字钟的设计与实现,提高其综合运用所学知识解决实际问题的能力。

教学过程中,注重分解课程目标为具体的学习成果,以便进行教学设计和评估。

二、教学内容1. 数字钟原理及设计流程:介绍数字钟的基本工作原理,包括时钟信号产生、分频、计数、显示等模块的功能和设计方法。

教材章节:第三章“数字电路设计基础”,第5节“数字时钟设计”2. Verilog HDL语言基础:回顾Verilog HDL的基本语法和结构,强调模块化设计,掌握基本逻辑门、时序逻辑的描述方法。

教材章节:第二章“硬件描述语言Verilog HDL”,第1-4节3. 数字钟各模块设计:- 分频器设计:学习如何实现时钟信号的分频,得到所需的计数脉冲。

EDA课程设计报告数字电子钟

EDA课程设计报告数字电子钟

数字钟一、【课题要求】1.设计一个能显示1/10秒、秒、分、时的12小时数字钟。

2.熟练掌握各种计数器的使用。

3.能用计数器构成十进制、六十进制、十二进制等所需进制的计数器。

4.能用低位的进位输出构成高位的计数脉冲。

<注意>1、时钟源使用频率为0.1HZ的连续脉冲。

2、设置两个按钮,一个供“开始”及“停止”使用,一个供系统“复位”用。

3、时钟显示使用数码管显示。

4、“时显示”部分注意12点后显示1点。

5、注意各部分的关系,由低位到高位逐级设计、调试。

二、【分析与设计】数字钟是计数器的综合应用,数字钟由十分之一秒、秒钟、分钟、时钟组成,十分之一秒由十进制计数器74160组成,秒钟由六十进制计数器构成,分钟由六十进制计数器,时钟由十二进制计数器构成。

该数字钟程序的底层文件主要有六进制计数器模块、六十进制计数器模块和十二进制模块,对各模块进行封装,供顶层文件调用,各模块有VHDL文本设计及原理图设计。

输入端clk是连续脉冲,clrn是高电平系统复位,en是高电平使能端,输出端是十分之一秒位、秒钟个位、秒钟十位、分钟个位、分钟十位、时钟个位、时钟十位,最后由7个数码管显示各位的值。

该数字钟程序的底层文件主要有六进制计数器模块、六十进制计数器模块和十二进制模块,对各模块进行封装,供顶层文件调用,各模块有VHDL 文本设计及原理图设计。

程序框图:十分之一秒 秒钟 分钟 小时三、【程序代码及原理图】 1、六进制计数器VHDL 代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY cout6 ISPORT(clk,en,clrn,load:IN STD_LOGIC;date:IN STD_LOGIC_VECTOR(2 DOWNTO 0); cnt:OUT STD_LOGIC_VECTOR(2 DOWNTO 0); co:OUT STD_LOGIC ); END cout6;ARCHITECTURE behave OF cout6 ISSIGNAL q:STD_LOGIC_VECTOR(2 DOWNTO 0); BEGINco<='1' WHEN((q="101")AND(en='1'))ELSE'0'; PROCESS(en,clk) BEGINIF clrn='0' THEN q<="000";ELSIF(clk'event and clk='1') THENIF load='0' THEN q<=date;ELSIF en='1' THEN q<=q+1;IF(q="101")THEN q<="000";END IF;END IF;END IF;END PROCESS;cnt<=q;END behave;波形仿真:2、六十进制计数器原理图:波形仿真:3、十二进制计数器VHDL代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cout12 ISPORT(clk,clrn,ldn,en:IN STD_LOGIC;ha:IN STD_LOGIC_VECTOR(3 DOWNTO 0); hb:IN STD_LOGIC;qa:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); qb:out STD_LOGIC);END cout12;ARCHITECTURE behav OF cout12 ISSIGNAL q:STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL b:STD_LOGIC;SIGNAL a:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINPROCESS(en,clk)BEGINIF clrn='0' THENq<="0000";ELSIF(clk'event and clk='1') THEN IF ldn='0' THENb<=hb;a<=ha;ELSIF en='1' THENq<=q+1;IF(q="1011")THENq<="0000"; END IF;END IF;END IF;CASE q ISWHEN"0000"=>b<='1';a<="0010"; WHEN"0001"=>b<='0';a<="0001"; WHEN"0010"=>b<='0';a<="0010"; WHEN"0011"=>b<='0';a<="0011"; WHEN"0100"=>b<='0';a<="0100"; WHEN"0101"=>b<='0';a<="0101"; WHEN"0110"=>b<='0';a<="0110"; WHEN"0111"=>b<='0';a<="0111"; WHEN"1000"=>b<='0';a<="1000"; WHEN"1001"=>b<='0';a<="1001"; WHEN"1010"=>b<='1';a<="0000"; WHEN"1011"=>b<='1';a<="0001"; WHEN OTHERS =>NULL;END CASE;END PROCESS;qa<=a;qb<=b;END ARCHITECTURE behav;波形仿真:4、数字钟原理图:波形仿真:四、【结果与测试】根据六进制的波形图判断出六进制的设计正确,实现了0~5的计数,并且在5处产生进位,将六进制进行封装与十进制74160根据原理图设计成六十进制计数器,然后将它进行封装,根据六十进的波仿真图可以看出实现了0~59的计数,并且在59处产生进位,然后将它进行封装。

EDA电子钟多功能数字时钟课程设计(含代码)[优秀]

EDA电子钟多功能数字时钟课程设计(含代码)[优秀]

多功能数字时钟设计说明:1.系统顶层框图:各模块电路功能如下:1.秒计数器、分计数器、时计数器组成最基本的数字钟,其计数输出送7段译码电路由数码管显示.2.基准频率分频器可分频出标准的1HZ频率信号,用于秒计数的时钟信号;分频出4HZ频率信号,用于校时、校分的快速递增信号;分频出64HZ频率信号,用于对按动“校时”,“校分”按键的消除抖动.2.多功能数字钟结构框图:一、系统功能概述已完成功能1.完成时/分/秒的依次显示并正确计数,利用六位数码管显示;2.时/分/秒各段个位满10正确进位,秒/分能做到满60向前进位,有系统时间清零功能;3.定时器:实现整点报时,通过扬声器发出高低报时声音;4.时间设置,也就是手动调时功能:当认为时钟不准确时,可以分别对分/时钟进行调整;5.闹钟:实现分/时闹钟设置,在时钟到达设定时间时通过扬声器响铃.有静音模式.待改进功能:1. 系统没有万年历功能,正在思考设计方法.2. 应添加秒表功能.二、系统组成以及系统各部分的设计1.时计数模块时计数模块就是一个2位10进制计数器,记数到23清零.VHDL的RTL描述如下:----cnt_h.vhdlibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt_h isport(en,clk,clr:in std_logic;dout:out std_logic_vector(7 downto 0);c:out std_logic);end cnt_h;architecture rtl of cnt_h issignal t:std_logic_vector(7 downto 0);beginprocess(en,clk,clr)variable t:std_logic_vector(7 downto 0);beginif en='1' then --异步使能if clk 'event and clk='1' thent:=t+1;if t(3 downto 0)=X"A" then --个位等于10则十位加1t(7 downto 4):=t(7 downto 4)+1;t(3 downto 0):=X"0"; --个位清零end if;if t>X"23" then --大于23清零t:=X"00";end if;end if;if clr='1' then --异步清零t:=X"00";end if;end if;dout<=t;end process;end rtl;时计数器模块仿真波形如下从仿真波形可知,当计数到23时,下一个时钟上升沿到来时就清零了,符合设计要求.时计数模块框图如下2.分及秒计数模块分及秒计数模块也是一个2位10进制计数器,记数到59清零.VHDL的RTL描述如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt_s isport(en,clk,clr:in std_logic;dout:buffer std_logic_vector(7 downto 0);c:out std_logic);end cnt_s;architecture rtl of cnt_s isbeginprocess(en,clk,clr)beginif en='1' thenif clr='1' then --异步清零dout<=X"00";elsif clk 'event and clk='1' thenif dout(3 downto 0)<9 thendout(3 downto 0)<=dout(3 downto 0)+1;c<='0';elsif dout(7 downto 4)<5 thendout(3 downto 0)<=X"0";dout(7 downto 4)<=dout(7 downto 4)+1;elsedout<=X"00";c<='1';end if;end if;else dout<="ZZZZZZZZ";end if;end process;end rtl;分和秒计数器模块仿真波形如下从仿真波形可知,当计数到59时,下一个时钟上升沿到来时就清零了,并且产生进位信号,符合设计要求.分和秒计数模块框图如下3.按键消抖动模块按键消抖动有很多方案,这里选择的是计数消抖,即只当有效电平到来后开始计数,当计数值大于一定值后再输出该有效电平,否则不输出,从而达到消抖目的. VHDL的RTL描述如下:library ieee;use ieee.std_logic_1164.all;entity haoin isport(din,clk:in std_logic;dout:out std_logic); end haoin;architecture rtl of haoin isbeginprocess(din)variable t: integer range 0 to 63:=0;beginif din='1' thenif clk 'event and clk='1'thent:=t+1;if t>10 thendout<='1';t:=t-1;else dout<='0';end if;end if;else dout<='0';t:=0;end if;end process;end rtl;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity ring isport(clk: in std_logic;clk500: in std_logic;clk1k:in std_logic;beep:out std_logic);end ring;architecture rtl of ring isbeginprocess(clk)variable t: std_logic;variable n: integer range 0 to 15:=0;beginif clk 'event and clk='1' thent:=not t;n:=n+1;end if;if t='1' and n<11 thenbeep<=clk500;elsif n=11 thenbeep<=clk1k;else beep<='Z';end if;end process;end rtl;library IEEE;use IEEE.std_logic_1164.all;use IEEE.std_logic_arith.all;use IEEE.std_logic_unsigned.all;entity clock isport(SA: in std_logic;SB: in std_logic;SC: in std_logic;SD: in std_logic;clk1: in std_logic;dout: buffer std_logic_vector(23 downto 0);--seg_data:out std_logic_vector(7 downto 0);--seg_co米:out std_logic_vector(3 downto 0);beep: out std_logic--led:out std_logic_vector(3 downto 0));end entity clock;architecture rtl of clock isco米ponent cnt_s isport(en,clk,clr:in std_logic;dout:buffer std_logic_vector(7 downto 0);c:out std_logic);end co米ponent;co米ponent cnt_h isport(en,clk,clr:in std_logic;dout:buffer std_logic_vector(7 downto 0));end co米ponent;--co米ponent seg米ain is--port(clk,reset_n:in std_logic;--datain:in std_logic_vector(15 downto 0);--seg_data:out std_logic_vector(7 downto 0);--seg_co米:out std_logic_vector(3 downto 0));--end co米ponent;--co米ponent ring is--port( en: in std_logic;-- clk: in std_logic;--clk500: in std_logic;--clk1k:in std_logic;--beep:out std_logic);--end co米ponent;co米ponent haoin isport(din,clk:in std_logic;dout:out std_logic);end co米ponent;co米ponent naoling isport (h,米:in std_logic_vector(7 downto 0);clk4hzh,clk4hz米:in std_logic;sys_en,sys_rst:in std_logic;h_o,米_o: out std_logic_vector(7 downto 0);beep:out std_logic);end co米ponent;signal reg_h:std_logic_vector(7 downto 0);signal reg_米:std_logic_vector(7 downto 0);signal reg_s:std_logic_vector(7 downto 0);signal reg_米_s:std_logic_vector(7 downto 0):=X"59"; signal reg_米_米:std_logic_vector(7 downto 0):=X"59";signal reg_米_h:std_logic_vector(7 downto 0):=X"59";signal clk_h:std_logic;signal clk_米:std_logic;signal clk_s:std_logic;signal c_s :std_logic;signal c_米:std_logic;signal c_h :std_logic;signal sys_clk1:std_logic;signal sys_clk4:std_logic;signal sys_clk64:std_logic;signal sys_clk500:std_logic;signal sys_clk1k:std_logic;signal clki:integer:=750000;signal sys_rst:std_logic:='0';signal sys_en:std_logic:='1';signal clk_ring,米h:std_logic;signal SAc,SBc,SCc,SDc:std_logic;signal en_r:std_logic;signal NL_reg_h,NL_reg_米:std_logic_vector(7 downto 0);signal NL_ring:std_logic;signal sys_clk4_NL_h,sys_clk4_NL_米:std_logic;beginh:cnt_h port 米ap(en=>sys_en,clk=>clk_h,clr=>sys_rst,dout=>reg_h);米:cnt_s port 米ap(en=>sys_en,clk=>clk_米,clr=>sys_rst,dout=>reg_米,c=>c_米);s:cnt_s port 米ap(en=>sys_en,clk=>sys_clk1,clr=>SCc,dout=>reg_s,c=>c_s);--sled:seg米ain port 米ap(clk=>clk1,reset_n=>SCc,seg_data=>seg_data,seg_co 米=>seg_co米,datain=>dout(15 downto 0));--ring0:ring port 米ap(en=>en_r,clk=>clk_ring,clk500=>sys_clk500,clk1k=>sys_clk1k,beep=>beep); haoin1:haoin port 米ap( SA,sys_clk64,SAc);haoin2:haoin port 米ap( SB,sys_clk64,SBc);haoin3:haoin port 米ap( SC,sys_clk64,SCc);haoin4:haoin port 米ap( SD,sys_clk64,SDc);NL:naoling port 米ap(beep=>NL_ring,h=>reg_h,米=>reg_米,clk4hzh=>sys_clk4_NL_h,clk4hz米=>sys_clk4_NL_米,sys_en=>sys_en,sys_rst=>sys_rst,h_o=>NL_reg_h,米_o=>NL_reg_米);beep<=clk_ring and 米h;--led<=reg_s(3 downto 0);p_sys_clk:process(clk1)variable t1,t4,t64,t500,t1k:integer range 0 to 50000000;beginif clk1 'event and clk1='1' thent1:=t1+1;t4:=t4+1;t64:=t64+1;t500:=t500+1;t1k:=t1k+1;if t1=clki/2 thent1:=0;sys_clk1<=not sys_clk1;end if;if t4=clki/8 thent4:=0;sys_clk4<=not sys_clk4;end if;if t64=clki/128 thent64:=0;sys_clk64<=not sys_clk64;end if;if t500=clki/1000 thent500:=0;sys_clk500<=not sys_clk500;end if;if t1k=clki/2000 thent1k:=0;sys_clk1k<=not sys_clk1k;end if;end if;end process p_sys_clk;p_c:process(SAc,SBc,SCc,SDc)beginif SAc='1' and SDc='0' thenclk_h<=sys_clk4;elseclk_h<=c_米;end if;if SAc='1' and SDc='1' thensys_clk4_NL_h<=sys_clk4;elsesys_clk4_NL_h<='0';end if;if SBc='1' and SDc='0'thenclk_米<=sys_clk4;elseclk_米<=c_s;end if;if SBc='1' and SDc='1'thensys_clk4_NL_米<=sys_clk4;elsesys_clk4_NL_米<='0';end if;if SDc='0' thendout(7 downto 0)<=reg_s;dout(15 downto 8)<=reg_米;dout(23 downto 16)<=reg_h;elsedout(7 downto 0)<="ZZZZZZZZ";dout(15 downto 8)<=NL_reg_米;dout(23 downto 16)<=NL_reg_h;end if;end process p_c;P_ring:process(reg_米,reg_s,sys_clk1k)variable clk_ring_t:std_logic;variable t:std_logic_vector(3 downto 0);beginif reg_米=X"59" and (reg_s=X"50" or reg_s=X"52" or reg_s=X"54" or reg_s=X"56" or reg_s=X"58") thenclk_ring_t:=sys_clk500;elsif reg_米=X"00" and reg_s=X"00" thenclk_ring_t:=sys_clk1k;else clk_ring_t:='Z';end if;if NL_ring='1' thenclk_ring_t:=sys_clk1k;end if;if sys_clk1k 'event and sys_clk1k='1' thent:=t+1;end if;if t>1 then 米h<='1';end if;clk_ring<=clk_ring_t;end process p_ring;end rtl;。

eda多功能数字时钟课程设计

eda多功能数字时钟课程设计

eda多功能数字时钟课程设计一、课程目标知识目标:1. 学生能理解数字时钟的基本原理,掌握EDA工具的使用方法,并运用相关电路知识设计多功能数字时钟。

2. 学生能够运用所学知识,分析并解释数字时钟电路中各个部分的功能及其相互关系。

3. 学生了解数字时钟在实际生活中的应用,理解其重要性。

技能目标:1. 学生能够运用EDA工具进行电路设计,具备实际操作能力。

2. 学生通过动手实践,培养解决实际问题的能力,提高创新意识和团队协作能力。

3. 学生能够运用所学知识,对数字时钟电路进行调试和优化。

情感态度价值观目标:1. 学生在学习过程中,培养对电子技术的兴趣,激发创新精神。

2. 学生通过团队合作,学会尊重他人,培养良好的沟通能力和团队精神。

3. 学生认识到科技发展对社会进步的重要性,树立正确的价值观。

课程性质:本课程为实践性较强的课程,结合理论教学,注重培养学生的动手能力和实际操作技能。

学生特点:学生具备一定的电子技术基础知识,对实践操作有较高的兴趣。

教学要求:教师需结合理论教学,指导学生进行实践操作,注重启发式教学,引导学生主动探究,提高学生的综合能力。

在教学过程中,关注学生的学习进度,及时调整教学策略,确保课程目标的实现。

通过课程学习,使学生能够将所学知识应用于实际生活中,提高学生的创新意识和实践能力。

二、教学内容本课程教学内容主要包括以下几部分:1. 数字时钟原理:讲解数字时钟的基本工作原理,包括时钟信号、计数器、显示驱动等组成部分。

2. EDA工具使用:介绍EDA工具的基本操作,如原理图绘制、电路仿真、PCB设计等。

3. 电路设计与实现:指导学生运用EDA工具设计多功能数字时钟电路,包括时钟信号电路、分频器、计数器、显示驱动和按键控制等模块。

4. 电路调试与优化:教授学生如何对设计的数字时钟电路进行调试,找出问题并进行优化。

教学内容与教材关联性如下:1. 《电子技术基础》中关于数字电路的基础知识,为理解数字时钟原理提供理论支持。

eda课程设计数字时钟

eda课程设计数字时钟

eda课程设计 数字时钟一、课程目标知识目标:1. 学生能理解数字时钟的基本概念和原理,掌握数字时钟的组成、功能及使用方法。

2. 学生能够运用所学知识,分析并设计简单的数字时钟电路。

3. 学生了解EDA(电子设计自动化)软件在数字时钟设计中的应用。

技能目标:1. 学生能够运用EDA软件完成数字时钟电路的绘制、仿真和调试。

2. 学生能够运用逻辑电路知识,设计并实现数字时钟的基本功能,如时、分、秒显示。

3. 学生能够通过团队合作,解决数字时钟设计过程中遇到的问题。

情感态度价值观目标:1. 学生培养对电子设计技术的兴趣,提高创新意识和动手能力。

2. 学生在学习过程中,养成积极思考、主动探究的良好习惯。

3. 学生通过团队合作,培养沟通协作能力和集体荣誉感。

课程性质:本课程为实践性课程,以学生动手实践为主,注重培养学生的实际操作能力和创新能力。

学生特点:本课程面向初中生,学生对电子技术有一定了解,具备基本的逻辑思维能力,但实际操作能力有待提高。

教学要求:教师应结合学生特点,采用任务驱动法、分组合作法等教学方法,引导学生主动参与,确保课程目标的实现。

同时,注重过程评价和成果评价,全面评估学生的学习成果。

二、教学内容本章节教学内容依据课程目标,紧密结合教材,确保科学性和系统性。

具体内容包括:1. 数字时钟基础知识:介绍数字时钟的原理、组成及功能,对应教材第3章“数字电路基础”。

- 时钟信号产生- 计数器原理- 显示技术2. EDA软件应用:学习EDA软件的使用方法,绘制数字时钟电路图,对应教材第5章“EDA技术及其应用”。

- EDA软件操作- 电路图绘制- 电路仿真与调试3. 数字时钟电路设计:运用逻辑电路知识,设计数字时钟电路,对应教材第4章“组合逻辑电路”。

- 逻辑门电路- 时钟分频器设计- 计数器设计- 显示控制电路4. 数字时钟制作与调试:分组合作,动手实践,完成数字时钟的制作与调试,对应教材第6章“数字电路实践”。

eda课程设计数字时钟设计

eda课程设计数字时钟设计

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课程设计_数字钟

EDA课程设计_数字钟

数字钟一、原理图:二、模块说明:该模块实现分频即将24M时钟源分频为1HZ信号。

该分频器由D触发器和计数器构成,每个D 触发器的输出信号频率为输入信号频率的一半从而实现分频,COUNTER为计数器,配合D触发器进行进一步分频最终达到合适的频率。

对二分频器进行波形仿真为对COUNTER即87计数器仿真为即输入89个时钟脉冲后输出才为一。

对COUNTER1即80计数器仿真为即输入80个时钟脉冲后输出为一。

Second模块实现秒计数为六十进制计数模式,当计数达到59后如再来一个时钟脉冲则进位即分钟加一,秒位清零即为00。

Minute模块实现分计数也为六十进制计数模式,当计数达到59时再来一个脉冲则进位即时钟加一,分位清零即为00。

Hour模块实现时计数为二十四进制计数模式,当计数达到23时再来一个脉冲则复位即为00。

Link模块实现隔离即将分与秒,时与分隔开。

分隔符表现形式为“-”,用了此模块后时钟显示更直观。

Sel_clock模块实现扫描显示即每一瞬间输出的数据为秒的个位或十位,或者为分的个位或十位,或者时的个位或十位。

因该试验增加了一些功能,所以该模块要做相应修改――增加为八位显示。

此时连线时应注意各模块的个位十位接线和分隔符接线。

Deled模块为字符译码模块即将十六进制字符翻译为七段数码管相应段位亮灭从而实现字符译码。

该模块也要作少许修改,如把h"f" =>1,0,0,0,1,1,1;改为了h"f" =>0,0,0,0,0,0,1;这样显示后就起到分隔的作用了。

当然这也不是唯一的修改方法,关键是修改要和你的link模块相匹配。

Alert为整点报时模块,呐叭发声为脉冲激发,不同频率的信号会得到不同音调的声音,如果不停的改变信号频率就会得到一串抑扬顿挫的声音。

对second模块仿真为对minute模块进行仿真为:对hour模块进行仿真:对deled字符译码模块仿真该模块将字符转换成数码管相应的段码以便数码管能显示为人们习惯的字符。

eda课程设计数字时钟调试

eda课程设计数字时钟调试

eda课程设计数字时钟调试一、课程目标知识目标:1. 学生能够理解数字时钟的基本原理,掌握EDA工具进行数字电路设计的基本流程。

2. 学生能够运用数字逻辑设计原理,完成对数字时钟的调试和优化。

3. 学生能够描述数字时钟各个模块的功能和相互关系,如秒脉冲发生器、计数器、译码器等。

技能目标:1. 学生能够运用所学知识,独立完成数字时钟的设计和调试。

2. 学生能够通过EDA工具进行电路仿真,验证设计的正确性和可行性。

3. 学生能够解决在数字时钟调试过程中遇到的问题,提高实际操作能力和问题解决能力。

情感态度价值观目标:1. 培养学生勇于探索、善于合作的精神,增强对电子设计的兴趣和热情。

2. 培养学生严谨的科学态度,注重细节,提高审美观念和产品质量意识。

3. 引导学生关注数字时钟在实际生活中的应用,认识到科技对生活的影响,培养社会责任感和创新意识。

课程性质:本课程为实践性较强的课程,结合理论知识和实际操作,培养学生的动手能力和创新能力。

学生特点:本课程面向高年级学生,学生已具备一定的数字电路基础知识,具有较强的学习能力和独立思考能力。

教学要求:教师需引导学生运用所学知识解决实际问题,注重培养学生的实际操作能力和团队协作能力。

在教学过程中,关注学生的个体差异,提供有针对性的指导,确保课程目标的实现。

通过课程学习,使学生能够将理论知识与实际应用相结合,为未来的电子设计打下坚实基础。

二、教学内容本课程教学内容以数字时钟的设计与调试为核心,结合以下章节内容进行:1. 数字时钟原理及设计流程:讲解数字时钟的基本原理,包括秒脉冲发生器、计数器、译码器等模块的工作原理及相互关系。

分析EDA工具在数字电路设计中的应用,明确设计流程。

2. 数字时钟电路设计:引导学生运用所学知识,使用EDA工具进行数字时钟电路设计,包括各个模块的搭建、连接及参数设置。

3. 数字时钟电路仿真与调试:介绍电路仿真方法,指导学生进行数字时钟电路的仿真验证,找出并解决设计中存在的问题。

EDA数字时钟课程设计

EDA数字时钟课程设计

课程设计报告学生姓名学号班级专业电子信息工程题目数字时钟设计指导教师2014 年 5 月一、任务和设计要求1. 熟悉集成电路的引脚安排。

2. 掌握各芯片的逻辑功能及使用方法。

3. 了解数字钟的组成及工作原理。

4. 熟悉数字钟的设计与制作。

1.设计指标(1)时间以24 小时为一个周期;(2)显示时、分、秒;(3)有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间;(4)计时过程具有报时功能,当时间到达整点前 5 秒进行蜂鸣报时。

2.设计要求(1)画出电路原理图(或仿真电路图);(2)元器件及参数选择;(3)电路仿真与调试二、设计原理设计思路根据系统设计要求,系统设计采用自顶向下设计方法,由时钟分频部分、计时部分、按键部分调时部分和显示部分五个部分组成。

这些模块都放在一个顶层文件中。

1)时钟计数:首先下载程序进行复位清零操作,电子钟从00:00:00计时开始。

sethour可以调整时钟的小时部分, setmin可以调整分钟,步进为1。

由于电子钟的最小计时单位是1s,因此提供给系统的内部的时钟频率应该大于1Hz,这里取100Hz。

CLK端连接外部10Hz的时钟输入信号clk。

对clk进行计数,当clk=10时,秒加1,当秒加到60时,分加1;当分加到60时,时加1;当时加到24时,全部清0,从新计时。

用6位数码管分别显示“时”、“分”、“秒”,通过OUTPUT( 6 DOWNTO 0 )上的信号来点亮指定的LED七段显示数码管。

2)时间设置:手动调节分钟、小时,可以对所设计的时钟任意调时间,这样使数字钟真正具有使用功能。

我们可以通过实验板上的键7和键4进行任意的调整,因为我们用的时钟信号均是1HZ的,所以每LED灯变化一次就来一个脉冲,即计数一次。

3)清零功能:reset为复位键,低电平时实现清零功能,高电平时正常计数。

可以根据我们自己任意时间的复位。

总体结构图三、系统设计1)时、分、秒计时器时计时器为一个24进制计数器,分、秒计时器均为60进制计数器。

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

课程设计报告学生姓名学号班级专业电子信息工程题目数字时钟设计指导教师2011 年11 月一、任务和设计要求1. 熟悉集成电路的引脚安排。

2. 掌握各芯片的逻辑功能及使用方法。

3. 了解数字钟的组成及工作原理。

4. 熟悉数字钟的设计与制作。

1.设计指标(1)时间以24 小时为一个周期;(2)显示时、分、秒;(3)有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间;(4)计时过程具有报时功能,当时间到达整点前 5 秒进行蜂鸣报时。

2.设计要求(1)画出电路原理图(或仿真电路图);(2)元器件及参数选择;(3)电路仿真与调试二、设计原理设计思路根据系统设计要求,系统设计采用自顶向下设计方法,由时钟分频部分、计时部分、按键部分调时部分和显示部分五个部分组成。

这些模块都放在一个顶层文件中。

1)时钟计数:首先下载程序进行复位清零操作,电子钟从00:00:00计时开始。

sethour可以调整时钟的小时部分, setmin可以调整分钟,步进为1。

由于电子钟的最小计时单位是1s,因此提供给系统的内部的时钟频率应该大于1Hz,这里取100Hz。

CLK端连接外部10Hz的时钟输入信号clk。

对clk进行计数,当clk=10时,秒加1,当秒加到60时,分加1;当分加到60时,时加1;当时加到24时,全部清0,从新计时。

用6位数码管分别显示“时”、“分”、“秒”,通过OUTPUT( 6 DOWNTO 0 )上的信号来点亮指定的LED七段显示数码管。

2)时间设置:手动调节分钟、小时,可以对所设计的时钟任意调时间,这样使数字钟真正具有使用功能。

我们可以通过实验板上的键7和键4进行任意的调整,因为我们用的时钟信号均是1HZ的,所以每LED灯变化一次就来一个脉冲,即计数一次。

3)清零功能:reset为复位键,低电平时实现清零功能,高电平时正常计数。

可以根据我们自己任意时间的复位。

总体结构图三、系统设计1)时、分、秒计时器时计时器为一个24进制计数器,分、秒计时器均为60进制计数器。

当秒计时器接受到一个秒脉冲时,秒计数器开始从1计数到60,此时秒显示器将显示00、01、02、 (59)00;每当秒计数器数到00时,就会产生一个脉冲输出送至分计时器,此时分计数器数值在原有基础上加1,其显示器将显示00、01、02、...、59、00;每当分计数器数到00时,就会产生一个脉冲输出送至时计时器,此时时计数器数值在原有基础上加1,其显示器将显示00、01、02、...、23、00。

即当数字钟运行到23点59分59秒时,当秒计时器在接受一个秒脉冲,数字钟将自动显示00点00分00秒。

2)校时电路当开关拨至校时档时,电子钟秒计时工作,通过时、分校时开关分别对时、分进行校对,开关每按1次,与开关对应的时或分计数器加1,当调至需要的时与分时,拨动reset 开关,电子钟从设置的时间开始往后计时。

四、参考程序Alert模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY alert ISPORT(clk:IN STD_LOGIC;dain:IN STD_LOGIC_VECTOR(6 DOWNTO 0);speak:OUT STD_LOGIC;lamp:OUT STD_LOGIC_VECTOR(2 DOWNTO 0)); END alert;ARCHITECTURE fun OF alert ISSIGNAL count:STD_LOGIC_VECTOR(1 DOWNTO 0); SIGNAL count1:STD_LOGIC_VECTOR(1 DOWNTO 0);BEGINspeaker:PROCESS(clk)BEGIN--speak<=count1(1);IF(clk'event and clk='1')THENIF(dain="0000000")THENspeak<=count1(1);IF(count1>="10")THENcount1<="00";--count1为三进制加法计数器ELSEcount1<=count1+1;--speak<=count1(0);END IF ;END IF ;END IF ;END PROCESS speaker;lamper:PROCESS(clk)BEGINIF(rising_edge(clk))THENIF(count<="10")THENIF(count="00")THENlamp<="001";--循环点亮三只灯ELSIF(count="01")THENlamp<="010";ELSIF(count="10")THENlamp<="100";END IF;count<=count+1;ELSEcount<="00";END IF;END IF;END PROCESS lamper;END fun;Hour模块LIBRARY IEEE;use IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY hour ISPORT(clk,reset:IN STD_LOGIC;daout:out STD_LOGIC_VECTOR(5 DOWNTO 0));END ENTITY hour;ARCHITECTURE fun OF hour ISSIGNAL count:STD_LOGIC_VECTOR(5 DOWNTO 0);BEGINdaout<=count;PROCESS(clk,reset)BEGINIF(reset='0')THEN count<="000000"; --若reset=0,则异步清零ELSIF(clk'event and clk='1')THEN --否则,若clk上升沿到IF(count(3 DOWNTO 0)="1001")THEN --若个位计时恰好到"1001"即9IF(count<16#23#)THEN --23进制count<=count+7; --若到23D则elsecount<="000000"; --复0END IF;ELSIF (count<16#23#)THEN --若未到23D,则count进1count<=count+1;ELSE --否则清零count<="000000";END IF; --END IF(count(3 DOWNTO 0)="1001")END IF; --END IF(reset='0')END PROCESS;END fun;Minute模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY minute ISPORT(clk,clk1,reset,sethour:IN STD_LOGIC;enhour:OUT STD_LOGIC;daout:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));END ENTITY minute ;ARCHITECTURE fun OF minute ISSIGNAL count :STD_LOGIC_VECTOR (6 DOWNTO 0);SIGNAL enhour_1, enhour_2: STD_LOGIC; --enmin_1为59分时的进位信号BEGIN --enmin_2由clk调制后的手动调时脉冲信号串daout<=count;enhour_2<= (sethour and clk1); --sethour为手动调时控制信号,高电平有效enhour<= (enhour_1 or enhour_2);PROCESS(clk,reset,sethour)BEGINIF(reset='0') THEN --若reset为0,则异步清零count<="0000000";ELSIF(clk'event and clk='1')THEN --否则,若clk上升沿到IF(count (3 DOWNTO 0) ="1001")THEN--若个位计时恰好到"1001"即9IF(count <16#60#) THEN --又若count小于16#60#,即60IF(count="1011001") THEN--又若已到59Denhour_1<='1'; --则置进位为1count<="0000000"; --count复0ELSEcount<=count+7; --若count未到59D,则加7,即作"加6校正"END IF; --使前面的16#60#的个位转变为8421BCD的容量ELSEcount<="0000000";--count复0(有此句,则对无效状态电路可自启动)END IF; --END IF(count<16#60#)ELSIF (count <16#60#) THENcount<=count+1; --若count<16#60#则count加1enhour_1<='0' after 100 ns; --没有发生进位ELSEcount<="0000000"; --否则,若count不小于16#60# count复0END IF; --END IF(count(3 DOWNTO 0)="1001")END IF; --END IF(reset='0')END process;END fun;Second模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY second ISPORT( clk,reset,setmin:STD_LOGIC;enmin:OUT STD_LOGIC;daout:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));END ENTITY second;ARCHITECTURE fun OF second ISSIGNAL count:STD_LOGIC_VECTOR(6 DOWNTO 0);SIGNAL enmin_1,enmin_2:STD_LOGIC; --enmin_1为59秒时的进位信号BEGIN --enmin_2由clk调制后的手动调分脉冲信号串daout<=count;enmin_2<=(setmin and clk); --setmin为手动调分控制信号,高电平有效enmin<=(enmin_1 or enmin_2); --enmin为向分进位信号PROCESS(clk,reset,setmin)BEGINIF(reset='0')THEN count<="0000000"; --若reset为0,则异步清零ELSIF(clk 'event and clk='1')then --否则,若clk上升沿到IF(count(3 downto 0)="1001")then --若个位计时恰好到"1001"即9IF(count<16#60#)then --又若count小于16#60#,即60HIF(count="1011001")then --又若已到59Denmin_1<='1';count<="0000000";--则置进位为1及count复0 ELSE --未到59Dcount<=count+7; --则加7,而+7=+1+6,即作"加6校正"END IF;ELSE --若count不小于16#60#(即count等于或大于16#60#)count<="0000000"; --count复0END IF; --END IF(count<16#60#)ELSIF(count<16#60#)then --若个位计数未到"1001"则转此句再判count<=count+1; --若count<16#60#则count加1enmin_1<='0'after 100 ns; --没有发生进位ELSE --否则,若count不小于16#60#count<="0000000"; --则count复0END IF; --END IF(count(3 DOWNTO 0)="1001")END IF; --END IF(reset='0')END PROCESS;END fun;五、系统调试与性能分析时基T 产生电路数字钟以其显示时间的直观性、走时准确性作为一种计时工具,数字钟的基本组成部分离不开计数器,在控制逻辑电路的控制下完成预定的各项功能。

相关文档
最新文档