EDA课程设计—秒表

合集下载

EDA秒表实验报告

EDA秒表实验报告

《EDA课程设计——秒表》题目数字秒表学院信息学院专业电子信息工程班级 11电子A姓名朱彦杰学号指导教师凌朝东课题名称秒表完成时间11.28指导教师凌朝东学生姓名朱彦杰班级11电子A总体设计要求和技术要点设计要求:5. 秒表,难度系数0.9要求:计时范围为0∼59 分59 秒,精度为百分之一秒;能同时显示分秒信息(LED 数码管)。

技术要点:1.利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。

该秒表计时范围为0秒~59分59.99秒,显示的最长时间为59分59秒,计时精度为10毫秒以内,具有复位功能。

2.秒表有共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出。

一、系统组成模块连接图和系统框图- 3 -二、模块器件及其程序1、分频模块及其程序本模块实现脉冲分频,本实验使用的EP2C5T144C8的频率计进行50MHz 分频产生100HZ 的脉冲。

LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY fenpin ISPORT ( CLK: IN STD_LOGIC; OUTCLK: out std_logic ); END fenpin;ARCHITECTURE behav OF fenpin IS BEGINPROCESS( CLK )variable cnt:integer range 0 to ; BEGINIF CLK'EVENT AND CLK = '1' THEN if cnt= then cnt:=0; outclk<='1'; elsecnt:=cnt+1;分频器十进制计数器 时钟频率十进制计数器 十进制计数器六进制计数器十进制计数器 六进制计数器输出到LED开始清零outclk<='0';end if;END IF;END PROCESS;END behav;2、十进制程序产生99毫秒、秒的低位、分的低位的功能。

基于EDA的数字秒表课程设计

基于EDA的数字秒表课程设计

基于EDA的数字秒表课程设计一、课程目标知识目标:1. 学生能理解EDA(电子设计自动化)的基本概念,掌握数字秒表的基本原理;2. 学生能描述数字秒表的电路结构,了解各个部分的功能和相互关系;3. 学生能掌握数字秒表设计中所涉及的数字逻辑,如计时、清零、启动/停止等功能的实现。

技能目标:1. 学生能够运用所学知识,使用EDA工具进行数字秒表的电路设计和仿真;2. 学生能够分析并解决数字秒表设计过程中遇到的问题,提高实际操作能力;3. 学生能够通过小组合作,完成数字秒表的调试与优化,提高团队协作能力。

情感态度价值观目标:1. 学生通过本课程的学习,培养对电子设计的兴趣和热情,提高探究精神;2. 学生能够认识到科技发展对日常生活的影响,增强社会责任感和创新意识;3. 学生在小组合作中学会尊重他人意见,培养良好的沟通能力和团队精神。

分析课程性质、学生特点和教学要求,本课程目标将分解为以下具体学习成果:1. 学生能够独立完成数字秒表的电路设计和仿真;2. 学生能够通过小组合作,完成数字秒表的调试与优化,并撰写实验报告;3. 学生能够对课程中所学知识进行总结,以口头或书面的形式进行分享。

二、教学内容本课程教学内容依据课程目标,紧密结合教材,制定以下详细教学大纲:1. 数字电路基础知识回顾- 复习数字逻辑基础,强调触发器、计数器等基本组件的工作原理。

2. EDA工具介绍- 介绍EDA软件的使用方法,如Multisim、Proteus等。

3. 数字秒表的原理与设计- 讲解数字秒表的电路结构,分析各部分功能;- 引导学生理解秒表的计时原理,探讨如何实现启动、停止、清零等功能。

4. 电路设计与仿真- 指导学生使用EDA工具进行数字秒表的电路设计;- 教学过程中,针对设计过程中可能遇到的问题进行讲解和指导。

5. 小组合作调试与优化- 学生分组进行电路调试,优化设计;- 引导学生学会分析问题、解决问题,提高实际操作能力。

EDA课程设计数字秒表设计

EDA课程设计数字秒表设计

目录数字秒表设计性实验任务书 ........................................................ 错误!未定义书签。

一、设计性实验目的 ............................................................... 错误!未定义书签。

二、设计性实验说明 ............................................................... 错误!未定义书签。

三、实验箱给定硬件 ............................................................... 错误!未定义书签。

四、要求 ................................................................................... 错误!未定义书签。

实验报告 .. (3)一、数字秒表顶层设计 (3)二、数字秒表内部设计 (3)1、分频器 (3)2、十进制计数器 (4)3、六进制计数器 (6)4、二十四进制计数器 (7)5、数据选择和数码管选择模块 (8)6、数码管驱动模块: (10)三、数字秒表仿真波形 (11)四、实验总结 (11)数字秒表设计性实验任务书一、设计性实验目的:在MAX-PLUS II软件平台上,熟练运用VHDL硬件描述语言,完成数字时钟的文本输入或原理图输入、编译、综合、仿真,利用EDA实验箱,实现数字秒表的硬件实现。

二、设计性实验说明:1、数字秒表电路主要由:分频器、扫描显示译码器、六十进制计数器(或由十进制计数器与六进制计数器组成),十二进制计数器(或二十四进制计数器)、一百进制计数器电路组成;2、数字秒表显示由小时(十二或二十四进制任选)、分钟(六十进制)、秒(六十进制)、十分之一秒、百分之一秒组成;3、各模块功能:(1)分频器模块:用来产生100Hz计时脉冲;(2)十二或二十四进制计数器模块:对小时进行计数;(3)六十进制计数器模块:对分秒进行计数;(4)六进制计数器模块:分别对分十位和秒十位进行计数;(5)十进制计数器模块:分别对分个位、秒个位、十分之一秒、百分之一秒进行计数;(6)扫描显示译码器模块:完成对7字段数码管/液晶显示的控制;(7)一百进制计数器模块:对十分之一秒和百分之一秒进行计数;三、实验箱给定硬件:1、系统时钟脉冲信号为10MHz;2、CPLD/FPGA芯片型号:EPM7128SLC84-5、EPM1K30TC144-3、EPM1K100QC208-3(根据实验箱上的芯片型号选择);3、8个7字段共阴显示数码管(选用);4、液晶显示器1602(选用);5、拨码开关、按键;四、要求:1、精确显示小时、分钟、秒;2、具有清零、启动、保持功能;3、显示采用数码管显示或液晶显示;实验报告一、数字秒表顶层设计外部输入:启动/停止信号(start);10MHZ的时钟信号(clk);清零信号(clr);外部输出:位选控制信号(sel0、sel1、sel2);7段数码管显示信号(led0、led1、led2、led3、led4、led5、led6、led7);数字秒表顶层原理图二、数字秒表内部设计1、分频器功能:将10MHz的时钟信号转换成100Hz的计时脉冲,使秒表正常工作。

