数字秒表的电路设计1
数字逻辑电路(数电)课程设计_电子秒表_VHDL实现(含完整源代码!!)
电子科技大学UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA数字逻辑设计实验报告实验题目:电子秒表学生姓名:指导老师:一、实验内容利用FPGA设计一个电子秒表,计时范围00.00 ~ 99.00秒,最多连续记录3个成绩,由两键控制。
二、实验要求1、实现计时功能:域值范围为00.00 ~ 99.00秒,分辨率0.01秒,在数码管上显示。
2、两键控制与三次记录:1键实现“开始”、“记录”等功能,2键实现“显示”、“重置”等功能。
系统上电复位后,按下1键“开始”后,开始计时,记录的时间一直显示在数码管上;按下1键“记录第一次”,次按1键“记录第二次”,再按1键“记录第三次”,分别记录三次时间。
其后按下2键“显示第一次”,次按2键“显示第二次”,再按2键“显示第三次”,数码管上分别显示此前三次记录的时间;显示完成后,按2键“重置”,所有数据清零,此时再按1键“开始”重复上述计时功能。
三、设计思路1、整体设计思路先对按键进行去抖操作,以正确的得到按键信息。
同时将按键信息对应到状态机中,状态机中的状态有:理想状态、开始状态、3次记录、3次显示、以及其之间的7次等待状态。
因为需要用数码管显示,故显示的过程中需要对数码管进行片选和段选,因此要用到4输入的多路选择器。
在去抖、计时、显示的过程中,都需要用到分频,从而得到理想频率的时钟信号。
2、分频设计该实验中有3个地方需要用到分频操作,即去抖分频(需得到200HZ时钟)、计时分频(需得到100HZ时钟)和显示分频(需得到25kHZ时钟)。
分频的具体实现很简单,需首先算出系统时钟(50MHZ)和所需始终的频率比T,并定义一个计数变量count,当系统时钟的上升沿每来到一次,count就加1,当count=T时就将其置回1。
这样只要令count=1~T/2时clk=‘0’,count=T/2+1~T时clk=‘1’即可。
VHDL数字秒表
数字秒表一设计任务设计用于体育比赛的数字秒表,要求:1.计时精度大于1/1000秒,计时器能显示1/1000秒的时间,提供给计时器内部定时器的时钟频率为10MHz;计时器的最长计时时间为1小时,为此需要一个7位的显示器,显示的最长时间为59分59.999秒。
2.设计复位和起/停开关。
(1)复位开关用来使计时器清零,并做好计时准备。
(2)起/停开关的使用方法与传统的机械式计时器相同,即按一下起/停开关,启动计时器开始计时,再按一下起/停开关时终止。
(3)复位开关可以在任何情况下使用,即使在计时过程中,只要按一下复位开关,计时器进程立即终止,并对计时器清零。
二方案选择与设计方案选择利用VHDL语言进行数字秒表设计有多种方法。
可以利用原件例化语句将各模块联系起来,也可以使用原理图的方法实现此功能,考虑到此次设计中端口众多,使用例化语句繁琐易错,因此采用了条理清晰的绘制原理图的方法生成顶层文件,实现数字秒表功能。
根据上述设计要求,可以预先设计若干个不同进制的计数器单元模块,然后将其进行例化组合来得到数字秒表系统。
要满足数字秒表的精度,首先要获得精确的计时基准信号,这里的系统精度要求为0.001秒,因此必须设置周期为0.001秒的时钟脉冲。
0.001秒、0.01秒、0.1秒、秒、分等计时单位之间的进位转换可以通过不同进制的计数器实现。
设置十进制计数器和六进制计数器,每位计数器均能输出相应计时单位计数结果,其中,十进制计数器可以实现0.01秒、0.1秒、秒、分为单位的计数,六进制计数器可以实现以10秒、10分为单位的计数。
把各级计数器级联,即可同时显示0.001秒、0.01秒、0.1秒、秒、分钟。
级联可分为串行进位方式和并行进位方式。
在串行进位方式中,以低位片的进位输出信号作为高位片的时钟输入信号。
在并行进位方式中,以低位片的进位输出信号作为高位片的工作状态信号(计数的使能信号EN),两片的CLK端同时接计数输入信号。
数电课程设计:电子秒表
数电课程设计:电子秒表
电子秒表是一种常见的计时工具,它通过使用电子元件实现高精度的计时功能。
下面是一个基于数电的电子秒表的设计方案:
1. 运算部分设计:
- 使用一个1Hz的时钟源,可以通过计数器或者振荡器实现。
- 使用一个可重置的二进制计数器,位数根据需要的计时范
围确定。
例如,如果计时范围为1小时,可使用一个4位二进制计数器。
- 计时开始/停止控制逻辑:这可以通过一个开关电路实现,可以使用一个门电路或者触发器电路。
- 计数器重置逻辑:可以使用一个按钮或者开关来重置计数
器的值。
2. 显示部分设计:
- 使用数码管或者液晶显示器来显示计时结果。
数码管可以
使用共阳或者共阴的7段数码管。
- 使用译码器将计数器的二进制输出转换为译码信号,用于
控制数码管显示的数字。
3. 其他功能:
- 可以添加一个暂停功能,通过一个按钮或者开关来实现。
当计时中按下暂停按钮时,计时器会停止计数,再次按下暂停
按钮时,计时器继续计数。
- 可以添加一个拆表功能,通过一个按钮或者开关来实现。
按下拆表按钮时,计时器会记录当前的计时值,然后重置为0,再次按下拆表按钮时,计时器恢复原来的计时状态。
该设计方案中的电子秒表可根据实际需求进行调整和扩展,例如增加更多的功能按钮、调整计时范围和精度等。
同时,需要注意电路的稳定性和可靠性,以及对供电电源和信号的处理。
期末大作业 数字秒表设计
if cnt0="1001" then
co<='1';
cnt0:="0000";
elsif cnt0<"1001" then
cnt0:=cnt0+1;
co<='0';
end if;
else cnt0:=cnt0;
end if;
end if;
secm0<=cnt0;
end process;
time:in std_logic_vector(23 downto 0);
h1,h0,m1,m0,s1,s0:in std_logic_vector(3 downto 0);
qlk:out std_logic);
end nz;
architecture sss_arc of nz is
begin
process(clk)
use ieee.std_logic_unsigned.all;
entity MINUTE is
port(clk,en,clr:in std_logic;
min1,min0:out std_logic_vector(3 downto 0);
co:out std_logic);
end MINUTE;
architecture MIN of MINUTE is
期末大作业数字秒表设计
一、实验任务及要求
设计用于体育比赛用的数字秒表,要求:
1、及时精度大雨1/1000秒,计数器能显示1/1000秒时间,提供给计时器内部定时的始终频率为12MHz;计数器的最长计时时间为1小时,为此需要一个7位的显示器,显示的最长时间为59分59.999秒。
简易数字秒表的电路设计 概述及解释说明
简易数字秒表的电路设计概述及解释说明1. 引言1.1 概述本文主要介绍了一种简易数字秒表的电路设计。
秒表是一种用于计算时间间隔的常见工具,广泛应用于日常生活和各行各业中。
传统的机械秒表用起来不够便捷,因此我们将使用电路设计来实现一个数字秒表,使其更加方便使用。
1.2 文章结构本文分为四个主要部分进行阐述。
首先,在“引言”部分中我们将对文章进行概述和介绍。
接下来,在“简易数字秒表的电路设计”部分中,我们将详细介绍设计原理、电路元件选择与说明以及电路连接与布局等内容。
然后,在“解释说明”部分中,我们将解释秒表功能的实现方法,并探讨其功能扩展可能性,并指出在电路设计过程中需要注意的问题。
最后,在“结论”部分中,我们对本次设计成果进行总结,并就可能存在的改进空间进行分析和未来应用进行展望和思考。
1.3 目的本文旨在通过详细描述并解释简易数字秒表的电路设计,提供一个清晰易懂、全面深入的指南,帮助读者了解该设计思路及其实现方法。
同时,通过对功能扩展可能性的探讨和对电路设计过程中需要注意的问题的分析,可以引导读者在实际应用和改进中做出更好的决策。
最后,通过总结和展望,为未来的研究和发展提供参考思路。
2. 简易数字秒表的电路设计2.1 设计原理:简易数字秒表的电路设计基于计时器和显示器组成。
其主要原理是利用计时器模块产生一个稳定的时间基准,然后将该时间以数字形式显示在显示器上。
2.2 电路元件选择与说明:在设计简易数字秒表的电路时,我们需要选取合适的电子元件来实现功能。
以下是一些常见的元件选择:- 计时器芯片:可选择集成型计时器芯片,如NE555等,它们具有稳定的时钟信号输出。
- 显示屏:一般选用7段LED数码管,由于它们能够直观地显示数字。
- 驱动芯片:如果使用多个7段LED数码管进行显示,则必须选择合适的驱动芯片,如74HC595等。
这些元件经过合理的选择和配套可以实现精确、稳定地测量和显示时间。
2.3 电路连接与布局:简易数字秒表电路连接和布局对功能稳定性有重要影响。
数字秒表设计报告
摘要要求设计一个计数范围在0.0-9.9秒的数字秒表,精确度为0.1秒。
电路设计基本包括0.1秒脉冲发生器、信号控制端、整形电路、计数电路、译码电路和显示器这几部分构成。
0.1秒脉冲发生器由555定时器构成的多谐振荡电路实现,信号控制端由D触发器实现,即74LS74N,能够对整个电路进行清零、计数、停止和复位的作用。
计数器由两个十进制BCD 码74LS160级联而成。
在计数器的四个输出端分别接译码器的四个置数端,译码器由74LS48实现。
这个电路设有两个开关s1,s2,来实现对电路的清零、计数、暂停、复位的控制。
这样,一个简易的数字秒表便设计完成了。
关键字:555定时器、D触发器、编码、译码ABSTRACTDesign a digital stopwatch counting range in 0.0-9.9 seconds, accuracy of 0.1 seconds. Basic including 0.1 second pulse generator circuit design, signal control terminal, shaping circuit, counting circuit, decoding circuit and a display of this a few parts. More than 0.1 second pulse generator composed of 555 timer harmonic oscillation circuit implementation, signal control comprised D flip-flop, namely 74LS74N, can be reset to the whole circuit, counting, stop and reset. Two decimal counter by BCD 74LS160 cascade. In the four output end of the counter four load respectively at the decoder side, decoder by 74LS48 implementation. This circuit is equipped with two switch S1, S2, to implement to reset circuit, counting, suspend, and reset the control. So will design a simple digital stopwatch is complete.Key Word:555 timer, D flip-flop, encoding and decoding目录摘要------------------------------------------------------------------------1 1.设计目的及要求------------------------------------------------------31.1设计目的-----------------------------------------------------------31.2设计要求-----------------------------------------------------------32.设计原理及分析------------------------------------------------------42.1设计构想框图-------------------------------------------------------42.2设计原理分析-------------------------------------------------------42.2.1多谐振荡电路------------------------------------------------42.2.2开关控制端与D触发器----------------------------------------52.2.3与非门电路--------------------------------------------------52.2.4显示译码电路------------------------------------------------53.制作过程--------------------------------------------------------------73.1布局连线-----------------------------------------------------------73.2调试---------------------------------------------------------------73.3遇到问题及解决方法-------------------------------------------------84.心得感悟--------------------------------------------------------------8参考文献------------------------------------------------------------------9附录附录一元器件清单------------------------------------------------------10 附录二电路图----------------------------------------------------------101.设计目的及要求1.1设计目的通过对数字秒表的设计,熟练掌握555定时器脉冲信号产生的原理和D触发器的功能及原理,利用所学的电子技术基础(模拟部分)知识,回顾脉冲信号产生、计数、编码、译码的原理机制,进行对生活中不可或缺的秒表的设计。
秒表计时电路设计verilog
电子科技大学通信学院秒表计时电路实验报告班级通信一班学生学号教师秒表计时电路秒表计时电路一、设计思路概述1.设计要求秒表计时功能,显示分、秒、0.01秒具有启动、暂停、停止和清空功能增加有趣的流水灯输入信号:4bit按键,50MHz时钟输出信号:6位数码管2.设计分析本设计要求秒表计时功能,显示分、秒、0.01秒,而这可以由分频电路实现,将电路的输入时钟进行分频,得到1/60Hz,1Hz,和100Hz信号,就可以达到本设计要求的显示要求了。
本设计要求具有启动、暂停、停止和清空功能,而这个可以由状态机实现,通过合理的配置状态转换,就可以达到要求。
流水灯的实现说来简单,其实也可以做的复杂,漂亮的流水灯其观赏性还是很好地,这里我们只讨论简单流水灯的实现,即单个灯从左到右逐步发光。
这实际是一个移位寄存器,我们可以通过不同的时钟来驱动它,实现不同的流水速度。
这里,我们实现了一个1Hz,和一个10Hz的流水灯电路。
二、总体设计框图及详细说明三、各部分代码设计1、500000进制计数器(分频器)设计:always @(negedge clk or negedge rst10ms)beginif (~rst10ms) beginclk10ms<=0;clk10msreg<=0;endelse if (clk10msreg == 249999) beginclk10ms<=~clk10ms ;clk10msreg<=clk10msreg+1;endelse if (clk10msreg==499999) beginclk10ms<=~clk10ms;clk10msreg<=0;endelse begin clk10msreg<=clk10msreg+1;endend2、状态机设计always @(negedge clk or negedge clear) beginif (~clear) beginstate <= idlestate; rst <= 0; rst10ms <= 0;endelse begincase (state)idlestate: beginif(~start)beginstate<= prestate; rst<=0;rst10ms<=0;endelsestate<=idlestate; endprestate: beginstate<=runstate;rst<=1;rst10ms<=1;endholdstate: beginif(~stop)beginstate<=idlestate; rst<=1;rst10ms<=0;endelse if(~start)beginstate<= runstate; rst<=1;rst10ms<=1;endelsestate<=holdstate; endrunstate: beginif(~stop)beginstate<=idlestate; rst<=1;rst10ms<=0;endelse if(~hold)beginstate<= holdstate; rst<=1;rst10ms<=0;endelsestate<=runstate;enddefault: state <= state;endcaseendend3.10进制计数器(分频器)设计module count10(rst, clk, clkout, counter);input rst;input clk;output reg clkout;output reg [3:0]counter;always @(negedge clk or negedge rst) beginif (~rst) begin clkout<=0;counter<=0;endelse if (counter == 4) begin clkout<=~clkout;counter<=counter+1; endelse if (counter == 9) begin clkout<=0;counter<=0; endelse begin counter<=counter+1;endendendmodule4、6进制计数器(分频器)设计module count6(rst, clk, clkout, counter);input rst;input clk;output reg clkout;output reg [3:0]counter;always @(negedge clk or negedge rst) beginif (~rst) beginclkout <= 0;counter <= 0;endelse if (counter == 2) beginclkout <= ~clkout;counter <= counter + 4'b1;endelse if (counter == 5) beginclkout <= ~clkout;counter <= 0;endelse begincounter <= counter + 4'b1;endendendmodule5、流水灯设计always @(negedge clk1s or negedge rst)beginif (~rst)ledg <= 8'b0;else if (ledg == 8'b0)ledg<=8'b10000000;elseledg<=(ledg>>1);endalways @(negedge clk100ms or negedge rst) beginif (~rst)ledr <= 18'b0;else if (ledr == 18'b0)ledr<=18'b100000000000000000;elseledr<=(ledr>>1);end6、显示译码电路设计always @(negedge clk or negedge rst) begin if (~rst) begindisplayreg <= 3'b000;segcode[0] <= 7'b1111111;segcode[1] <= 7'b1111111;segcode[2] <= 7'b1000000;segcode[3] <= 7'b1000000;segcode[4] <= 7'b1000000;segcode[5] <= 7'b1000000;segcode[6] <= 7'b1000000;segcode[7] <= 7'b1000000;endelse begincase (timeout[displayreg])0: segcode[displayreg] <= 7'b1000000;1: segcode[displayreg] <= 7'b1111001;2: segcode[displayreg] <= 7'b0100100;3: segcode[displayreg] <= 7'b0110000;4: segcode[displayreg] <= 7'b0011001;5: segcode[displayreg] <= 7'b0010010;6: segcode[displayreg] <= 7'b0000010;7: segcode[displayreg] <= 7'b1011000;8: segcode[displayreg] <= 7'b0000000;9: segcode[displayreg] <= 7'b0010000;default: segcode[displayreg] <= 7'b1111111;endcasedisplayreg <= displayreg + 3'b1;endend四、总体电路设计module today(key, ledr, ledg, hex, clk);input [3:0] key;input clk;output reg [17:0] ledr;output reg [7:0] ledg;output [55:0] hex;wire clear;wire start;wire stop;wire hold;assign clear = key[0];assign start = key[1];assign stop = key[2];assign hold = key[3];reg [19:0] clk10msreg;reg clk10ms;wire clk100ms;wire clk1s;wire clk10s;wire clk1min;wire clk10min;wire clk1h;reg [1:0] state;parameter idlestate = 2'b00, prestate = 2'b01, holdstate = 2'b10, runstate = 2'b11;reg rst;reg rst10ms;reg [2:0] displayreg;wire [3:0] timeout [7:0];reg [6:0] segcode[7:0];assign hex = {segcode[7], segcode[6], segcode[5], segcode[4], segcode[3], segcode[2], segcode[1], segcode[0]};always @(negedge clk or negedge clear) beginif (~clear) beginstate <= idlestate; rst <= 0; rst10ms <= 0;endelse begincase (state)idlestate: beginif(~start)beginstate<= prestate;rst<=0;rst10ms<=0;endelsestate<=idlestate;endprestate: beginstate<=runstate;rst<=1;rst10ms<=1;endholdstate: beginif(~stop)beginstate<=idlestate;rst<=1;rst10ms<=0;endelse if(~start)beginstate<= runstate;rst<=1;rst10ms<=1;endelsestate<=holdstate;endrunstate: beginif(~stop)beginstate<=idlestate;rst<=1;rst10ms<=0;endelse if(~hold)beginstate<= holdstate;rst<=1;rst10ms<=0;endelsestate<=runstate;enddefault: state <= state;endcaseendendalways @(negedge clk or negedge rst10ms)beginif (~rst10ms) beginclk10ms<=0;clk10msreg<=0;endelse if (clk10msreg == 249999) beginclk10ms<=~clk10ms ;clk10msreg<=clk10msreg+1;endelse if (clk10msreg==499999) beginclk10ms<=~clk10ms; clk10msreg<=0;endelse begin clk10msreg<=clk10msreg+1;endendcount6 min10counter(rst, clk10min, clk1h, timeout[7]); count10 min1counter (rst, clk1min,clk10min, timeout[6]); count6 sec10counter(rst, clk10s,clk1min, timeout[5]); count10 sec1counter (rst, clk1s, clk10s, timeout[4]); count10 ms100counter(rst, clk100ms, clk1s, timeout[3]); count10 ms10counter (rst, clk10ms, clk100ms, timeout[2]); assign timeout[1] = 4'b1111;assign timeout[0] = 4'b1111;always @(negedge clk or negedge rst) beginif (~rst) begindisplayreg <= 3'b000;segcode[0] <= 7'b1111111;segcode[1] <= 7'b1111111;segcode[2] <= 7'b1000000;segcode[3] <= 7'b1000000;segcode[4] <= 7'b1000000;segcode[5] <= 7'b1000000;segcode[6] <= 7'b1000000;segcode[7] <= 7'b1000000;endelse begincase (timeout[displayreg])0: segcode[displayreg] <= 7'b1000000;1: segcode[displayreg] <= 7'b1111001;2: segcode[displayreg] <= 7'b0100100;3: segcode[displayreg] <= 7'b0110000;4: segcode[displayreg] <= 7'b0011001;5: segcode[displayreg] <= 7'b0010010;6: segcode[displayreg] <= 7'b0000010;7: segcode[displayreg] <= 7'b1011000;8: segcode[displayreg] <= 7'b0000000;9: segcode[displayreg] <= 7'b0010000;default: segcode[displayreg] <= 7'b1111111;endcasedisplayreg <= displayreg + 3'b1;endendalways @(negedge clk1s or negedge rst)beginif (~rst)ledg <= 8'b0;else if (ledg == 8'b0)ledg<=8'b10000000;elseledg<=(ledg>>1);endalways @(negedge clk100ms or negedge rst) beginif (~rst)ledr <= 18'b0;else if (ledr == 18'b0)ledr<=18'b100000000000000000;elseledr<=(ledr>>1);endendmodulemodule count6(rst, clk, clkout, counter);input rst;input clk;output reg clkout;output reg [3:0]counter;always @(negedge clk or negedge rst) begin if (~rst) beginclkout <= 0;counter <= 0;endelse if (counter == 2) beginclkout <= ~clkout;counter <= counter + 4'b1;endelse if (counter == 5) beginclkout <= ~clkout;counter <= 0;endelse begincounter <= counter + 4'b1;endendendmodulemodule count10(rst, clk, clkout, counter);input rst;input clk;output reg clkout;output reg [3:0]counter;always @(negedge clk or negedge rst) beginif (~rst) begin clkout<=0;counter<=0;endelse if (counter == 4) begin clkout<=~clkout;counter<=counter+1; endelse if (counter == 9) begin clkout<=0;counter<=0; endelse begin counter<=counter+1;endendendmodule五、总结及心得体会通过这次试验,我们基本掌握了状态机的实现方法,进一步熟悉和掌握了Verilog HDL的基本使用方法。
数字秒表实验报告---EDA
数字秒表实验报告—EDA项目背景本次实验旨在使用EDA工具设计一个数字秒表电路,通过FPGA开发板进行验证,具体要求如下:1.实现毫秒计时,并可以在数码管上显示当前计时数值。
2.支持开始/暂停、清零等操作。
设计思路本次实验的数字秒表电路由以下模块构成:1.时钟发生器模块:用于产生时钟信号,以驱动计数器进行计数。
2.计数器模块:通过时钟信号进行计数,并将计数结果传递给显示模块。
3.显示模块:将计数结果转换为数码管显示的数码信号,并控制数码管进行显示。
其中,时钟发生器模块和计数器模块都是基础电路模块,在这里不再赘述,下面将着重介绍显示模块的设计。
显示模块设计显示模块主要由控制模块和数码管模块构成。
控制模块根据计数结果和当前时间,控制数码管模块显示相应的数码。
在这里,我们采用的是共阳极的数码管。
具体来说,我们将控制模块分为两个子模块:时分秒计数器和数码显存控制器。
时分秒计数器时分秒计数器通过接收计数器模块的计数结果,将其转换为时分秒,并存储在计数器寄存器中。
计数器寄存器是一个64位的寄存器,由三个16位的子寄存器组成,用于存储时分秒。
当计数器模块的计数结果为0时,时分秒计数器会重置计数器寄存器。
数码显存控制器数码显存控制器由一个6位的数据存储器和一个6位的显示寄存器组成。
当计数器模块进行计数时,显示寄存器中存储的数码信号会根据时分秒计数器的值进行更新。
同时,数码显存控制器也会控制共阳极数码管进行相应的显示操作。
原理图设计根据以上的设计思路,我们可以得到数字秒表电路的原理图如下:原理图原理图EDA设计流程设计环境本次实验使用的是Xilinx ISE Design Suite 14.7,这是一个使用VHDL进行设计的EDA工具。
设计流程1.新建工程并设置工程名、目录、设备等基本信息。
2.添加源文件,包括时钟发生器模块、计数器模块、显示模块,以及顶层模块。
将所有模块综合为一个顶层设计。
3.检查时序约束,以保证电路能够正确运行。
14年春数字电路课程设计任务书
重庆大学城市科技学院电气学院数字电路课程设计任务书课题:数字秒表的电路设计一、设计目的1.掌握数字秒表的设计、组装与调试方法。
2.熟悉集成电路的使用方法。
二、设计任务与要求1.设计任务设计一个能以两位数显示的数字秒表。
2.设计要求基本要求:(1) 两位数码显示功能,能够从“0”到“59”依次显示,显示到“56”时,蜂鸣器持续发出5秒的报警。
(2) 具有手控记秒、停摆和清零功能。
发挥部分:自动报警时,在56秒时,自动发出鸣响声,步长1s,每隔1s鸣叫一次,前两响是低音,最后一响结束为下一个循环开始。
3.设计步骤(1)根据课题,查阅相关资料。
(2)根据提供的元器件,画出系统原理框图,确定基本电路。
(3)用Multism进行仿真验证,修改。
(4)用万能电路板焊接电路,并调试。
(5)撰写课程设计报告。
三、提供的器材清单四、总结报告1.总结数字秒表电路的整体设计、安装与调试过程。
要求有电路图、原理说明、电路所需元件清单、电路参数计算、元件选择、测试结果分析。
2.分析安装与调试中发现的问题及故障排除的方法。
3.设计心得体会。
五、安装要求1、无件安装:电阻平装,二极管紧贴板,三极管根部距板0.5CM。
2、焊点:圆润光滑、无毛刺,无虚焊、假焊、错焊。
3、布线:做到“横平竖直”,无交叉,布线清爽美观。
4、连线细心,耐心,不连错,不漏连,照图反复检查。
附件1:课程设计报告格式课题:专业:班级:学号:姓名:指导教师:设计日期:成绩:重庆大学城市科技学院电气学院×××设计报告(二号黑体)一、设计目的作用(三号宋体,加粗)××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××(小四号宋体)二、设计要求(三号宋体,加粗)说明:指所设计题目的具体要求××××××××××××××××××××××××××××××××××。
数电秒表设计报告
课程名称:数字电子技术课程设计题目:电子秒表电路姓名:姜云富专业:应用电子技术班级:电子1001学号:20104536指导老师:孙俪霞时间:2011.12.20目录一、技术要求 (2)二、总体电路设计 (3)三、模块电路设计 (3)1.多谐震荡器电路 (4)2.计数器电路 (4)3.译码驱动显示电路 (5)四、总电路原理图 (6)五、元件清单 (7)六、电路板制作 (7)1.电路板布局 (7)2.电路板的焊接 (8)3.电路板的调试和检查 (8)七、设计总结 (8)1.设计中遇到的问题及解决方法 (8)2.设计体会 (9)八、参考资料 (9)一、技术要求要求设计一个数字表,用于短时间测量,适用于计时使用。
(1)计时范围:0~59秒 (2)显示分辨率为1s 。
(3)用按钮开关控制工作状态,即:暂停、清零。
(4)本身带有,工作时指示灯亮。
二、电路总体设计实验要求设计一个用于短时间测量的电子表,根据学过的相关知识可以知道和题目的要求,电路应该分为分为四个部分,分别是多谐振荡器、计数器、译码器和数码显示器。
电子秒表电路的基本组成(方框图)1 两个方案:方案一 555定时器做的,方案二 石英晶体构成石英晶做的。
方案一、用一个555定时器做出多谐振荡电路为计数电路提供计数脉冲,通过调节外围器电阻R1、R2和电容C的值使振荡电路产生1Hz的计数脉冲(即周期为1秒的信号)。
用74LS90计数器做成60进制的秒计数电路,并用7408配合反馈清零,4511三线七线译码器通过开关态控制数码管暂停。
方案二、用石英晶体构成石英晶振脉冲发生器。
计数电路是74LS90串接构成的60进制计数器可以计数到60秒(1分钟)这样控制起来比较方便、控制电路同方案一。
最终方案:方案一。
由于对方案二的石英晶振电路原来不是很熟悉,并且方案二的计数显示不符合人的一般思维方式,因此选用方案一作为最终方案。
2元器件选择4511 74ls08 74ls90 5553 参数计算充电时间T1T1=0.7(R1+R2)C=0.7*1210*0.001=0.847s放电时间T2T2==0.7 R2 C=0.7*210*0.001=0.147s电路震荡周期TT=T1+T2=0.7(R1+2R2)C电路震荡频率f=1/T=1.43/(R1+2R2)C三、模块电路设计1.多谐震荡器电路为由555构成的多谐振荡器电路,根据实验的要求需要获得1HZ的时间信号,则令f=1HZ,由上面的公式推算出:R1=5.1kΩ,R2为5KΩ微调电阻约为4592欧,C1=100uF。
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。
数字秒表电路图
数字秒表电路图
数字秒表电路如图所示。
图中的5G5544(IC1)是一块石英钟集成电路,在电路中作为秒信号发生器使用。
5G5544从③、⑤脚输出周期为2S的脉冲,经由VD3、VD4和VT1组成的非逻辑电平转换电路后,可得到秒信号的输出。
CD4518(IC2)内部封装有两个相同的十进制计数器,所以可形成二位计数,如果需要更多位的计数,可以进行多级级联。
CD4511(IC3、1C4)是BCD-7段译码/驱动集成电路,它将十进制计数器输出的BCD码译成笔画码并驱动LED数码显示器显示所计秒数。
随着秒信号的不断加入,共阴极LED数码显示器会不断显示出计数的秒数。
图:数字秒表电路图S1是清零开关,当按下S1时,CD4518的Cr端便可得到一个正脉冲,使电路清零。
因为5G5544集成电路的工作电压为1.2-2V,所以需经VD1、VD2,降压后向其提供工作电源。
电子秒表电路实验报告1
电子技术课程设计报告设计题目:电子秒表院(部):物理与电子信息学院专业班级:电子信息工程学生姓名:学号:指导教师:摘要秒表应用于我们生活、工作、运动等需要精确计时的方面。
它由刚开始的机械式秒表发展到今天所常用的数字式秒表。
秒表的计时精度越来越高,功能越来越多,构造也日益复杂。
本次数字电路课程设计的数字式秒表的要求为:显示分辨率为1s/100,外接系统时钟频率为100KHz;计时最长时间为60min,五位显示器,显示时间最长为59m59.99s;系统设置启/停键和复位键。
复位键用来消零,做好计时准备、启/停键是控制秒表起停的功能键。
针对上述设计要求,先前往校图书馆借阅了大量的数字电路设计方面的书籍,以及一本电子元件方面的工具书,以待查阅各种设计中所需要的元件。
其次安装并学习了数字电路设计中所常用的Multisim仿真软件,在课程设计过程的电路图设计与电路的仿真方面帮助我们发现了设计电路方面的不足与错误之处。
关键字:555定时器十进制计数器六进制计数器多谐振荡器目录1.选题与需求分析 (1)1.1设计任务 (1)1.2 设计任务 (1)1.3设计构思 (1)1.4设计软件 (2)2.电子秒表电路分析 (3)2.1总体分析 (3)2.2电路工作总体框图 (3)3.各部分电路设计 (4)3.1启动与停止电路 (4)3.2时钟脉冲发生和控制信号 (4)3.3 设计十进制加法计数器 (6)3.4 设计六进制加法计数器 (7)3.5 清零电路设计 (8)3.7 总体电路图: (10)4 结束语与心得体会 (12)1.选题与需求分析1.1设计任务电子秒表在生活中可广泛应用于对运动物体的速度、加速度的测量实验,还可用来验证牛顿第二定律、机械能守恒等物理实验,同时也适用于对时间测量精度要求较高的场合.测定短时间间隔的仪表。
有机械秒表和电子秒表两类。
机械秒表与机械手表相仿,但具有制动装置,可精确至百分之一秒;电子秒表用微型电池作能源,电子元件测量显示,可精确至千分之一秒,广泛应用于科学研究、体育运动及国防等方面在当今非常注重工作效率的社会环境中。
数字电路课程设计数字秒表
2.5冲不可以通过与门,计数电路就会停止,实现暂停 功能,当S1闭合时,恢复计数;当S1闭合,S2断开时,R0(1) R0(2)都 接低电平,实现计数功能。当S1闭合,S2闭合时,R0(1) R0(2)都接高 电平,实现清零功能。将S1和S2想与是为了实现当电路处于暂停状态时 不能使用清零功能。
2. 设计方案
2.1实验设计原理:
汽车尾灯控制器由时钟发生电路、分频电路、译码电路、开关驱动 电路及终端显示电路五部分组成。本实验设计时钟脉冲源采用电路板上 的1000HZ脉冲,74ls90具有分频功能, 分频电路由三片74ls90芯片组成,最终分频为1HZ。74ls738芯片及四个 与门组成译码电路, 74ls138芯片A0、A2输入端接入输入脉冲,A2端接低电平输出端, Y0、 Y1 、Y4、Y5分别与四个与门与LED灯相接。开关驱动电路由与门、或 门、非门、与非门等门电路连接而成。
11 0 X 11 X 0 X X 11
X 0 X0 0 X 0X 0 X X0 X 0 0X
Q3 Q2 Q1 Q0
0 0 00 0 0 00 1 0 01
计数
表2 当R0(1) R0(2)都接高电平时,实现清零功能。当R0(1) R0(2)都接低 电平时,实现计数功能。故将4个十进制计数器的R0(1) R0(2)相连, 由开关S2控制,实现计数和清零功能。
(3)夜间行车电路控制图
逻辑开关S3接高电位、S4接低电位时
D5、D6灯同时闪烁,表示夜间停车
逻辑开关S3、S4同时接高电位时D5、D6 灯长亮,表示夜间行车。
3. 工作总结及心得体会
实验中电路接线仍然是一个很麻烦的过程,由于这个实验门电路较多,所 以一不小心就会接错线路,或者忘记接了哪个端口。理论上成熟之后,实际操 作是一个很重要的过程。
电子技术课程设计---秒表数码显示电路数字秒表电路设计
电子技术课程设计---秒表数码显示电路数字秒表电路设计一,课题名称秒表数码显示电路数字秒表电路设计二,设计要求1. 设计1MHz时钟:2.完成0~59小时59分59秒范围内的计时:3.通过按键设置计时起点与终点,计时精度为10ms:4. 计时暂停、恢复和清零功能;5. 计时时间报警功能;三,比较和选定设计的系统方案,画出系统框图1.1,课题分析与方案确定本题要求计数至59时59分59秒,所以要用到六个数码管。
计数精度为10ms,及计数分辨率为0.01秒,所以需要相应的信号发生器。
暂停功能和清零功能通过开关进行控制。
最终方案是使用六个74LS160,六个数码管,以及两个VCC来进行设计,总体采用同步预置法。
1.2,总体设计方案及系统框图数字式秒表,必须有数字显示。
按设计要求,必须用数码管来做显示器。
题目要求59时59分59秒,则需要六个数码管。
要求计数分辨率为0.01秒,则需要相应频率的信号发生器。
总体上,采用六个74LS160计数器。
使用同步预置法,实现59时59分59秒的计时。
将两个74LS160组合,并通过同步预置法实现六十进制,六个计数器分成三组,分别对应时、分、秒的功能。
四,单元电路设计、参数计算和器件选择1.1,各个模块单元设计74LS160 芯片同步十进制计数器(直接清零)作用:1、用于快速计数的内部超前进位.2、用于n 位级联的进位输出.3、同步可编程序.4、有置数控制线.5、二极管箝位输入.6、直接清零.7、同步计数.74LS160的功能真值表。
功能表:图20引脚图:图21逻辑符号及其引脚功能图:图2274ls160中的ls代表为低功耗肖特基型芯片。
74160为标准型芯片。
结构功能一样。
2、160为可预置的十进制计数器,共有54/74160 和54/74LS160 两种线路结构型式,其主要电器特性的典型值如表3-1(不同厂家具体值有差别): 异步清零端/MR1 为低电平时,不管时钟端CP信号状态如何,都可以完成清零功能。
数字电路实验四:电子秒表
2、电子秒表的整体测试
各单元电路测试正常后,按总图把几个单 元电路连接起来,进行电子秒表的总体测试。
要求计时至少2分钟,利用参考时间源测试 其误差。
分析电子秒表误差原因。
4、自主练习 74ls90及74ls92各种进制级联。 例:2——10进制级联;
10——2进制级联; 上次布置的思考题
········
经过5分频,产生频率10HZ,周期0.1 S的计数时钟信号
T TW1 TW 2 TW1 0.7R1 R 2 C TW 2 0.7R2C
实验原理
现代电子技术实验
50HZ
5分频
10HZ
五、总电路图
现代电子技术实验
现代电子技术实验
六、实验内容
1、脉冲源的调测
现代电子技术实验
用示波器观察输出电压波形并测量其频率,调节 RW,使输出矩形波频率为50Hz,画出其波形。
产生清零信号单稳态电路来自实验原理 2、停止电路
Q=0
Q=1
现代电子技术实验
时钟信号
C
与
非 门 计数脉冲
若停止键按下, Q将变为0。
实验原理
停止电路
Q=01
Q=01
现代电子技术实验
时钟信号
C
与
非 门 无计数脉冲
停止键按下, Q=C变为0。
实验原理
现代电子技术实验
3、脉冲源电路
产生频率为50HZ,周期0.02 S的信号
2 、按下启动键开始清零计时,按 下停止键,停止。
三、实验框图
电子秒表的组成框图
现代电子技术实验
四、实验原理
Q=1
Q=0
现代电子技术实验
1、启动电路
R-S触发器
数字秒表电路课程设计
数字秒表电路课程设计一、课程目标知识目标:1. 学生能够理解数字秒表电路的基本原理,掌握计时器的工作机制。
2. 学生能够描述集成计时芯片的主要功能及其在数字秒表电路中的应用。
3. 学生能够运用电子元件搭建简单的数字秒表电路,并解释电路中各元件的作用。
技能目标:1. 学生能够运用所学知识,进行简单的电路图设计和电路搭建。
2. 学生能够操作示波器等测试设备,对数字秒表电路进行调试和故障排查。
3. 学生能够通过小组合作,完成数字秒表电路的搭建和测试,培养实际操作能力。
情感态度价值观目标:1. 学生能够认识到电子技术在日常生活和科技发展中的重要性,激发对电子学科的兴趣。
2. 学生通过实践操作,培养动手能力、观察力和解决问题的能力,增强自信心。
3. 学生在小组合作中学会沟通、协作,培养团队精神和集体荣誉感。
课程性质:本课程为电子技术实践课程,旨在帮助学生将理论知识应用于实际操作中,提高学生的实践能力和创新能力。
学生特点:学生处于高中阶段,具备一定的电子技术基础,对实践操作有较高的兴趣和好奇心。
教学要求:教师应结合学生特点,注重理论与实践相结合,引导学生主动参与实践,培养其动手能力和团队协作能力。
通过课程学习,使学生达到上述课程目标,为后续电子技术课程打下坚实基础。
二、教学内容1. 理论知识:- 数字电路基础知识:逻辑门、触发器、计数器原理。
- 集成计时芯片介绍:常见集成计时芯片的引脚功能、内部结构及其工作原理。
- 数字秒表电路原理:秒表的计时机制、显示原理。
2. 实践操作:- 电路图设计:学生根据理论知识,设计简单的数字秒表电路图。
- 电路搭建:学生利用电子元件,按照设计好的电路图搭建数字秒表电路。
- 电路调试与测试:学生使用示波器等设备,对搭建的数字秒表电路进行调试和测试。
3. 教学大纲:- 第一课时:数字电路基础知识回顾,集成计时芯片介绍。
- 第二课时:数字秒表电路原理学习,电路图设计。
- 第三课时:电路搭建,小组合作进行实践操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字秒表的电路设计
一、设计目的
1.掌握数字秒表的设计、组装与调试方法。
2.熟悉集成电路的使用方法。
二、设计任务与要求
1.设计任务
设计一个能以两位数显示的数字秒表。
2.设计要求
基本要求:
(1) 两位数码显示功能,能够从“0”到“59”依次显示,显示到“59”时,蜂鸣器发出报警。
(2) 具有停摆和清零功能。
发挥部分:
自动报警时,在56秒时,自动发出鸣响声,步长1s,每隔1s鸣叫一次,前两响是低音,最后一响结束为下一个循环开始。
3.设计步骤
(1)根据课题,查阅相关资料。
(2)根据提供的元器件,画出系统原理框图,确定基本电路。
(3)用Multism进行仿真验证,修改。
(4)用万能电路板焊接电路,并调试。
(5)撰写课程设计报告。
三、提供的器材清单。