当前位置:文档之家› 秒表计时器

秒表计时器

秒表计时器
秒表计时器

课程设计说明书

设计题目:秒表计时器

院(系):机电工程系

专业年级: 07机制本2班

学号: 0715118201

姓名:樊印文

指导老师:刘江海

课程设计任务书

机电工程系机制专业 07级本科二班

姓名:樊印文学号:0715118201

题目:秒表计时器

课程设计内容与要求:

1.课程设计的目的

(1)掌握EDA技术及CPLD/FPGA的开发流程

(2)能够应用VHDL语言和EDA软件进行电子系统的设计(3)掌握自上而下的设计思想

(4)掌握秒表计时器的设计原理

(5)掌握系统设计的分析方法

2.课程设计的任务及要求

(1)用VHDL语言设计一个多功能的秒表计时器,包含以下主要功能:精确计时,暂停,复位,整点报

时等

(2)能把设计文件进行仿真并下载到实验箱正确实现功能

目录

1.绪论

2.说明

3.Protel99绘图过程

4.主要芯片

5.所有程序

6.心得体会

7.附件

8.参考文献

9.鸣谢

绪论

本文采用VHDL语言,运用自上而下的设计思想,将系统功能逐层分割的层次设计方法,使用MUX+PLUS2集成开发环境进行编辑,逻辑综合自动化把VHDL描述转电路,然后进行波形仿真,最后通过编程电缆将所设计的内容下载到CPLD器件中,最终实行了电子钟的设计。相比传统的电路系统的设计方法,EDA技术采用硬件描述语言电路系统,包括电路的结构,行为方式,逻辑功能等。VHDL具有多层次描述系统硬件功能的能力,支持自上而下和基于库的设计特点。设计者不必了解硬件结构。从系统设计入手,在顶层记性系统方框图的划分和结构设计,在方框图一级用VHDL对电路的行为进行描述,并进行仿真和纠错,然后在系统一级进行验证,最后在用逻辑综合优化工具生成具体的门级逻辑电路的网表,下载到具体的CPLD期间中去,从而实现可编程的ASIC的设计。本文运用现代电子设计工具,采用VHDL语言在CPLD器件上实现秒表计时器的设计,能够进行百分之一秒,秒,分,时的计数,而且通过十进制数码显示,具有体积小,可靠性高,功耗低的特点。

秒表计时器的设计基于强大的EDA功能,通过一台计算机,一套EDA软件和一片或者几片大规模可编程芯片

(CPLD/FPGA),完成了秒表计时器的设计。

说明

一、设计实验说明及要求:

1、秒表主要由:分频器、扫描显示译码器、一百进制计数器、六十进制计数器(或十进制计数器与6进制计数器)、十二进制计数器(或二十四进制计数器)电路组成。在整个秒表中最关键的是如何获得一个精确的100H Z计时脉冲,除此之外,数字秒表需有清零控制端,以及启动控制端、保持保持,以便数字时钟能随意停止及启动。

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

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

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

二、秒表组成及功能:

1、分频率器:用来产生100H Z计时脉冲;

2、二十四进制计数器:对时进行计数

3、六十进制计数器:对分和秒进行计数;

4、六进制计数器:分别对秒十位和分十位进行计数;

5、十进制计数器:分别对秒个位和分个位进行计数;

6、扫描显示译码器:完成对7字段数码管显示的控制;

三、系统硬件要求:

1、时钟信号为10MHz;

2、FPGA芯片型号为EP2C5Q208C8

3、8个7段扫描共阳级数码显示管;

4、按键开关(清零、启动、保持);

四、硬件实现

将时序仿真正确的文件下载到实验箱中的EP2C5Q208C8中,通过合适的管脚分配,将相应的管脚连接起来,验证设计是否完成设计要求

Protel 99 SE 绘图过程

(1)设置原理图设计环境,设计环境对画原理图人影响很大,在画原理图之前,应该把设计环境设置好,工作环境是使用DESIGN/OPTIONS和TOOL/PREFERENCE菜单进行的,画原理图环境的设置主要包括图纸大小,捕捉栅格,电气栅格,模板设置等。

(2)放置元件。

将电气和电子元件放置到图纸上,一情况下元件的原理图符号在元件库中都可以找到,只需要将元件从元件库中取出,放置在图上,但由于本次设计中有一些新元件,故还要自己画元件。

(3)画元件图。

1、首先选择菜单FILE/NEW,然后在出现的窗口选择SCHEMATIC LIBRARY DOCUMENT图标建立一个元件库,该库的缺省名为SCHLIBL.LIB;在设计管理器窗口中双击该元件库,这就进入了画元件图窗口,在元件管理器窗口,可以看到已经给元件取了个缺省名COMPONENT_ 。

2、进入编辑窗口后使用page up键将窗口放大,放大到能清楚地看到可视栅格。

3、然后使用绘图工具箱中的工具依次绘出所需使用的

元件。

4、当需要对所画元件放置管脚时,单击工具箱上的放管脚工具,就会看见鼠标变成十字还带着一个管脚,将鼠标移动到放置管脚的地方,单击鼠标将管脚一个接一个放置,注意用空格键调整管脚方向。其中管脚的系列号是Protel 99 SE软件自动加上去的,若管脚名称或管脚的序号需要按顺序排列,则在放置第一个管脚之前,按Tab键然后在管脚Name和Number属性中输入排列序号的第一个数值或字母加数字,例如,若管脚序列号按数字增加的顺序排列,则输入第一个数字:若管脚名按D0、D1、D2……排列,则输入D0。(4)若需要将所画元件图放在原理图中,则需要将左上侧的Place单击则会自动跳转至原理图中,但选取适当的位置后,则单击右键即可确认。

(5)原理图布线,元件一旦放置在原理图上,就需要用导线将元件连接起来,连接时一定要符合电气规则。

(6)编辑与调整,编辑元件的属性,这些属性包括元件名,参数,封装图等,然后将元件与导线的位置进行细微的调整。(7)检查原理图在编辑元件的属性的基础上使用Protel 99 SE的电气规则检查功能,检查原理图的连线是否合理与正确,给出检查报告,若有错误,就需要根据错误情况进行改正。

(8)在原理图右下角输入原理图名称,然后打印输出原理

图。

主要芯片

一.555芯片

二. EP2C5Q208C8

Cyclone II EP2C5Q208C8是Altera公司生产的一款具有较高性价比的FPGA芯片,它采用Stratix架构,使用90nm 工艺生产,具有4608个LE,26个M4K单元,2个PLL以及13个乘法器,另外,其I/O管脚可以直接与系统中使用的其它芯片相连而不需要进行电平转换。该款FPGA的内部资源以及管脚数量能够完全满足本案的设计需求。故选用该款FPGA作为主控逻辑芯片。

FPGA的内部功能模块可以划分为UART收发、AD9951控制、包络信号DDS、脉冲信号控制、变频控制信号输出这五

个主要部分,另外,还包括各个模块间的协调以及时钟信号产生等部分。这些控制逻辑都通过Verilog硬件描述语言来实现。