EDA课程设计数字秒表

EDA课程设计数字秒表

课程设计目录第一章:系统设计要求 (3)第二章:实验目的 (3)第三章:实验原理 (3)第四章:系统设计方案 (3)第五章:主要VHDL源程序 (4)1) 十进制计数器的VHDL源程序 (4)2) 六进制计数器的VHDL源程序 (5)3)蜂鸣器的VHDL源程序 (5)4)译码器的VHDL源程序 (6)5)控制选择器的VHDL源程序 (7)6)元原件例化的VHDL源程序 (8)第六章:系统仿真 (10)第七章:系统扩展思路 (11)第八章:设计心得总结 (11)数字秒表的设计一、系统设计要求1.秒表共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便于和显示译码器的连接。

当计时达60分钟后,蜂鸣器鸣响10声。

2.整个秒表还需有一个启动信号和一个归零信号,以便秒表能随意停止及启动。

3.秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器、六进制计数器和报警器组成。

在整个秒表中最关键的是如何获得一个精确的100HZ计时脉冲。

二、实验目的通过本次课设,加深对EDA技术设计的理解,学会用QuartusⅡ工具软件设计基本电路,熟练掌握VHDL语言,为以后工作使用打下坚实的基础。

三、实验原理秒表由于其计时精确,分辨率高(0.01秒),在各种竞技场所得到了广泛的应用。

秒表的工作原理与数字时基本相同,唯一不同的是秒表的计时时钟信号,由于其分辨率为0.01秒,所以整个秒表的工作时钟是在100Hz的时钟信号下完成。

当秒表的计时小于1个小时时,显示的格式是mm-ss-xx(mm表示分钟:0~59;ss表示秒:0~59;xx表示百分之一秒:0~99),当秒表的计时大于或等于一个小时时,显示的和多功能时钟是一样的,就是hh-mm-ss(hh表示小时:0~99),由于秒表的功能和钟表有所不同,所以秒表的hh表示的范围不是0~23,而是0~99,这也是和多功能时钟不一样的地方。

EDA课程设计--基于CPLD的Verilog秒表设计

EDA课程设计--基于CPLD的Verilog秒表设计

EDA课程设计报告题目基于CPLD的Verilog秒表设计姓名学号指导教师二О一一年月日一.设计任务设计一个秒表,要求精度达到0.1秒。

有一个开始计时、一个停止计时、一个复位按键。

晶振为12MHz有源晶振,采用CPLD器件为ALTERA的EPM7064AELC44-10N,采用四位数码管显示。

设计功能:1、四位数码管显示999.9秒。

全部采用十进制,满十进一。

2、精度为0.1秒。

3、开始按键和停止按键在一起,按一次开始再按停止。

4、复位按键进行清零。

二.设计方案秒表设计主要分为两部分:程序部分和硬件部分。

在硬件方面主要用到JTAG接口、数码管、EPM7064AELC44-10N芯片、电阻、按键、三极管、电源、有源晶振、44口的芯片插槽等部分组成!具体电路图及显示效果图片见下页。

电路板的具体管脚连接关系如下:seg0 seg1 seg2 seg3 seg4 seg5 seg6 (小数点seg7没有用到)24 25 26 27 28 29 31时钟GCLK1 43dig0 dig1 dig2 dig334 36 37 39key0 key1 key214 16 17三.设计程序自顶而下,一体化程序设计。

秒表程序主要分为四部分:0.1秒信号产生部分,按键消抖处理部分,数码管动态扫描显示部分,计时处理部分。

其中0.1秒信号产生部分将12MHz的有源时钟信号分频成为10Hz的0.1秒计时信号;按键消抖处理部分将将琴键开关转换为乒乓开关,使开关按下去以后就可以松手,不用长时间的按住不放;数码管动态扫描显示部分,通过计算二进制数和在实验箱上实验大概在12~11位二进制时动态扫描为1ms左右,使数码管显示明显完整清新,不会出现闪烁现象;计时处理部分,开始加入清零功能,是不论开始暂停都可以被清零功能清楚,秒计数部分采用满十进一的形式,即总计999.9秒。

module miaobiao(clk,key,dig,seg); //模块名miaobiaoinput clk; //输入时钟input[1:0] key; //输入按键output[3:0] dig; //数码管选择输出引脚output[7:0] seg; //数码管段输出引脚reg[7:0] seg_r; //定义数码管输出寄存器reg[3:0] dig_r; //定义数码管选择输出寄存器reg[3:0] disp_dat; //定义显示数据寄存器reg[24:0]count; //定义计数寄存器reg[23:0]hour; //定义现在时刻寄存器reg sec,keyen; //定义标志位reg[1:0]dout1,dout2,dout3; //寄存器wire[1:0]key_done; //按键消抖输出assign dig = dig_r; //输出数码管选择assign seg = seg_r; //输出数码管译码结果//秒信号产生部分always @(posedge clk) //定义clk上升沿触发begincount = count + 1'b1;if(count == 25'd2400000) //0.05S到了吗?begincount = 25'd0; //计数器清零sec = ~sec; //置位秒标志endend//按键消抖处理部分assign key_done = (dout1 | dout2 | dout3);//按键消抖输出always @(posedge count[17])begindout1 <= key;dout2 <= dout1;dout3 <= dout2;endalways @(negedge key_done[0])beginkeyen = ~keyen; //将琴键开关转换为乒乓开关end//数码管动态扫描显示部分always @(posedge clk) //count[12:11]大约1ms改变一次begincase(count[12:11]) //选择扫描显示数据3'd0:disp_dat = hour[3:0]; //0.1秒位3'd1:disp_dat = hour[7:4]; //秒个位3'd2:disp_dat = hour[11:8]; //秒十位3'd3:disp_dat = hour[15:12]; //秒百位endcasecase(count[12:11]) //选择数码管显示位3'd0:dig_r = 4'b1110; //选择第一个数码管显示3'd1:dig_r = 4'b1101; //选择第二个数码管显示3'd2:dig_r = 4'b1011; //选择第三个数码管显示3'd3:dig_r = 4'b0111; //选择第四个数码管显示endcaseendalways @(posedge clk)begincase(disp_dat)4'h0:seg_r = 8'hc0; //显示04'h1:seg_r = 8'hf9; //显示14'h2:seg_r = 8'ha4; //显示24'h3:seg_r = 8'hb0; //显示34'h4:seg_r = 8'h99; //显示44'h5:seg_r = 8'h92; //显示54'h6:seg_r = 8'h82; //显示64'h7:seg_r = 8'hf8; //显示74'h8:seg_r = 8'h80; //显示84'h9:seg_r = 8'h90; //显示94'ha:seg_r = 8'hbf; //显示-default:seg_r = 8'hff; //不显示endcaseif((count[17:15]== 3'd2)&sec)seg_r = 8'hff;end //计时处理部分always @(negedge sec or negedge key_done[1])//计时处理beginif(!key_done[1]) //是清零键吗?beginhour = 15'h0; //是,则清零endelse if(!keyen)beginhour[3:0] = hour[3:0] + 1'b1; //0.1秒加1if(hour[3:0] == 4'ha)beginhour[3:0] = 4'h0;hour[7:4] = hour[7:4] + 1'b1; //秒的个位加一if(hour[7:4] == 4'ha)beginhour[7:4] = 4'h0;hour[11:8] = hour[11:8] + 1'b1; //秒的十位加一if(hour[11:8] == 4'ha)beginhour[11:8] = 4'h0;hour[15:12] = hour[15:12] + 1'b1;//秒的百位加一if(hour[15:12] == 4'ha)hour[15:12] = 4'h0; //记满999.9秒时清零endendendendendendmodule四.总结及心得这次课程设计主要碰到的是编程问题。

EDA多功能秒表课程设计

EDA多功能秒表课程设计

EDA多功能秒表课程设计一、课程目标知识目标:1. 学生能理解EDA多功能秒表的基本原理和功能。

2. 学生能掌握秒表的计时、计次和闹钟等功能操作。

3. 学生了解秒表在日常生活和运动竞赛中的应用。

技能目标:1. 学生能运用所学知识,独立操作多功能秒表,进行计时和计次。

2. 学生能通过分析秒表数据,提高解决问题的能力。

3. 学生能运用秒表进行简单的运动计时和数据分析。

情感态度价值观目标:1. 学生培养对电子产品的兴趣,激发学习电子技术知识的热情。

2. 学生在团队协作中,培养合作精神和沟通能力。

3. 学生通过运用秒表进行运动计时,培养公平竞争和尊重规则的意识。

课程性质:本课程为实践性较强的电子技术课程,结合多功能秒表的实用功能,使学生掌握基本操作和运用。

学生特点:学生处于好奇心强、动手能力逐渐增强的阶段,对新鲜事物充满兴趣,善于合作与分享。

教学要求:教师需引导学生主动参与,注重实践操作,培养学生动手能力和解决问题的能力。

在教学过程中,关注学生的情感态度,激发学生的学习兴趣,提高学生的综合素质。

通过本课程的学习,使学生将所学知识应用于实际生活,达到学以致用的目的。

二、教学内容本章节教学内容主要包括以下几部分:1. 多功能秒表的原理与结构:介绍秒表的电子元件、工作原理和整体结构,使学生了解秒表的内部构造和功能实现方式。

教材章节:第一章 电子元件与电路基础2. 多功能秒表的操作与使用:详细讲解秒表的计时、计次、闹钟等功能操作,以及如何进行复位、设置等操作。

教材章节:第二章 数字电路与计时器3. 秒表在运动计时中的应用:通过实例分析,使学生了解秒表在运动竞赛中的实际应用,如田径、游泳等项目的计时。

教材章节:第三章 计时器在体育运动中的应用4. 秒表数据的分析与处理:教授学生如何分析秒表数据,进行简单的数据处理,提高学生解决问题的能力。

教材章节:第四章 数据分析与处理5. 实践操作:安排学生进行实际操作,如使用秒表进行计时、计次,分析数据等,巩固所学知识。

EDA课程设计--数字秒表设计

EDA课程设计--数字秒表设计

电子课程设计—数字秒表的设计数字秒表的设计数字秒表的设计一、设计任务与要求1、数字秒表的计时范围是0秒~59分59.99秒,显示的最长时间为59分59秒。

秒。

2 2、数字秒表的计时精度是、数字秒表的计时精度是10ms 10ms。

3 3、、复位开关可以在任何情况下使用,复位开关可以在任何情况下使用,即便在计时过程中,即便在计时过程中,即便在计时过程中,只要按一下复位只要按一下复位开关,计时器就清零,并做好下次计时的准备。

开关,计时器就清零,并做好下次计时的准备。

4 4、、具有启具有启//停开关,停开关,即按一下启即按一下启即按一下启//停开关,停开关,启动计时器开始计时,启动计时器开始计时,启动计时器开始计时,再按一下再按一下启/停开关则停止计时。

停开关则停止计时。