所有程序一.顶层设计

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY clock IS

PORT(

clk: IN STD_LOGIC;

enable: IN STD_LOGIC;

sel: OUT STD_LOGIC_VECTOR(2 DOWNTO 0);

segment: OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END clock;

ARCHITECTURE rt1 OF clock IS

COMPONENT clk_div10

PORT(clk: IN STD_LOGIC;

clk_div: OUT STD_LOGIC);

END COMPONENT;

component count100

PORT(

clk: IN STD_LOGIC;

cout: OUT STD_LOGIC;

qh: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

ql: OUT STD_LOGIC_VECTOR(3 DOWNTO 0));

end component;

component count60

PORT(

clk: IN STD_LOGIC;

cout: OUT STD_LOGIC;

qh: out STD_LOGIC_VECTOR(3 DOWNTO 0);

ql: out STD_LOGIC_VECTOR(3 DOWNTO 0));

end component;

COMPONENT count24

PORT(

clk: IN STD_LOGIC;

qh: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

ql: OUT STD_LOGIC_VECTOR(3 DOWNTO 0));

END COMPONENT;

COMPONENT display

PORT(

clk: IN STD_LOGIC;

qh: IN STD_LOGIC_VECTOR(3 DOWNTO 0);

ql: IN STD_LOGIC_VECTOR(3 DOWNTO 0);

qh1,ql1,qh2,ql2,qh3,ql3,qh4,ql4:in std_logic_vector(3 downto 0); sel: OUT STD_LOGIC_VECTOR(2 DOWNTO 0);

segment: OUT STD_LOGIC_VECTOR(6 DOWNTO 0));

END COMPONENT;

signal qh,ql,qh1,ql1,qh2,ql2,qh3,ql3,qh4,ql4: STD_LOGIC_VECTOR(3 DOWNTO 0);

signal clk0: STD_LOGIC;

signal cout1,cout2,cout3: STD_LOGIC;

BEGIN

u0: clk_div10 PORT MAP(clk,clk0);

u1: count100 port map(clk0,cout1,qh1,ql1);

u2: count60 port map(cout1,cout2,qh2,ql2);

u3: count60 port map(cout2,cout3,qh3,ql3);

u4: count24 PORT MAP(cout3,qh4,ql4);

u5:display port MAP(clk,qh,ql,qh1,ql1,qh2,ql2,qh3,ql3,qh4,ql4,sel,segment);

END rt1;

二.分频模块

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity clk_div10 is

port( clk:in std_logic;

clk_div:out std_logic);

end clk_div10;

architecture rt1 of clk_div10 is

signal q_tmp:integer range 0 to 9;

begin

process(clk)

begin

IF(clk'event and clk='1')THEN

IF(q_tmp=9)THEN

q_tmp<=0;

ELSE

q_tmp<=q_tmp+1;

END IF;

END IF;

END PROCESS;

PROCESS(clk)

BEGIN

IF(clk'event and clk='1')THEN

IF(q_tmp=9)THEN

clk_div<='1';

ELSE

clk_div<='0';

END IF;

END IF;

END PROCESS;

END rt1;

三.计时模块

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY count100 IS

PORT(

clk: IN STD_LOGIC;

cout: OUT STD_LOGIC;

qh: out STD_LOGIC_VECTOR(3 DOWNTO 0);

ql: out STD_LOGIC_VECTOR(3 DOWNTO 0));

END count100;

ARCHITECTURE rt1 OF count100 IS

SIGNAL qh_temp, ql_temp: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

PROCESS(clk)

BEGIN

IF (clk'event and clk='1') THEN

IF (qh_temp="1001" and ql_temp="1001") THEN

qh_temp<="0000";

ql_temp<="0000";

ELSE

IF (ql_temp="1001") THEN

ql_temp<="0000";

qh_temp<=qh_temp+1;

ELSE

ql_temp<=ql_temp+1;

END IF;

END IF;

END IF;

qh<=qh_temp;

ql<=ql_temp;

END PROCESS;

cout<='1' when qh_temp="0000" and ql_temp="0000" else'0'; --cout<='1' when qh_temp="0000" and ql_temp="0000" else'0';

END rt1;

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY count24 IS

PORT(

clk: IN STD_LOGIC;

cout: OUT STD_LOGIC;

qh: out STD_LOGIC_VECTOR(3 DOWNTO 0);

ql: out STD_LOGIC_VECTOR(3 DOWNTO 0));

END count24;

ARCHITECTURE rt1 OF count24 IS

SIGNAL qh_temp, ql_temp: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

PROCESS(clk)

BEGIN

IF (clk'event and clk='1') THEN

IF (qh_temp="0010" and ql_temp="0011") THEN

qh_temp<="0000";

ql_temp<="0000";

ELSE

IF (ql_temp="1001") THEN

ql_temp<="0000";

qh_temp<=qh_temp+1;

ELSE

ql_temp<=ql_temp+1;

END IF;

END IF;

END IF;

qh<=qh_temp;

ql<=ql_temp;

END PROCESS;

END rt1;

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY count60 IS

PORT(

clk: IN STD_LOGIC;

cout: OUT STD_LOGIC;

qh: out STD_LOGIC_VECTOR(3 DOWNTO 0);

ql: out STD_LOGIC_VECTOR(3 DOWNTO 0));

END count60;

ARCHITECTURE rt1 OF count60 IS

SIGNAL qh_temp, ql_temp: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

PROCESS(clk)

BEGIN

IF (clk'event and clk='1') THEN

IF (qh_temp="0101" and ql_temp="1001") THEN

qh_temp<="0000";

ql_temp<="0000";

ELSE

IF (ql_temp="1001") THEN

ql_temp<="0000";

qh_temp<=qh_temp+1;

ELSE

ql_temp<=ql_temp+1;

END IF;

END IF;

END IF;

qh<=qh_temp;

ql<=ql_temp;

END PROCESS;

cout<='1' when qh_temp="0000" and ql_temp="0000" else'0'; --cout<='1' when qh_temp="0000" and ql_temp="0000" else'0';

END rt1;

四.显示模块

library ieee;

use ieee.std_logic_1164.all;

entity seg7 is

port(q:in std_logic_vector(3 downto 0);

segment:out std_logic_vector(6 downto 0));

end seg7;

architecture rt1 of seg7 is

begin

process(q)

begin

case q is

when"0000"=>segment<="0111111";

when"0001"=>segment<="0000110";

when"0010"=>segment<="1011011";

when"0011"=>segment<="1001111";

when"0100"=>segment<="1100110";

when"0101"=>segment<="1101101";

when"0110"=>segment<="1111101";

when"0111"=>segment<="0100111";

when"1000"=>segment<="1111111";

when"1001"=>segment<="1101111";

when others=>segment<="XXXXXXX";

end case;

end process;

end rt1;

library ieee;

use ieee.std_logic_1164.all;

entity time_choose is

port(sel:in std_logic_vector(2 downto 0);

qh1,ql1,qh2,ql2,qh3,ql3,qh4,ql4:in std_logic_vector(3 downto 0); q:out std_logic_vector(3 downto 0));

end time_choose;

architecture rt1 of time_choose is

begin

process(sel)

begin

case sel is

when"000"=>q<=ql1;

when"001"=>q<=qh1;

when"010"=>q<=ql2;

when"011"=>q<=qh2;

when"100"=>q<=ql3;

when"101"=>q<=qh3;

when"110"=>q<=ql4;

when"111"=>q<=qh4;

when others=>q<="XXXX";

end case;

end process;

end rt1;

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; ENTITY display IS

PORT(

clk: IN STD_LOGIC;

qh: IN STD_LOGIC_VECTOR(3 DOWNTO 0);

ql: IN STD_LOGIC_VECTOR(3 DOWNTO 0);

qh1,ql1,qh2,ql2,qh3,ql3,qh4,ql4:in std_logic_vector(3 downto 0); sel: OUT STD_LOGIC_VECTOR(2 DOWNTO 0);

segment: OUT STD_LOGIC_VECTOR(6 DOWNTO 0));

END display;

ARCHITECTURE rt1 OF display IS

COMPONENT count8

PORT(clk:IN STD_LOGIC;

sel:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));

END COMPONENT;

COMPONENT time_choose

port(sel:in std_logic_vector(2 downto 0);

qh1,ql1,qh2,ql2,qh3,ql3,qh4,ql4:in std_logic_vector(3 downto 0); q:out std_logic_vector(3 downto 0));

END COMPONENT;

COMPONENT seg7

PORT(q:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

segment:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));

END COMPONENT;

SIGNAL sel_tmp: STD_LOGIC_VECTOR(2 DOWNTO 0);

SIGNAL q: STD_LOGIC_VECTOR(3 DOWNTO 0);

SIGNAL segment_tmp: STD_LOGIC_VECTOR(6 DOWNTO 0);

BEGIN

U0: count8 PORT MAP(clk,sel_tmp);sel<=sel_tmp;

U2: time_choose PORT MAP(sel_tmp,qh1,ql1,qh2,ql2,qh3,ql3,qh4,ql4,q);

U3: seg7 PORT MAP(q,segment_tmp);segment<=segment_tmp; END rt1;

设计总结

为期两周的课程设计,主要是以上机操作为主,在实验室查资料,编程序,画图。

设计语言主要是采用VHDL语言的自上而下的设计方法。EDA中,自上向下的设计,就是在整个设计流程中各设计环节逐步精益求精的过程,应用VHDL运行自上而下的设计,就是使用VHDL模型在所有综合级别上对硬件进行说明和仿真测试。顶层文件采用了原理图的方法设计,使各模块之间的层次关系清晰。

在秒表计时器实际设计过程中,所有的模块都是通过不同进制的计数器来实现其主要功能的,各模块之间是通过进位信号连接在一起的。前一级的进位信号作为下一级的计数clk信号,通过层次关系使设计思路清晰。一开始由于没有一定的合理的思路,走了不少弯路。在查阅了相关资料之后,解决了相关的问题,使我的程序更加优化。

通过这次课程设计,我进一步熟悉了maxplusII软件的使用和操作方法。对VHDL语言的自上向下的设计方法有了进一步的认识,在底层文件具备的条件下,使原理图可以使设置更加简单,使程序清晰,增加可读性。当然这次课程设计也存在着不足之处,计时不够足够的精确等。

附件课程设计说明书一本

课程设计文件袋一个

A3原理图一张

实验二60秒倒计时电路设计的实验报告

实验二60秒倒计时电路设计的实验报告 一、实验目的 1.进一步熟悉Quartus II混合层次化设计方法。 2.学习7段数码管的驱动设计方法。 二、实验内容 60秒倒计时电路如图1所示。其中,模块cnt_d60完成60倒计数,输出结果为2位十进制BCD码。模块SCNA_LED完成BCD码到7段数码管显示译码功能。 图1 60秒倒计时电路 图2 60秒倒计时底层电路 60倒计数模块cnt_d60底层电路如图2所示。主要由2片74192(双向十进制计数器)

构成。 模块cnt_d60和SCNA_LED的源设计文档(cnt_d60.bdf和SCAN_LED.vhd)提供给大家。要求大家建立新工程,为模块cnt_d60和SCNA_LED新建封装(*.bsf),并根据图1完成顶层60秒倒计时电路设计。 完成以上程序设计,编译时器件选择Cyclone系列的EP1C12Q240C8。引脚锁定参考表1内容。注意:应把未分配管脚置为三态输入,切记!! 表1 实验连线 1.原理图设计输入 (1)首先将模块cnt_d60和SCNA_LED的源文件放在等一下需要建立的文件中,打开QuartusII软件。 (2)选择路径。选择File/New Project Wizard。添写后以后,单击“NEXT”进入下一步。(3)添加设计文件,在File name中选择路径然后添加模块cnt_d60和SCNA_LED的源文件,点击“Next”。 (4)选择FPGA器件。Family选择Cyclone,先在Packge选择Any QFP,Pin Count 选择240,Speed grade选择8;然后在Available device中选择EP1C12Q240C8,点击“Next”。 (5)选择外部综合器、仿真器和时序分析器。设置好后,单击“NEXT”进入下一步。(6)结束设置。“工程设置统计”窗口,列出了工程的相关设置情况。最后单击“Finish”,结束工程设置。 (7)建立原理图文件。点击cnt_d60文件,然后点击File/Crete/Update/Create Symbol Files For Current file以新建原理图封装文件方式,然后以同样的方式创建原理图SCNA_LED封装文件,文件格式都为*bdf。保存原理图文件。选择File/Save As…菜单,存为testone文件,选择Edit/Insert Symbol…(或直接双击原理图空白处)打开元器件库窗口,选择合理的器件(封装好的cnt_d60文件和SCNA_LED文件都在里面)按图1完成60秒倒计时电路原理图设计,完成后选择File/Save…保存原理图。(8)综合编译。编译之前,打开原理图文件,选择Project/Set as Top-Level Entity,以确保当前编译的文件为顶层的实体文件。然后选择Processing/Start Compilation,进行综合分析,直至编译通过为止。 (9)保护设计中没有使用到的引脚。对于FPGA芯片(包括EP1C12Q240C8),在做Quartus II工程时必须将未分配的管脚置为三态输入。选择Assignments\Device… 打开工程设置窗口。在Category中选择Device项,然后在Available Devices栏中,选中EP1C12Q240器件,再单击Device & Pin Options…按钮,在弹出窗口(中选择Unused Pins栏,然后设置Reserve all unused pins为AS input tri-stated。推荐把未分配管脚置为三态输入。如未将未分配管脚置为三态输入,将可能导致主芯片或外围芯片损坏,切记!!

如何在ppt里插入一个秒表计时器

如何在P P T里插入一个秒表计时器? 【方法一】可以插入一个计时器模型,再在计时器表面插入一个文本框,然后在文本框中输入字,并设置置动画,具体数字的设置方法如下: 你可以设置数字的自定义动画: 1、先在文本框中输入10——右键——自定义动画,退出:消失——在出现的动画设置(右边)中选择:开始于鼠标单击时——点出下拉菜单选择计时:延迟1秒——也就是说在你的鼠标单击时开始倒计时。 2、再插入一个文本框,输入9——右键——自定义动画——出现:溶解——在出现的动画设置(右边)中选择:开始于上一项之后(就是一个小钟面之后)——点出下拉菜单选择计时:速度/快速(1秒)——再点出效果——动画播完后/播完动画后隐藏。 3、复制数字9,把复制的内容改为8,再复制8,把复制的内容改为7;如此循环下去只到0就行。注意:一定要先复制,再把复制的数字改为下一个数字,顺序不能错,因为这个过程也就是数字的动画出现的顺序。 【方法二】用PPT来做,超链接我就不讲了,进入正题: 用绘图栏里的工具画一个箭头,加自定义动画“强 调”-“陀螺旋”,在“计时”里把“速度”设成60秒,在“重复”里选“直到下一次单击”,然后点击一下试试,明白了吧。其余就是做个有刻度的表盘,画几个同心圆,加点文字就行。

【方法三】利用Active X控件插入动画 ---选择“视图”->“工具栏”->“控件工具箱” ---点击“其它工具图标”,从下拉列表中选择“ShockWave Flash Object”选项,鼠标变成“+”形状,将其拖动即出现Flash控件图形。 ---单击“控件工具箱”上的“属性”按钮,打开属性对话框。 ---选择“自定义”,单击“浏览”按钮,在弹出的对话框中的“Movie URL”中输入. swf文件路径及名称,并调整“play”,“quality”,“loop”等其它属性。 【方法四】插入动态文本:txtContent 场景第一帧加入下列代码: function getTime() { beginTime = new Date(); dateDiff = (()() ) / 1000); if (dateDiff >= 0) { d = (dateDiff / 60 / 60 / 24); dateDiff = dateDiff % 86400; h = (dateDiff / 60 / 60); dateDiff = dateDiff % 3600; m = (dateDiff / 60);

如何在ppt里插入一个秒表计时器

如何在PPT里插入一个秒表计时器? 【方法一】可以插入一个计时器模型,再在计时器表面插入一个文本框,然后在文本框中输入字,并设置置动画,具体数字的设置方法如下: 你可以设置数字的自定义动画: 1、先在文本框中输入10——右键——自定义动画,退出:消失——在出现的动画设置(右边)中选择:开始于鼠标单击时——点出下拉菜单选择计时:延迟1秒——也就是说在你的鼠标单击时开始倒计时。 2、再插入一个文本框,输入9——右键——自定义动画——出现:溶解——在出现的动画设置(右边)中选择:开始于上一项之后(就是一个小钟面之后)——点出下拉菜单选择计时:速度/快速(1秒)——再点出效果——动画播完后/播完动画后隐藏。 3、复制数字9,把复制的内容改为8,再复制8,把复制的内容改为7;如此循环下去只到0就行。注意:一定要先复制,再把复制的数字改为下一个数字,顺序不能错,因为这个过程也就是数字的动画出现的顺序。 【方法二】用PPT来做,超链接我就不讲了,进入正题:用绘图栏里的工具画一个箭头,加自定义动画“强调”-“陀螺旋”,在“计时”里把“速度”设成60秒,在“重复”里选“直到下一次单击”,然后点击一下试试,明白了吧。其余就

是做个有刻度的表盘,画几个同心圆,加点文字就行。【方法三】利用Active X控件插入动画 ---选择“视图”->“工具栏”->“控件工具箱” ---点击“其它工具图标”,从下拉列表中选择“ShockWave Flash Object”选项,鼠标变成“+”形状,将其拖动即出现Flash 控件图形。 ---单击“控件工具箱”上的“属性”按钮,打开属性对话框。---选择“自定义”,单击“浏览”按钮,在弹出的对话框中的“Movie URL”中输入. swf文件路径及名称,并调整“play”,“quality”,“loop”等其它属性。 【方法四】插入动态文本:txtContent 场景第一帧加入下列代码: function getTime() { beginTime = new Date(); dateDiff = Math.round((beginTime.getTime()-overTime.getTime() ) / 1000); if (dateDiff >= 0) { d = Math.floor(dateDiff / 60 / 60 / 24); dateDiff = dateDiff % 86400;

课程设计_单片机__60秒秒表汇编

目录 前言 (2) 1.总体设计方案 (3) 2硬件设计方案 (3) 2.1 电路原理 (3) 2.2 电路原理图 (4) 3.软件设计(加流程图) (6) 3.1函数流程图 (6) 3.2 算法描述 (9) 3.3源程序 (10) 4系统的安装调试 (11) 5课程设计总结与体会 (12) 6.参考文献 (14)

前言 单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。单片微型计算机简称单片机,是典型的嵌入式微控制器单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。 本次课程设计要求制作一个秒表,开始时,显示“00”,第1次按下按钮后就开始计时;第2次按按钮后,计时停止;第3次按按钮后,计时归零。

软件延时实现60秒计时器

一、实验任务 如下图所示,在A T89S51单片机的P0和P2端口分别接有两个静态共阴数码管,P0口驱动显示秒时间的十位,而P2口驱动显示秒时间的个位。 二、电路原理图 图11.1 三、硬件连线 参照教程十的方法完成硬件连线(只是去掉按键部分)。 四、程序设计内容 1在设计过程中我们用一个存储单元作为秒计数单元,当一秒钟到来时,就让秒计数单元加1,当秒计数达到60时,就自动返回到0,从新秒计数。 2对于秒计数单元中的数据要把它十位数和个数分开,方法仍采用对10整除和对10求余。 3在数码上显示,仍通过查表的方式完成。 4一秒时间的产生在这里我们采用软件精确延时的方法来完成,经过精确计算得到1秒时间为1.002秒。 DELY1S: MOV R5,#100 D2: MOV R6,#20 D1: MOV R7,#248 DJNZ R7,$

DJNZ R6,D1 DJNZ R5,D2 RET 五、程序框图 图11.2 六、汇编源程序 Second EQU 30H ORG 0 START: MOV Second,#00H NEXT: MOV A,Second MOV B,#10 DIV AB MOV DPTR,#TABLE MOVC A,@A+DPTR MOV P0,A MOV A,B MOVC A,@A+DPTR MOV P2,A LCALL DELY1S INC Second MOV A,Second CJNE A,#60,NEXT LJMP START

DELY1S: MOV R5,#100 D2: MOV R6,#20 D1: MOV R7,#248 DJNZ R7,$ DJNZ R6,D1 DJNZ R5,D2 RET TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END 七、C语言源程序 #include unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}; unsigned char Second; void delay1s(void) { unsigned char i,j,k; for(k=100;k>0;k--) for(i=20;i>0;i--) for(j=248;j>0;j--); } void main(void) { Second=0; P0=table[Second/10]; P2=table[Second%10]; while(1) { delay1s(); Second++; if(Second==60) { Second=0; } P0=table[Second/10]; P2=table[Second%10]; } }

单片机,电子秒表计时器

课程设计说明书 课程名称:《单片机技术》 设计题目:电子秒表计时器 院(部):电子信息与电气工程学院 学生姓名: 学号: 专业班级: 指导教师: 2013年5月17日

课程设计任务书

电子秒表计时器 摘要:本次设计主要完成具备基本功能的电子秒表的理论和实践设计,此计时器系统使用AT89C51单片机为中心器件,由电源电路、时钟电路、复位电路、显示电路组成。其中软件系统采用汇编语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,硬件系统利用PROTEUS软件进行仿真,使得系统能够实现三个8位LED数码管显示,显示时间为0.0~99.9秒,能正确的进行计时,能同时进行五次计时,并能对所记录的时间进行查询,此系统易于仿真、制作简单且使用方便。 关键词:AT89C51、电子秒表、数码管显示、仿真

目录 1.设计背景 (1) 1.1单片机简介 (1) 1.2设计目的 (1) 2.设计方案 (1) 2.1方案一 (1) 2.2方案二 (1) 2.3综合比较 (2) 3.方案实施 (2) 3.1整体工作原理 (2) 3.2硬件系统设计 (3) 3.3软件程序设计 (5) 3.4系统仿真 (5) 3.5系统的制作过程 (6) 4.结果与结论 (7) 4.1结果 (7) 4.2结论 (7) 5.收获与致谢 (7) 6.参考文献 (7) 7.附件 (8)

1. 设计背景 1.1单片机简介 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压、高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 1.2设计目的 电子秒表是重要的记时工具,广泛运用于各行各业中。作为一种测量工具,电子秒表相对其它一般的记时工具具有便捷、准确、可比性高等优点。不仅可以提高精确度,而且可以大大减轻操作人员的负担,降低错误率。因此电子秒表常常用于体育竞赛及各种其他要求有较精确时间的各领域中。其中开启、停止按键的使用方法与传统的机械计时器相同,即按一下开启按键,启动计时器开始计时,按一下停止按键计时终止。而复位按键可以在任何情况下使用,即使在计时过程中,只要按一下复位按键,计时应立即终止,并对计时器清零。 2.设计方案 2.1方案一 静态显示,静态显示方式下的数码管的显示字符一经确定,相应锁存器锁存的断码输出將维持不变,直到送入另一个字符的断码为止。因而此设计中使用的显示位数使用了三个8位并行I/0口。这种方法的优点是占用CPU时间少,显示便于检测和控制。缺点是硬件电路比较复杂,成本较高。 2.2方案二 动态显示,这个显示方式是将所有显示位的段码线的相应段并联在一起,由一个8位I/O口控制,将所有位数码管的段选线并连在一起,由段选线控制哪一位数码管有效。选用数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光的余晖和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些。

60秒加计时电路

课程设计报告____2010/2011 学年第一学期 课程名称:电子工艺实习 题目:60秒加计时电路 院系:计算机与信息学院电子工程系专业班级:电子信息工程081801 学号: 姓名: 指导教师: 完成日期:2010-12-15

目录 目录 (2) 前言 (3) 内容 (3) 一、实验目的 (3) 二、实验要求 (3) 三、实验器件 (3) 四、实验原理 (4) 五、调试及测试结果分析 (5) 六、实验小结或体会 (6) 附图1: (7)

前言 随着信息时代信息的到来,电子技术在社会生活中发挥着越来越重要的作用,运用模电和数电知识设计的电子产品成为社会生活中不可缺少的一部分,特别是各种竞技运动中,计数器器成为运动员成绩的一个重要工具。 一、实验目的 1.根据原理图分析各单元电路的功能; 2.熟悉电路中所用到的各集成块的管脚及其功能; 3.进行电路的装接,调试,直到电路达到规定的设计要求; 4写出完整,详细的设计报告。 二、实验要求 1、具有显示60秒可加计时功能。 2、设置外部操作开关,控制计时器的直接清零、启动和暂停/连续功能。 3、计时器为60秒递增计时器。 三、实验器件

四、实验原理 1、方案总体设计 60秒可加计时器的方案框图如下图所示。它包括秒脉冲发生器、计数器、译码显示电路、控制电路等模块组成。其中计数器和控制电路是系统的主要模块。计数器完成60秒计时功能,而控制电路完成计数器饿直接清零,启动计数、暂停/连续计数,译码显示电路功能。 秒脉冲发生器产生的的信号是电路的时钟脉冲和定时标准,但本设计对信号要求不太高,故电路采用555集成电路构成。 译码显示电路由74LS48和共阴极七段LED显示器组成。 2、计时电路的组成 设计中通过两片74LS192的级联来实现一个60进制的计数器。当低位片从0跳到9时,高位片进位加一,直到实现60秒的计数功能。计数电路的核心是置数部分。因为本设计要求从0到60,所以本设计中预置数置为0000和0000即可,又由于到60要清零,所以在十位输出端加个与非门使其到60则自动预置0从而达到实验要求。 在设计中我们选择的是同步加/减计数器74LS192。它是双时钟同步可逆计数器,是8421BCD码计数,其详细引脚图及功能表如下:

电子秒表课程设计

电子秒表 摘要 电子秒表是一种用数字电路技术实现时、分、秒计时的装置,无机械装置,具有较长的使用寿命,因此得到了广泛的使用。它从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。本次实验所做电子式秒表由信号发生系统和计时系统构成,并具有清零,暂停功能。由于需要比较稳定的信号,所以信号发生系统555定时器与电阻和电容组成的多谐振荡器构成,信号频率为100HZ。计时系统由计数器、译码器、显示器组成。计数器由74 LS160构成,由十进制计数器组成了一百进制和六十进制计数器,采用异步进位方式。译码器由74LS48构成,显示器由数码管构成。清零,暂停功能由RS触发器构成防抖动开关。具体过程为:由晶体震荡器产生100HZ脉冲信号先进入计数器,然后传入译码器,将4位信号转化为数码管可显示的7位信号,结果以“分”、“秒”、“10毫秒”依次在数码管显示出来。该秒表最大计时值为59分59.99秒,“10毫秒”为一百进制计数器组成,“分”和“秒”为六十进制计数器组成。 关键词:计时精度计数器显示器 Abstract Electronic stopwatch is the realization of a digital circuit technology,.It can realize the hour, minute, second timer.It does not have mechanical means and has a longer life, so it has been widely used. The principle is a typical digital circuit, which includes a combination logic circuit and a timing circuit. The experiments can be done by electronic stopwatch constituted by the signal system and timing system, and has cleared pause function. Due to the need of a more stable signal, the signal generating system is constituted by the 555 Timer with the resistors and capacitors, and the signal frequency is 100Hz. Timing system contains the counter, decoder, display. Counter 74 LS160 constituted by the decimal counter the decimal and sexagesimal counter, which uses asynchronous binary. The decoder from 74LS48 constitute display digital tube constitute Cleared, the pause function by the RS flip-flop. Its specific process: the 100Hz pulse signal generated by the crystal oscillator and first into the counter, and then the incoming decoder, a 4-bit signal is converted to 7-bit signal of the digital control can be displayed, the result by "minute", "second", "10 milliseconds" turn on the digital display. The stopwatch timing is 59 minutes, 59.99 seconds, 10 milliseconds is the 150 binary counter, "minute" and "second" is the six decimal counter. Keyword:Timing accuracy counter display

00-60秒表说明书

编号: 2 微机综合实践说明书 题目: 学院: 专业: 学生姓名: 学号: 指导教师单位: 指导老师:

目录 一、摘要 二、前言 2.1、设计任务及功能简介 (1) 2.2、设计项目应用及意义 (1) 三、总体方案设计 3.1、方案设计 (1) 3.2、元器件清单 (2) 四、电路原理图设计 4.1、总体电路图 (2) 4.2、复位电路设计 (3) 4.3、晶振输入电路设计 (3) 4.4、液晶显示电路 (4) 4.5、开关电路 (4) 五、系统硬件设计及说明 5.1、硬件总体设计方案 (4) 5.2、并行I/O口P0~P3结构与设计 (5) 5.3、相关硬件说明 (6) 5.4、定时/计数器工作原理 (10) 六、系统软件设计及说明 6.1、总体设计方案 (13) 6.2、程序流程图 (13) 6.3、系统程序 (15) 七、我的工作---Proteus软件仿真 7.1、软件仿真总体步骤 (15) 7.2、在PROTEUS中设计出相应的硬件电路 (16) 7.3、用keil软件生成HEX文件 (16) 7.4、烧录程序仿真 (17) 八、课程设计总结 (18) 九、附录---秒表汇编程序 (19)

一、摘要 随着电子技术的飞速发展,电子技术在相关领域的运用也是越来越广泛,人们对它的认识也相应的增加。常用于各种体育赛事以及各种要求精确时间的领域就要用到秒表计时器,秒表计时器开关的使用方法与传统的计时器相同,也就是按一下开关就开始计时,再按一下就停止,操作很是简单。而复位开关可以在任何情况下使用,即使是正在计时,只要你按下复位键,计时就立即终止而且对秒表的时间清零。这个课程设计就是利用所学到的电子元器件将脉冲源用液晶显示屏显示出来,以达到制作简易秒表的目的。除此之外,此次设计还扩展了很多内容,比如倒计时设定,可以设定时间进行倒计时。此设计可以应用到倒计时控制系统,进行定时控制等。 [关键词] 启/停开关复位按键液晶显示倒计时

比赛倒计时设计

河南科技学院机电学院电子课程设计报告 题目:比赛倒计时器设计任务书 专业班级:应用电子技术教育111班 姓名:季传帅 时间:2013.12.9~2013.12.27 指导教师:张伟邵锋完成日期:2013年12月20日

比赛倒计时器设计任务书 1.设计目的与要求 设计一个倒计时牌。准确地理解有关要求,独立完成系统设计,要求所设计的电路具有以下功能: (1)设计的倒计时牌,能直接显示时间; (2)能同时实现60秒计时,9秒暂停倒计时; (3)60秒计时结束有声音提示,9秒计时结束有灯光提示。 2.设计内容 (1)画出电路原理图; (2)元器件及参数选择; (3)电路仿真; (4)搭接所设计的电路完成设计功能。 3.编写设计报告 写出设计的全过程,附上有关资料和图纸,有总结体会。 4.答辩 在规定时间内,完成叙述并回答问题。

目录 1引言 (1) 2总体设计方案 (1) 2.1设计思路 (2) 2.2总体设计框图 (2) 3设计原理分析 (2) 3.1单元模块 (3) 3.1.1时钟模块 (3) 3.1.2报警电路模块 (3) 3.1.3倒计数器模块 (4) 3.1.4数码换显示模块 (5) 4总结与体会 (5) 参考文献 (6) 附录1实际电路图 (7) 附录2总体电路图 (8)

比赛倒计时器设计 摘要:本课程设计是脉冲数字电路的简单应用,设计了篮球竞赛60秒计时器。此计时器功能齐全,可以直接置数、启动、暂停和连续以及具有光电报警功能,同时应用了七段数码管来显示时间。此计时器有了启动、暂停和连续功能,可以方便地实现断点计时功能,当计时器递减到零时,会发出光电报警信号。本设计完成的中途计时功能,实现了在许多的特定场合进行时间追踪的功能,在社会生活中也具有广泛的应用价值。 此计时器的设计采用模块化结构,主要由以下3个组成,即计时模块、控制模块、分频模块以及译码显示模块。在设计此计时器时,采用模块化的设计思想,使设计起来更加简单、方便、快捷。此电路是以时钟产生,分频触发,倒计时计数,译码显示为主要功能,在此结构的基础上,构造主体电路和辅助电路两个部分。 关键词:比赛倒计时;控制;计时器;译码显示;555定时器 1引言 电子课程设计是电子技术学习中非常重要的一个环节,是将理论知识和实践能力相统一的一个环节,是真正锻炼学生能力的一个环节。 在许多领域中倒计时器均得到普遍应用,诸如在体育比赛,定时报警器、游戏中的倒时器,交通信号灯、红绿灯、行人灯、交通纤毫控制机、还可以用来做为各种药丸,药片,胶囊在指定时间提醒用药等等,由此可见计时器在现代社会是何其重要的。 本设计主要能完成:显示60秒倒计时功能;系统设置外部操作开关,控制计时器的直接清零、启动和暂停/连续功能;在直接清零时,数码管显示器灭灯;计时器为60秒递减计时其计时间隔为1秒;计时器递减计时到零时,同时发出光电报警信号等,当有触发信号时,实现9秒暂停倒计时。 整个电路的设计借助于Multisim10仿真软件和数字逻辑电路相关理论知识,并在Multisim10下设计和进行仿真,得到了预期的结果。 2总体设计方案 用555时基电路构成的多谐振荡器来产生频率为1Hz的脉冲,即输出周期为1秒的方波,再将该脉冲信号加到由74LS93构即周期为1秒,接着将该信号送到计数器74LS00的CP减计数脉冲端,再通过译码器4511BD把输入的8421BCD码经过内部作和电路“翻译”成七段(a,b,c,d,e,f,g)输出,显示十进制数,然后在适当的位置设置开关或控制电路即可实现计数器的直接清零,启动用第一种方案和暂停/连续、译码显示电路的显示与灭灯及声音报警等功能,声音报警用蜂鸣器来实现,蜂鸣器发声代表报警,电路图见图2。也可以用555构成的多谐振荡器直接产生频率为1Hz的秒脉冲,由于两

60秒计时器

单片机课程设计说明书 单片机课程设计说明书 题目: 00—60秒表设计学院:机电工程学院 专业:机械设计制造及其自动化学生姓名: xxx 学号: xxx 指导教师单位: xxx 姓名: xxx 2013年12月13日

摘要 60秒计时器以单片机为核心,由计时器,控制器等组成。系统采用模块化设计,主要分为计时器显示模块和按键控制模块。每个模块的程序结构简单,任务明确,易于编写、调试和修改。编程后利用Kcil软件来进行编译,在生成HEX文件装入芯片中,在通过调试实现60s计时功能。本设计中系统硬件电路主要是由以下几个部分组成:单片机AT89C51、振荡电路、显示电路和按键开关。该系统具有60s内准确计时和计时清零的功能。 关键字:单片机,计时,显示,60s计时,复位清零

前言 我们的任务是设计60s秒表计时器,用AT89C51单片机的定时/计数器T0产生一秒的定 时时间,作为秒计数时间,当一秒产生时,秒计数加1,秒计数到60时,自动从0开始,实现0到60秒的循环显示的功能。 现代计时器是用数字集成电路做成的现代计时器,与传统的机械钟相比,走时准确、显示直观(有荧光七段数码显示器)、无机械传动装置等优点。而且钟表的数字化给人 们生产生活带来了极大的方便。广泛用于个人家庭,车站,码头、办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英振荡器的广泛 应用,使得数字计时表的精度远远超过老式钟表,钟表的数字化给人们生产生活带来 了极大地方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、校时自 动打铃、时间程序自动控制、定是广播、自动启闭路灯、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字计时器及扩大其应用有着非常现实的意义。 一.概述 1.1课程设计的任务与目的 课程设计任务: 用AT89S51单片机的定时/计数器T0产生一秒的定时时间,作为秒计数时间,一秒产生时,秒计数加1,秒计数到60时,自动从0开始。额外拓展,一 个按键,实现从0开始重新计时。 课程设计目的: 课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的 训练,进行课程设计可以让学生把学过的比较零碎的知识系统化,真正的能够把学过的知识落到实处,能够开发简单的系统,也进一步激发了学生再深一步 学习的热情,因此课程设计是必不可少的,是非常必要的。 课程设计是提高学生单片机技术应用能力以及文字总结能力的综合训练环节,是配合单片机课程内容掌握应用得的专门性实践类课程,通过典型实际问题的 实际,训练学生的软硬件的综合设计、调试能力以及文字组织能力,建立系统 设计概念,加强工程应用思维方式的训练,同时对教学内容做一定的扩充。 通过课程设计,使自己深刻理解并掌握基本概念,掌握单片机的基本应用程序设计及综合应用程序设计的方法,通过做一个综合性训练题目,达到对内容 的消化、理解并提高解决问题的能力的目的。 1.2、总体方案设计

24小时制时、分、秒计时器设计报告

时钟仿真实验报告 一、任务及要求 用51单片机设计时、分、秒计时器,具体要求如下。 1、具有时、分、秒计时功能和8位数码管显示功能,显示格式为:“时-分-秒”; 2、用Proteus设计仿真电路进行结果仿真; 3、4人组成设计小组完成,小组成员有明确分工,1人负责总体方案设计及报告撰写,2人负责功能模块函数设计,1人负责仿真电路设计及调试。 4、完成程序设计、仿真电路设计、结果仿真,完成报告并上传空间课程栏目中的课程设计报告子栏目中。 二、设计方案: 1、总体方案构思:通过使用定时计数器以及中断溢出,50ms中断溢出一次,溢出20次为1S。所以当定时溢出计数变量temp自加20次时计数变量miao自加1,直到加到第60次时miao(秒)清零,并且计数变量fen自加1,直到fen加到第60次时,fen(分)清零且shi(时)

自加1,直到shi加到第24次时,shi(小时)清零。最后经译码后,通过扫描显示模块程序将得到的时钟结果以动态显示的方式显示在8位一体共阳数码管上。 2、程序功能模块说明:此时钟程序包括时钟中断计时、延时函数、显示函数等模块 3、仿真电路构成:此次时钟程序的仿真电路的设计较简单,硬件部分主要有AT89C52单片机芯片一块、八位一体LED共阳数码管一块、8个普通电阻以及8个逻辑非门。其中8个普通电阻用作P0口上拉电阻。另外,由于数码管是共阳的,而实际程序中的位码是以低电平有效的,所以八个逻辑非门用来取反单片机输出的位码。 4、时钟计时程序设计思想分析:采用定时计数器T0,工作方式1,定时50ms,再对定时溢出中断次数计数,若溢出了20次则时间为1秒! 5、函数模块程序流程图:

30秒计时器设计报告

课程设计报告 题目 30S定时器设计 院部名称 班级 学生姓名 学号 指导教师

目录 前言 一、电路设计原理与方案 (4) 1.1 设计原理 (4) 1.2 设计方案 (4) 二、各单元电路设计 (4) 2.1 脉冲发生电路 (4) 2.2 计数电路 (6) 2.3 译码显示电路 (8) 2.4 控制电路 (10) 三、仿真原理图 (11) 四、总结 (13) 附录、元件清单 (14)

前言 电子课程设计是电子技术学习中非常重要的一个环节,是将理论知识和实践能力相统一的一个环节,是真正锻炼学生能力的一个环节。 在许多领域中计时器均得到普遍应用,诸如在体育比赛,定时报警器、游戏中的倒时器,交通信号灯、红绿灯、行人灯、交通纤毫控制机、还可以用来做时间提醒设备等等,由此可见计时器在现代社会是何其重要的。 本设计主要能完成:显示30秒倒计时功能;系统设置外部操作开关,控制计时器的直接清零、启动和暂停/连续功能;在直接清零时,数码管显示器全部显示为“0”;计时器为30秒递减计时其计时间隔为0.1秒;计时器递减计时到零时,数码显示器不灭灯,同时发光二极管LED点亮,停止减计数等。 整个电路的设计借助于Multisim 12.0仿真软件和数字逻辑电路相关理论知识,并在Multisim 12.0下设计和进行仿真,得到了预期的结果。

一、电路设计原理与设计方案 1.1 设计原理 我们可以用555时基电路构成的多谐振荡器来产生频率为10Hz的脉冲,即输出周期为0.1秒的方波脉冲,将该方波脉冲信号送到计数器74LS192的CP减计数脉冲端,再通过译码器74LS48把输入的8421BCD码经过内部作和电路“翻译”成七段(a,b,c,d,e,f,g)输出,显示十进制数,然后在适当的位置设置开关或控制电路即可实现计数器的直接清零,启动和暂停/连续、译码显示电路的显示与灭灯及光电报警等功能。 1.2 设计方案 该系统应包括秒脉冲发生器、计数器、译码显示电路、辅助时序控制电路(简称控制电路)等几部分构成。其中,计数器和控制电路是系统的主要部分。计数器完成30s计时功能,而控制电路具有直接控制计数器的启动计数、暂停、连续计数、译码显示电路的显示和灭灯功能以及工作时间的调节。为了满足系统的设计要求,在设计控制电路时,应正确处理各个信号之间的时序关系。在操作直接清零开关时,要求计数器清零,数码显示器显示零。当启动开关闭合时,控制电路应封锁时钟信号CP,同时计数器完成置数功能,译码显示电路显示30s字样;当启动开关断开时,计数器开始计数;当按下十位调节开关时,计数器加1;当按下个位调节开关时,计数器同样加1;当暂停、连续开关拨在暂停位置上时,计数器停止计数,处于保持状态;当暂停、连续开关拨在连续时,计数器继续递减计数。 二、各单元电路设计 2.1 脉冲发生电路 555定时器 555定时器主要是通过外接电阻R和电容器C构成充、放电电路,并由两个比较器来检测电容器上的电压,以确定输出电平的高低和放电开关管的通断。这

课程设计——秒表计时器

天津机电职业技术学院 《电子技术》课程设计论文 电子秒表 .完成时间:2009.12.30—2010.1.6 班级:08电气自动化三班 姓名:马赛男李丽美 学号:200812065 200812060

前言 21世纪是一个电子技术和电子元件有更大发展的世纪。回顾百年来电子技术和电子工业发展的成就,举世瞩目。可以看到,从国民经济到日常生活的各个方面,电子产品无所不在,体事例无庸枚举,其发展前景未可限量。作为一个学习电子专业的大学生,我们不但要有扎实的基础知识、课本知识,还应该有较强的动手能力。现实也要求我们既精通电子技术理论,更要掌握电子电路设计、实验研究和调试技术。课程设计就是一个理论联系实际的机会。 本次设计主要完成具备基本功能的电子秒表的理论设计,电子秒表是重要的记时工具,广泛运用于各行各业中。作为一种测量工具,电子秒表相对其它一般的记时工具具有便捷、准确、可比性高等优点,不仅可以提高精确度,而且可以大大减轻操作人员的负担,降低错误率。在写本报告的过程中,摘编了生产厂家和各种电子类报刊、参考书的资料,特向提供资料的同学及作者表示感谢。由于水平有限,报告中定有不妥之处,请提出宝贵意见。

目录 一、题目-------------------------------------------------------1 二、题目说明-------------------------------------------------1 三、原理介绍-------------------------------------------------1 四、单元电路设计-------------------------------------------2 1、时基信号发生器-------------------------------------2 2、计数器-------------------------------------------------7 3、译码器-------------------------------------------------11 4、显示器-------------------------------------------------13 5、防抖开关----------------------------------------------15 五、总装图----------------------------------------------------17 六、名细表----------------------------------------------------18 七、分工情况-------------------------------------------------19 八、后记-------------------------------------------------------20 九、参考资料-------------------------------------------------21

60秒计时器课程设计 周海祥

目录 摘要 (2) 引言 (2) 一.设计目的 (2) 二.设计任务 (2) 三.电路原理设计 (2) 3-1计时器的设计原理 (2) 3-2计时器的基本逻辑功能 (3) 3-3主干电路设计 (3) 3-3-1震荡电路设计 (3) 3-3-2计数器的设计 (3) 3-3-3译码器的设计 (3) 四.电路仿真 (4) 五.系统分析 (5) 5-1基础元件介绍 (5) 5-1-1计数器 (5) 5-1-2译码器与显示管 (6) 5-1-3振荡器 (8) 5-1-4与非门 (8) 六.电路的焊接 (9) 七.调试 (9) 八.总结 (10) 参考文献 (10) 致谢 (10) 附录 (11)

74LS160构成的60秒计时器 摘要 60秒计时器是采用数字电路实现的数字显示计时装置。本系统由振荡器,计数器,译码器,LED显示器组成。采用74LS系列中小规模集成芯片。 引言 计时器是用数字集成电路做成的现代计时器,与传统的机械钟相比,它具有走时准确、显示直观(有荧光七段数码显示器)、无机械传动装置等优点。而且钟表的数字化给人们生产生活带来了极大的方便。 一.设计目的 在学完了《数字电子技术》课程的基本理论后,能够综合运用所学知识设计和制作实际需要的简单电子电路,系统地进行电子电路的工程实践训练,锻炼动手能力,培养工程师的基本技能,提高分析问题解决问题的能力。 二.设计任务 完成由74LS160构成的60秒计时器 计时器的组成:60秒计时器一般由振荡器,计时器,译码器,LED显示器组成,这些都是数字电路中应用最广泛的基本电路。 三.电路原理设计 3-1 计时器的设计原理: 先构成一个555定时器和分频器产生震荡周期为一秒的标准“秒”脉冲信号,由74LS160采用清零法分别组成六十进制的“秒”计数器。清零法适用于有异步置零输入端的集成计数器。原理是不管输出处于哪种状态,只要在清零输入端加一个有效电平电压,输出会立即从那个状态回到“0000”状态。。使用74LS48为驱动器,共阴极七段数码管作为显示器。设计图见附录一

秒计时器的设计详解

引言 《课程设计》是为了让我们更好的理解所学知识,体会理论与实践之间的联系,将所学理论真正用到实处。作为一名合格的大学生不仅需要有扎实的理论知识,还需要过硬的动手能力;《课程设计》这门课程就给了我们这样一个机会。此次课程设计,让我们用所学的数字电子技术的基础知识,设计一个秒计时器,不仅能够加深我们对电子系统设计过程的理解,而且有助于我们对书本知识的进一步深化。 本作品的实现全部采用各种门电路及计数器芯片,利用自锁开关对电路进行控制,并且计时器具有十秒报警功能。 1 设计任务及要求 1.1 设计任务 设计并制作一个秒计时器 1.2设计要求 1) 有秒计时显示功能; 2) 设定外部操作开关,控制计时器的清零、启动和暂停/连续功能; 3) 计时器为秒递减或递加计时器,其计时间隔为1s ; 4) 计时器计时值为10秒的整数倍时,有提示。 2 系统各部分设计方案介绍 2.1 设计总体方框图 图2.1.1 系统框图 2.2 系统各部分设计方案介绍 系统电源 主计数器 74ls192 10s 整数倍报警器 显示数码管 清零/启动 控制开关 秒脉冲发生器 暂停/连续 控制开关

2.2.1 秒脉冲发生器的设计 A、方案一:利用运放构成振荡器 分析:该方案电路比较简单,计算相对容易。但是,运放振荡输出不是TTL电平,需要加一个正向偏移电平才能为后级电路所用,而且该方案输出波形的边沿不够陡峭,运放一般要采用双电源供电,调节也较为困难,实现起来不太方便。综合考虑,不采用此方案。 B、方案二:对晶体振荡器的输出进行分频 分析:晶体振荡器的输出虽然很稳定,但是输出频率一般较高,如果对其进行分频,需要用到多级电路,这样中间误差会变大,而且会提高制作成本,且晶体振荡器的输出一般为正弦,要得到方波,还需要整形,这又增加了电路设计与调试的复杂度。因此,不采用该方案。 C、方案三:利用555产生1KHz脉冲,再对其进行一千分频 分析:555产生脉冲的的电路不仅具有简单、易调节的特点,而且产生的脉冲较为稳定,输出电平为TTL电平,无需整形就可以直接运用于后级电路的输入,非常符合本课题的设计要求。 设计的详细过程: ①产生脉冲的电路。 图2.2.1 1KHz脉冲产生电路

相关主题
文本预览
相关文档 最新文档