二、总体框图由频率信号输出端输出频率为100HZ 的时钟信号,输入到微妙模块的时钟端clk ,高/低电平电平频率信号输入输入微妙模块微妙模块秒模块秒模块分模块分模块置数/位选位选显示模块显示模块进位进位微妙模块为100进制的计数器,产生的进位信号co 输入到下一级秒模块的时钟端,以此类推,直到分模块计数到59进60时,产生的进位信号不输出,计数清零。

将微妙、秒、分产生的计数通过置数/位选再通过显示模块实时显示。

设计方案:利用一块芯片完成除时钟源,利用一块芯片完成除时钟源,按键和显示器之外的所有数字电路功按键和显示器之外的所有数字电路功能。

所有数字逻辑功能都在CPLD 器件上用VHDL 语言实现。

这样设计具有体积小,设计周期短,调试方便,故障率地和修改升级容易等特点,本设计采用自顶向下,混合输入方式(原理图输入——顶层文件链接和VHDL 语言输入——各模块程序设计)实现数字秒表的设计,下载和调试。

三、功能模块1.1. 微秒模块微秒模块采用VHDL 语言输入方式,以时钟clk clk,清零信号,清零信号clr 以及暂停信号STOP 为进程敏感变量,程序如下:为进程敏感变量,程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all; entity MINSECONDb isport(clk,clrm,stop:in std_logic;----时钟时钟//清零信号清零信号secm1,secm0:out std_logic_vector(3 downto 0);----秒高位秒高位//低位co:out std_logic);------- co:out std_logic);-------输出输出输出//进位信号进位信号 end MINSECONDb;architecture SEC of MINSECONDb is signal clk1,DOUT2:std_logic;beginprocess(clk,clrm)variable cnt1,cnt0:std_logic_vector(3 downto 0);---计数计数 VARIABLE COUNT2 :INTEGER RANGE 0 TO 10 beginIF CLK'EVENT AND CLK='1'THENIF COUNT2>=0 AND COUNT2<10 THEN COUNT2:=COUNT2+1; ELSE COUNT2:=0;DOUT2<= NOT DOUT2; END IF; END IF;if clrm='1' then----if clrm='1' then----当当clr 为1时,高低位均为0cnt1:="0000"; cnt0:="0000";elsif clk'event and clk='1' then if stop='1' then cnt0:=cnt0; cnt1:=cnt1; end if;if cnt1="1001" and cnt0="1000" ;then----then----当记数为当记数为9898(实际是经过(实际是经过59个记时脉冲)个记时脉冲) co<='1';----co<='1';----进位进位进位cnt0:="1001";----cnt0:="1001";----低位为低位为9elsif cnt0<"1001" then----elsif cnt0<"1001" then----小于小于9时 cnt0:=cnt0+1;----cnt0:=cnt0+1;----计数计数计数 --elsif cnt0="1001" then --clk1<=not clk1;elsecnt0:="0000";if cnt1<"1001" then----if cnt1<"1001" then----高位小于高位小于9时 cnt1:=cnt1+1; elsecnt1:="0000"; co<='0'; end if; end if; end if;secm1<=cnt1; secm0<=cnt0;end process; end SEC;程序生成器件如图:clk clrm stopsecm1[3..0]secm0[3..0]coMINSECONDbinst3微妙模块生成的器件可以实现带有100进制进位和清零功能,暂停等功能,MINSECONDb 输入为100HZ 脉冲和低电平的清零信号CLR 与暂停信号STOP STOP,输出,输出微妙个位、十位及进位信号CO CO。

eda课程设计资料 实验一 数字式秒表

eda课程设计资料 实验一 数字式秒表

实验一 数字式秒表设计一、设计任务与技术指标试设计并制作一个用七段数码管显示的秒表,并具有如下指标:1. 设计一个用七段数码管显示的秒表,它有“分”、“秒”、“百分之一秒” 十进制显示,如图1所示:图1 秒表表盘示意图2. 开机显示00.00.00,最大显示23.59.99; 3. 能够准确地计时并正确显示时间,计时精度 0.01秒;4. 用户可以随时开始计时,也可随时结束计时。

二、设计原理该系统由时钟信号发生器、分频电路、计时电路、译码显示电路等模块组成。

其总体框图如图2所示:图2 系统总体框图1.时钟信号发生器使用GW48系统主板上的“CL0CK0”时钟频率来实现(信号频率范围:0.5Hz ~50MHz ,建议选用1.5MHz 信号源)。

2.分频电路的设计设输入频率为1.5MHz 的脉冲信号,要求得到100Hz 的脉冲信号,那么分频系数的计算公式如下:分频系数=分频后的频率分频前的频率3.计时电路在数字电路中,计时电路一般是用计数器来实现的,例如时间的“秒”与“分”就是一个60进制的问题。

60进制计数器外部端口图如图3所示:occlky[5…0]图3 计数器外部端口图时钟信号 发 生 器 分频 电路 计时 电路 数码管显示驱动电路计数器其中,oc是计数器进位输出端。

y[5…0]为本位输出端。

三、设计平台及可选器件GW48-CK EDA实验板开发系统、EP1K30、共阴极七段数码管、发光二极管、按键开关、电阻、电容等。

选用平台的模式:No.7四、设计要求1.编制VHDL程序,并在QuartusII环境下编译通过;2.对源程序进行逻辑仿真,仿真结果正确;3.将编译后的程序下载至目标器件,进行硬件测试,硬件测试结果正确;4.各块采用文本编辑的方式生成元件图形,在直接利用元件图形编辑秒表。

五、设计报告要求1.简单叙述设计过程(包括原理、方案);2.画出完整的顶层文件原理图;3.给出完整的程序设计文档;4.说明调试方法与调试过程;。

eda电子秒表的课程设计

eda电子秒表的课程设计

eda电子秒表的课程设计一、课程目标知识目标:1. 学生能够理解电子秒表的基本原理,掌握EDA技术中电子秒表的设计流程。

2. 学生能够描述电子秒表的各个模块功能,如计时器、触发器、显示等。

3. 学生了解数字电路的基础知识,并掌握基础的编程思想。

技能目标:1. 学生能够运用所学知识,设计并实现一个简单的电子秒表,具备计时、停止、清零等功能。

2. 学生能够通过实验操作,培养动手实践能力,提高问题解决能力。

3. 学生能够运用团队协作,进行项目设计与实施,提高沟通与协作能力。

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

2. 学生通过实践操作,培养创新思维和探究精神,提高自信心。

3. 学生在团队协作中,学会尊重他人,培养集体荣誉感和社会责任感。

课程性质:本课程为实践性强的课程,结合电子技术、数字电路和编程知识,培养学生的实际操作能力和团队协作精神。

学生特点:学生为初中生,具备一定的电子知识和编程基础,对实践操作感兴趣,喜欢探索新事物。

教学要求:课程要求教师引导学生主动参与,注重实践操作和团队协作,强调知识与技能的融合,培养学生解决问题的能力。

通过本课程的学习,学生能够达到上述课程目标,实现知识、技能和情感态度价值观的全面发展。

二、教学内容本课程教学内容主要包括以下几部分:1. 电子秒表原理介绍:讲解电子秒表的基本工作原理,包括计时器、触发器、显示等模块的功能和相互关系。

2. 数字电路基础知识:复习与电子秒表相关的数字电路知识,如门电路、触发器、计数器等。

3. EDA技术:介绍EDA技术的基本概念,学习如何利用EDA软件(如Multisim、Protel等)进行电子秒表的设计与仿真。

4. 编程知识:学习与电子秒表相关的编程语言和编程思想,如C语言、汇编语言等。

5. 实践操作:分组进行电子秒表的设计与制作,包括电路图绘制、程序编写、电路板焊接、调试与测试等。

教学内容安排如下:第一课时:电子秒表原理介绍,数字电路基础知识复习。

EDA课程设计实验电子秒表

EDA课程设计实验电子秒表

目录1.【摘要】 (6)2.【实验目的】 (6)3.【实验原理】 (6)3.1秒表功能 (6)3.2秒表设计结构 (7)3.3秒表设计思路 (7)3.4系统组成框图 (7)4.【实验步骤与容】 (8)4.1六进制计数器 (8)4.2 十进制计数器 (8)4.3蜂鸣器控制电路 (9)4.4 Pins/引脚绑定 (10)4.5顶层文件设计 (10)5.【实验箱操作效果】 (11)6.【实验心得和体会】 (13)7.【参考文献】 (14)附录 (14)课程设计实验题目:电子秒表的设计1.【摘要】电子秒表是生活家都很熟悉的事物,在EDA设计中也是一个不错的选题。

设计首先需要考虑秒表的整体构成,主要由分频器与计数器组成。

通过计数器进位端相联系。

设计好顶层原理图后,需要用VHDL语言对各个模块进行行为描述,完成对各模块的设计。

这应该属于自定向下,模块化的设计方法。

2.【实验目的】完成具有多计数功能的秒表,并可将结果逐一显示在7段数码管上,具体要求如下:(1)输入时钟10khz,采用Altera EP1T3C144C8 FPGA;(2)异步、同步复位,计时精度1ms,最大计时240秒;(3)至少对6个目标计时,并可显示于7段数码管,秒表的显示围是00:00:00-59:59:99;(4)可清零与复位;3.【实验原理】3.1秒表功能秒表的显示围是00:00:00-59:59:99,显示精度为1ms,可控的启动功能(通过计数器的cin端口来控制计数器的启动,也即控制数字秒表的启动)及数字秒表清零功能(通过控制计数器清零端来实现,当清零端为高电平时,计数器清零,也即数字秒表清零,否则秒表正常计数),清零时蜂鸣器报警。

3.2秒表设计结构秒表的物理结构比较简单,它主要由十进制计数器、六进制计数器、数据选择器、显示译码器蜂鸣器等组成。

此外,秒表还需有一个启动信号、清零信号及报时信号,以便实现对秒表的控制和有效应用(启动和清零信号及报时信号由使用者给出,设计时主要任务是将此外界信号的功能准确的通过数字秒表体现出来,也即,当使用者给出启动信号时数字秒表能够正常启动,上面已经给出,启动和清零的功能是通过将此信号送给计数器来实现的)。

EDA秒表电路课程设计

EDA秒表电路课程设计

学号:11446129常州大学EDA技术课程设计报告题目: _________________ 秒表电路设计___________________ 学生:________________ 袁李飞 ________________________ 学院(系:)信息科学与工程专业班级:电子111指导教师: ________________ 李文杰______________________EDA课程设计任务书四、设计步骤和安排:(1) 题目安排;图书馆查相关资料;(2) 设计原理研究,总体设计;(3) 各主要模块的VHDL设计。

各模块的设计仿真分析。

(4) 完成系统顶层文件设计,系统总体功能的仿真分析。

(5) 将设计内容进行硬件配置,在GW4实验箱上进行调试。

(6) 撰写课程设计报告、答辩并提交报告。

目录1. 前言2. 设计要求 (1)3. 实验目的 (1)4. 实验原理 (2)5. 设计框图 (2)6. 模块说明 (3)6.1分频器 (3)6.2十进制计数器 (4)6.3六进制计数器 (5)7. 顶层文件 (7)7.1整体连接图 (7)7.2仿真波形 (7)8. 硬件调试 (8)8.1硬件要求 (8)8.2引脚锁定 (8)9. 实验总结 (9)9.1错误与解决方法 (9)9.2心得体会 (9)10. 参考文献 (10)1.前言本次设计的目的就是在掌握EDA 实验开发系统的初步使用基础上,了解EDA 技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。

在掌握所学的计算机组成与结构课程理论知识时,通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析,解决计算机与控制实现的技术,达到课程设计的目标。

利用VHDL 语言设计基于计算机电路中时钟脉冲原理的数字秒表,显示最长时间是59 分59 秒99,设计了复位和启停开关。

复位开关reset 可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备,启停开关为en,高电平时秒表工作,低电平时秒表停止计时,在触发高电平时接着上次的计时继续计时。

EDA课程设计:数字秒表的设计

EDA课程设计:数字秒表的设计

EDA 课程设计报告——数字秒表的设计指导老师:时间:组员:一、设计流程1. 文本编辑:用Active-HDL的编译环境进行编写源代码,编译通过后,保存为.hdl文件格式。

2. 功能仿真:将文件调入Active-HDL仿真环境里进行功能仿真,检查逻辑功能是否正确。

3. 逻辑综合与物理实现:将源代码调入ISE软件中,逻辑综合,管脚分配,下载到FPGA板上调试物理实现。

二、设计规划本系统设计采用自顶向下的设计方案,系统的整体组装设计原理图如图1所示,它主要由控制模块、时基分频模块,计时模块和显示模块四部分组成。

各模块分别完成计时过程的控制功能、计时功能与显示功能。

图1系统组成框图三、各模块的原理及其程序本系统设计由控制模块、时基分频模块,计时模块和显示模块四部分组成。

各模块实现秒表不同的功能。

1、控制模块计时模块的作用是针对计时过程进行控制。

计时控制模块可用俩个按钮来完成秒表的启动、停止和复位。

部分源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRL ISPORT( CLR,CLK,SP:IN STD_LOGIC;EN :OUT STD_LOGIC);COM:PROCESS(SP,CURRENT_STATE)BEGINEND IF;END PROCESS;END BEHAVE;2、时基分频模块时基分频模块的作用把输入时钟信号变为分频输出信号。

部分源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CB10 ISPORT( CLK: IN STD_LOGIC;CO : OUT STD_LOGIC);END CB10;ARCHITECTURE ART OF CB10 ISSIGNAL COUNT:STD_LOGIC_VECTOR (3 DOWNTO 0); BEGINPROCESS(CLK)BEGINIF RISING_EDGE(CLK)THENIF COUNT="1001"THENCOUNT<="0000";CO<='1';ELSECOUNT<=COUNT+1;CO<='0';END IF;END IF;END PROCESS;END ART;3、计时模块计时模块执行计时功能,计时方法和计算机一样是对标准时钟脉冲计数。

EDA秒表电路课程设计

EDA秒表电路课程设计

学号:11446129常州大学EDA 技术课程设计报告题目:秒表电路设计学生:袁李飞学院(系):信息科学与工程专业班级:电子111指导教师:李文杰EDA课程设计任务书目录1.前言 (1)2.设计要求 (1)3.实验目的 (1)4.实验原理 (2)5.设计框图 (2)6.模块说明 (3)6.1分频器 (3)6.2十进制计数器 (4)6.3六进制计数器 (5)7.顶层文件 (7)7.1整体连接图 (7)7.2仿真波形 (7)8.硬件调试 (8)8.1硬件要求 (8)8.2引脚锁定 (8)9.实验总结 (9)9.1错误与解决方法 (9)9.2心得体会 (9)10.参考文献 (10)1.前言本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。

在掌握所学的计算机组成与结构课程理论知识时,通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析,解决计算机与控制实现的技术,达到课程设计的目标。

利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表,显示最长时间是59分59秒99,设计了复位和启停开关。

复位开关reset可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备,启停开关为en,高电平时秒表工作,低电平时秒表停止计时,在触发高电平时接着上次的计时继续计时。

数字秒表在日常生活中有广泛的用途,秒表的逻辑结构较简单,它主要由显示译码器、十进制计数器、六进制计数器和分频器组成。

四个10进制计数器:用来分别对百分之一秒、十分之一秒、秒和分进行计数;两个6进制计数器:用来分别对十秒和十分进行计数;显示译码器:完成对显示的控制。

根据电路持点,用层次设计概念将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口,然后再将各模块合起来联试。

通过MAX+plusⅡ软件,对上述模块设计,仿真无误后,设计顶层文件,仿真无误后,下载到主芯片EPF10K10LC84-4中,按适配划分后的管脚定位,同相关功能块硬件电路接口连线,进行硬件实验。

EDA课程设计:数字秒表地设计

EDA课程设计:数字秒表地设计

EDA课程设计报告——数字秒表的设计指导老师:时间:组员:一、设计流程1.文本编辑:用Active-HDL的编译环境进行编写源代码,编译通过后,保存为.hdl文件格式。

2.功能仿真:将文件调入Active-HDL仿真环境里进行功能仿真,检查逻辑功能是否正确。

3.逻辑综合与物理实现:将源代码调入ISE软件中,逻辑综合,管脚分配,下载到FPGA板上调试物理实现。

二、设计规划本系统设计采用自顶向下的设计方案,系统的整体组装设计原理图如图1所示,它主要由控制模块、时基分频模块,计时模块和显示模块四部分组成。

各模块分别完成计时过程的控制功能、计时功能与显示功能。

图1 系统组成框图三、各模块的原理及其程序本系统设计由控制模块、时基分频模块,计时模块和显示模块四部分组成。

各模块实现秒表不同的功能。

1、控制模块计时模块的作用是针对计时过程进行控制。

计时控制模块可用俩个按钮来完成秒表的启动、停止和复位。

部分源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRL ISPORT( CLR,CLK,SP:IN STD_LOGIC;EN :OUT STD_LOGIC);…………………………………………COM:PROCESS(SP,CURRENT_STATE)BEGINEND IF;END PROCESS;END BEHAVE;2、时基分频模块时基分频模块的作用把输入时钟信号变为分频输出信号。

部分源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CB10 ISPORT( CLK: IN STD_LOGIC;CO : OUT STD_LOGIC);END CB10;ARCHITECTURE ART OF CB10 ISSIGNAL COUNT:STD_LOGIC_VECTOR (3 DOWNTO 0);BEGINPROCESS(CLK)BEGINIF RISING_EDGE(CLK)THENIF COUNT="1001"THENCOUNT<="0000";CO<='1';ELSECOUNT<=COUNT+1;CO<='0';END IF;END IF;END PROCESS;END ART;3、计时模块计时模块执行计时功能,计时方法和计算机一样是对标准时钟脉冲计数。

eda电子秒表课程设计

eda电子秒表课程设计

eda电子秒表课程设计一、课程目标知识目标:1. 让学生掌握EDA电子秒表的基本原理和功能,理解数字电路基础知识;2. 学会使用EDA工具进行电子秒表的电路设计和仿真;3. 掌握电子秒表中计时、计数、复位等模块的工作原理和相互关系。

技能目标:1. 培养学生运用EDA工具进行电子电路设计和仿真的能力;2. 提高学生分析问题和解决问题的能力,能针对电子秒表设计过程中出现的问题进行调试和优化;3. 培养学生的团队合作能力,学会在团队中沟通、协作、共同完成任务。

情感态度价值观目标:1. 激发学生对电子工程的兴趣和热情,培养其探索精神和创新意识;2. 引导学生树立正确的工程观念,认识到电子工程在现代社会中的重要作用;3. 培养学生严谨、认真、负责的学习态度,养成良好的学习习惯。

本课程针对高中年级学生,结合其知识水平和认知特点,注重理论与实践相结合,以项目为导向,让学生在实际操作中掌握电子秒表的设计与制作。

通过课程学习,使学生能够将所学知识应用于实际工程问题,提高其创新能力和实践能力。

同时,注重培养学生的团队合作精神和责任感,为其未来的学习和职业发展奠定基础。

二、教学内容1. 电子秒表基本原理:介绍EDA电子秒表的工作原理,包括计时、计数、显示等模块的功能和相互关系,对应教材第三章第二节。

2. EDA工具使用:讲解如何使用EDA工具进行电子秒表的电路设计和仿真,包括电路图的绘制、元件库的选择、仿真参数的设置等,对应教材第四章。

a. 电路图绘制b. 元件库使用c. 仿真参数设置3. 电子秒表电路设计与仿真:指导学生进行电子秒表的电路设计和仿真,分析并解决设计过程中可能出现的问题,对应教材第五章。

a. 设计计时模块b. 设计计数模块c. 设计显示模块d. 整体电路调试与优化4. 团队合作与项目实施:组织学生分组进行项目实践,培养学生的团队合作能力和沟通协作能力,对应教材第六章。

a. 分组讨论b. 制定项目计划c. 项目实施与汇报教学内容的安排和进度:共安排6个课时,具体分配如下:1-2课时:电子秒表基本原理及EDA工具使用;3-4课时:电子秒表电路设计与仿真;5-6课时:团队合作与项目实施。

EDA课程设计--带存储功能的秒表

EDA课程设计--带存储功能的秒表

2.控制分钟模块
太原科技大学:名字起个什么
图 4.4 分钟计时器
分钟计时器由一个 60 进制的计数器构成的,具有清零,置数和计数的功能。其 中 reset 为清零信号,当 reset 为 0 时,分计时器清零;setmin 为调分信号与 置数信号 set 相连;clk 为驱动分计时器工作的时钟,与 enmin 相连接;daout 为输出信号与 seltime 的 minute 相连。
elsif(clk'event and clk='1')then if(count(3 downto 0)="1001")then
if(count<16#A0#)then if(count="10011001")then ensec<='1'; count<="00000000";
ELSE count<=count+7;




















图 2.1,总体原理框图 总体框图由秒表电路(包括 msecond,second,minute 三个小模块);扫描电路 驱动 5 位八段共阴扫描数码管的片选驱动信号输出模块(seltime);显示电路驱 动八段字形译码器输出模块(deled)。
的实现和使用如同 89c51/52 一样方便。 缺点: 1. 设计繁琐可以直接用 8051 单片机代替。 2. 程序复杂。 方案二 采用芯片 EP1C2Q240C8,共阴七段数码管,按键开关,发光二级管 设计。EP1C12Q240C8 是 Cyclone 器件,Cyclone 可以最多支持 129 个通道的 LVDS 和 RSDA。Cyclone 器件的 LVDS 缓冲器可以支持最高达 640Mbps 的数据传输速度。 与单端的 I/0 口标准相比,这些内显置于 Cyclone 器件内部的 LVDS 缓冲器保持 了信号的完整性,并且有更低的电磁干扰,更好的电磁兼容性及更低的电源功耗。 采用此芯片设计简单,不需要用汇编语言编写程序,直接用 VHDL 编写即可。所 以优先选用方案二。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

EDA课程设计姓名:**学号:**********班级:1211自动化一、课程设计目的1、熟练利用Verilog HDL语言进行数字系统设计。

2、掌握数字系统的设计方法——自顶向下的设计思想。

3、掌握计数器的设计与使用。

4、根据秒表的功能要求设计一个秒表。

5、熟练掌握用Quartus II软件进行系统原理图设计、文本设计以及进行波形仿真。

二、课程设计所需器材装有Quartus II软件的电脑一台、FPGA教学实验系统一台、下载电缆一根。

三、课程设计要求1、有秒、分计数,数码扫描显示输出。

2、有清零端和暂停端。

3、下载,检查结果是否正确。

四、课程设计原理1、功能描述秒表是一种计时的工具,有着很广泛的用途。

本实验中的秒表要求有两个功能按钮:一个是计数和停止计数按钮,当第一次按下此按钮时,秒表开始计数,再一次按下时,秒表停止计数,并显示所计的数字;另一个是清零按钮,当按下此按钮时,秒表清零。

在数码管上采用动态扫描显示输出。

2、基本原理:本设计中用到的主要元件有计数器、分频器、数据选择器、译码器、位选信号发生器等。

秒、分都是60进制计数,所以必须采用两个60进制的计数器,而百分秒择采用的是100进制;分频器主要将1KHZ的时钟信号经过10分频后,产生100HZ的单位时钟周期;数据选择器主要功能是将即将显示的数据送给译码器;译码器将BCD码转换为七段译码进行显示;位选信号发生器根据人眼暂留效应和显示的数码的个数,产生一段循环码。

3、自顶向下的设计方法自顶向下的设计方法是数字系统设计中最常用的设计方法,也是基于芯片的系统设计的主要方法。

自顶向下的设计方法利用功能分割手段将设计由上到下进行层次话和模块化,及分层次、分模块进行设计和仿真。

功能分割时,将系统功能分解为功能块,功能块再分解为逻辑块,逻辑块再分解为更少的逻辑块和电路。

如此分割,逐步的将系统细化,将功能逐步的具体化,模块化。

高层次设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细描述在下一设计层次说明,最底层的设计才涉及具体寄存器和逻辑门电路等实现方式的描述。

五、课程设计步骤1、采用自顶向下的设计方法,首先将系统分块。

2、设计元件,及逻辑块。

3、一级一级向上进行元件例化,设计顶层文件。

4、把各模块连接起来,进行综合编译仿真。

5、下载到实验箱,以验证程序。

六、课程设计设计1、分频模块将输入1KHZ的系统时钟经过十分频分为100HZ的单位时钟。

编程原理跟计数器原理相似。

2、定时模块采用2个60进制、1个100进制的BCD码全加器作为定时器,分为分,秒,百分秒,输入时钟信号为分频器输出信号100HZ时钟,外界两个拨码开关作为清零按钮和暂停按钮。

3、位选发生器:根据显示的数据位和人眼暂留效应,设计显示分为分、秒、百分秒位,每位需要2个数码管进行显示,因此变化频率至少为300HZ,为了方便则采用1KHZ,循环码则从000循环到101。

4、多路选择器根据位选信号,输出对应位显示的数据。

5、译码器将多路选择器输出端的数据对应的转换为七段二进制数,送给显示器。

各个分模块如下图所示:6、原理框图如下图:七、总结在课设制作开始时,自己就按照实验指导书挨着挨着的做实验,把前4个实验做完后,自己对Quaetus II软件及Verilog HDL语言语法掌握得也比较熟练了,在前几个实验的铺垫下,秒表设计可以说是前几个小实验的系统集成,专周感觉比较顺利。

遇到的问题主要就是,在进行原理图设计时,定时器原件块和多路选择器原件块输出、输入接错了,导致波形仿真失败。

通过多方面的学习了解,我学会了原理图设计法、文本输入设计法,同时也感受到了自顶而下和自下而上设计思路的优势。

Verilog源程序的编写很容易出现错误,这就需要耐心的调试。

因为很多情况下,一长串的错误往往是由一个不经意的小错误引起的。

当程序屡调屡错的时候,最好和其他同学沟通交流一下,他们不经意的一句话,就可能给我启发,使问题迎刃而解。

这次实习,给我感触最深的还是行为态度问题。

人的能力有大有小,但只要端正态度,不抛弃,不放弃,任何人都能取得令自己满意的成绩。

在此,我由衷的感谢在这次课程设计中给了我巨大帮助的老师和同学们!附:设计模块Verilog HDL源程序2、分频器Function name:Frequency division 10Function: 1KHZ clock divide to 100HZ clockmodule fd10(clk,clk10);input clk;output clk10;reg clk10;reg[3:0] qout=0;always@(posedge clk)beginif(qout==9)beginclk10=~clk10;qout=0;endelseqout=qout+1;endendmodule 1、位选信号发生器Function name:bcFunction:location of the displaymodule bc(clk,bout);input clk;output[2:0] bout;reg[2:0] bout;always@(posedge clk)beginif(bout==3'b101)bout=3'b000;elsebout=bout+1;endendmodule5、 计时器Founction name:ltFounction:count time and output the bcd code module lt(clk10,con,clr,MH,ML,SH,SL,MSH,MSL);input clk10,con,clr;output[3:0] MH,ML,SH,SL,MSH,MSL;reg[3:0] MH,ML,SH,SL,MSH,MSL;reg c1,c2; always@(posedge clk10 or posedge clr)beginif(clr) begin{MSH,MSL}=8'h00; c1=0; endelse if(!con)begin if(MSL==9)begin MSL=0;if(MSH==9) beginMSH=0;c1=1;endelse MSH=MSH+1;end3、 多路选择器Function name:mul_one Function:output the number that it will be displaying module mul_one(out,MH,ML,SH,SL,MSH,MSL,bout); input [3:0] MH,ML,SH,SL,MSH,MSL; input[2:0] bout; output[3:0] out; reg[3:0] out; always@(bout or MH or ML or SH or SL or MSH or MSL) begin case(bout) 3'b000:out=MSL; 3'b100:out=MSH; 3'b010:out=SL; 3'b001:out=SH; 3'b101:out=ML; 3'b011:out=MH; endcase end endmodule 4、 译码器 Function name:tcFunction:bcd change toseven-segment decoder module tc(dout,in);output[7:0] dout;input[3:0] in; reg[7:0] dout; always @(in) begincase(in)4'b0000:dout=8'b11111100; 4'b0001:dout=8'b01100000;4'b0010:dout=8'b11011010;4'b0011:dout=8'b11110010; 4'b0100:dout=8'b01100110;4'b0101:dout=8'b10110110;4'b0110:dout=8'b10111110; 4'b0111:dout=8'b11100000;4'b1000:dout=8'b11111110;4'b1001:dout=8'b11110110;default:dout=8'b11111100;endcase endendmodule elsebegin MSL=MSL+1;c1=0;endendendalways @(posedge c1 or posedge clr) beginif(clr)begin {SH,SL}=8'h00;c2=0;end else if(SL==9)beginSL=0; if(SH==5)begin SH=0;c2=1;end elseSH=SH+1;endelsebeginSL=SL+1;c2=0;endendalways@(posedge c2 or posedge clr) beginif(clr)begin{MH,ML}=8'h00;endelse if(ML==9)beginML=0;if(MH==5)MH=0;elseMH=MH+1;endelseML=ML+1;endendmodule。

相关文档
最新文档