数字式跑表
- 格式:doc
- 大小:457.47 KB
- 文档页数:10
1.数字跑表
要求:利用8031的计数器实现数字跑表功能,利用6个LED数码管显示计时的时间,
最大计时时间为59’59”99,计时分辨率0.01秒。
控制功能:利用开关K1控制电子钟的工作方式(K1=1为正常工作方式,K1=0为清零复位方式),通过利用单脉冲发生器发出脉冲的来启动或停止计时。
使用的主要元器件:8031、6MHz的晶振、74LS373、74LS138、2764、75452、8155、
74LS240、LED数码管LC5011-11、拨动开关K1、单脉冲发生器等。
结果验证:运行程序,将拨动开关K1拨向下方(K1=0),看6个LED数码管是否显示全为0;将拨动开关K1拨向上方(K1=1),按动单脉冲发生的微动开关发出启动计时信号,看数码管上是否显示递加的计时时间;再按动单脉冲发生的微动开关发出停止计时信号,看数码管上显示的计时时间是否停止。
通过与普通跑表的比较,验证计时是否准确。
数字跑表课程设计研究内容一、课程目标知识目标:1. 学生能理解数字跑表的基本概念,掌握其计时原理和操作方法;2. 学生能运用所学知识,分析并解释数字跑表在实际运动中的应用;3. 学生了解数字跑表在体育赛事中的重要作用,掌握相关赛事规则。
技能目标:1. 学生能够熟练操作数字跑表,进行简单的计时和数据处理;2. 学生通过实际操作,培养观察、分析、解决问题的能力;3. 学生学会运用数字跑表进行运动训练,提高运动效果。
情感态度价值观目标:1. 学生培养对体育运动的兴趣,增强运动参与的积极性和主动性;2. 学生通过数字跑表的学习,认识到科技在体育领域的重要作用,增强科技创新意识;3. 学生在学习过程中,培养团队合作精神和公平竞争意识,树立正确的价值观。
课程性质:本课程为实践性较强的学科课程,结合理论知识与实际操作,注重培养学生的动手能力和实际应用能力。
学生特点:学生处于好奇心强、求知欲旺盛的年级,具有一定的逻辑思维能力和动手能力,但需加强对体育运动和科技知识的了解。
教学要求:教师应结合学生特点,采用启发式教学,引导学生主动探究数字跑表的知识,注重培养学生的实际操作能力和运动素养。
同时,关注学生的情感态度价值观培养,使学生在学习过程中形成正确的价值观。
通过分解课程目标为具体学习成果,为后续教学设计和评估提供依据。
二、教学内容1. 数字跑表基础知识:- 数字跑表的定义与功能;- 计时原理与计时方法;- 数字跑表在体育赛事中的应用。
2. 数字跑表操作与使用:- 数字跑表的结构与按键功能;- 数字跑表的操作流程;- 实际操作练习与问题解决。
3. 数字跑表在运动训练中的应用:- 运动训练中的计时需求;- 数字跑表在跑步、游泳等运动项目中的使用;- 提高运动训练效果的方法与策略。
4. 体育赛事规则与数字跑表:- 常见体育赛事的规则要点;- 数字跑表在赛事中的重要作用;- 赛事现场操作注意事项。
教学大纲安排:第一课时:数字跑表基础知识学习;第二课时:数字跑表操作与使用;第三课时:数字跑表在运动训练中的应用;第四课时:体育赛事规则与数字跑表。
电子科技大学基于FPGA的数字系统设计——数字跑表的设计学生姓名:学号:指导教师:摘要本文利用XILINX-ISE开发软件和XILINX EDA教学实验开发板实现数字跑表的开始、暂停以及复位等功能。
ISE工程利用VHDL语言编写,单模块包含时钟分频进程、始能及清零进程、时钟数据产生进程、位码产生进程和显示进程;分模块设计包含时钟分频模块、控制模块、计数器模块、显示模块。
计时区间00’00’’00到59’59’’99。
课余设计的单模块源程序:library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;---- Uncomment the following library declaration if instantiating---- any Xilinx primitives in this code.--library UNISIM;--use UNISIM.VComponents.all;entity paobiao isPort ( clkin : in STD_LOGIC;enable : in STD_LOGIC;clear : in STD_LOGIC;seg : out STD_LOGIC_VECTOR (7 downto 0);wei : out STD_LOGIC_VECTOR (2 downto 0);enout : out STD_LOGIC);end paobiao;architecture Behavioral of paobiao issignal cnt100: integer range 1 to 240000;signal cnt1k: integer range 1 to 24000;signal clk100: std_logic:='0';signal clk1k : std_logic:='0';signal en: std_logic:='0';signal d1: integer range 0 to 5:=0;signal d2: integer range 0 to 9:=0;signal d3: integer range 0 to 5:=0;signal d4: integer range 0 to 9:=0;signal d5: integer range 0 to 9:=0;signal d6: integer range 0 to 9:=0;signal num: integer range 1 to 6:=1;beginenout<='0';process(clkin)beginif clkin'event and clkin='1' thenif cnt100=240000 thencnt100<=1;clk100<=not clk100;elsecnt100<=cnt100+1;end if;if cnt1k=24000 thencnt1k<=1;clk1k<=not clk1k;elsecnt1k<=cnt1k+1;end if;end if;end process;process(enable,clear)beginif clear='0' thenen<='0';elseif enable'event and enable='1' thenen<=not en;end if;end if;end process;process(clear,d1,d2,d3,d4,d5,d6)beginif clear='0' thend1<=0;d2<=0;d3<=0;d4<=0;d5<=0;d6<=0;-- en<=0;elseif en='1' and clk100'event and clk100='1' then if d6=9 thend6<=0;if d5=9 thend5<=0;if d4=9 thend4<=0;if d3=5 thend3<=0;if d2=9 thend2<=0;if d1=5 thend1<=0;elsed1<=d1+1;end if;elsed2<=d2+1;end if;elsed3<=d3+1;end if;elsed4<=d4+1;end if;elsed5<=d5+1;end if;elsed6<=d6+1;end if;end if;end if;end process;process(num)beginif clk1k'event and clk1k='1' thenif num=6 thennum<=1;elsenum<=num+1;end if;end if;end process;process(num)variable data: integer range 0 to 9;begincase num iswhen 1 => wei<="111";data:=d1;when 2 => wei<="110";data:=d2;when 3 => wei<="100";data:=d3;when 4 => wei<="011";data:=d4;when 5 => wei<="001";data:=d5;when 6 => wei<="000";data:=d6;end case;case data iswhen 0 => seg<="00000011";when 1 => seg<="10011111";when 2 => seg<="00100101";when 3 => seg<="00001101";when 4 => seg<="10011001";when 5 => seg<="01001001";when 6 => seg<="01000001";when 7 => seg<="00011111";when 8 => seg<="00000001";when 9 => seg<="00001001";end case;end process;end Behavioral;管脚分配NET "clkin" LOC = T8;NET "enout" LOC = D7;NET "seg<0>" LOC = C11;NET "seg<1>" LOC = A11;NET "seg<2>" LOC = B12;NET "seg<3>" LOC = A12;NET "seg<4>" LOC = C12;NET "seg<5>" LOC = C13;NET "seg<6>" LOC = A13;NET "seg<7>" LOC = B14;NET "wei<0>" LOC = F8;NET "wei<1>" LOC = D8;NET "wei<2>" LOC = E7;NET "clear" LOC = E4;NET "enable" LOC = G6;课时设计一、系统总体设计指标:1、跑表精度为0.01秒2、跑表计时范围为:1小时3、设置开始计时/停止计时、复位两个按钮4、显示工作方式:用六位BCD七段数码管显示读数。
EAST CHINA INSTITUTE OF TECHNOLOGY EDA设计与应用课程设计:数字跑表的设计与仿真学院:机械与电子工程学院专业:电子科学与技术班级:1221402学号:201220140223姓名:杨卡2014年11月一、实验目的:1)进一步学习更复杂的EDA项目设计,更熟练地掌握VHDL语言设计。
2)学习动态数码管的VHDL编程。
3)更加熟练计时显示、进位和校时的编程方法。
二、实验要求:1)设计一个具有、‘分'、‘秒'、‘ 1/100 秒'的十进制数字显示的数字跑表。
2)要有外部开关,控制计数器的直接清零、启动和暂停/ 连续计时功能。
三、实验内容:1)数字跑表功能:计时精度10ms,计时范围为59分59.99秒。
设置两种模式,模式一:对单个人计数,能实现暂停、显示及清零功能,并在数码管上实时显示;模式2:实现对多个人的同时计时,在数码管上实时显示,并能在液晶显示屏上回显出 6 个时间,可控制显示。
2)数字跑表分模块设计:数字跑表设置如下的子模块。
分频模块;模式 1 控制模块;模式 2 控制模块;计时模块;数码管译码模块;液晶译码模块;液晶显示模块。
百分秒、秒和分等信号即采用BCD译码计数方式,根据上述设计要求,用Verilog 对数字跑表的描述如下。
仍然采用引脚属性定义语句进行引脚的锁定。
四、设计程序(此处只写出与课本中不同的部分)为了便于显示,百分秒、秒和分钟信号皆采用BCD码计数方式,并直接输出到6 个数码管显示出来。
根据上述设计要求,用Verilog HDL 语言对数字跑表描述如下。
/* 信号定义:CLK: CLR: PAUSE: MSH,MSL:时钟信号;异步复位信号;暂停信号;百分秒的高位和低位;SH,SL :秒的高位和低位;MH,ML:分钟的高位和低位。
*/module paobiao(CLK,CLR,PAUSE,MSH,MSL,SH,SL,MH,ML); input CLK,CLR,PAUSE; output[3:0] MSH,MSL,SH,SL,MH,ML; reg[3:0] MSH,MSL,SH,SL,MH,ML;reg cn1,cn2; //cn1 为百分秒向秒进位,cn2 为秒向分进位//**************** 百分秒计数进程,每计满100,cn1 产生一个进位*******always @(posedge CLK or posedge CLR)begin if(CLR) begin {MSH,MSL}<=8'h00; cn1<=0;end // 异步复位else if(!PAUSE) //PAUSE 为0 时正常计数,为1 时暂停计数begin if (MSL==9) begin MSL<=0;if (MSH==9) begin MSH<=0;cn1<=1;endelse MSH<=MSH+1;endelse begin MSL<=MSL+1;cn1<=0;endendend秒计数进程,每计满60,cn2 产生一个进位********* always @(posedge cn1 or posedge CLR)begin if(CLR) begin {SH,SL}<=8'h00;cn2<=0; end // 异步复位else if(SL==9)begin SL<=0;if (SH==5) begin SH<=0;cn2<=1; end else SH<=SH+1;endelse begin SL<=SL+1;cn2<=0;end end //****************** 分钟计数进程,每计满60,系统自动清零********* always @(posedge cn2 or posedge CLR) begin if(CLR) begin {MH,ML}<=8'h00;end // 异步复位else if (ML==9) begin ML<=0;if(MH==5) MH<=0;else MH<=MH+1;endelse ML<=ML+1;endendmodule五、心得体会:此次课程设计,从程序设计到仿真,我经历了一个困难重重,愈挫愈勇的过程。
摘要:本设计以Xilinx公司的XC3S200A芯片为核心,通过VHDL语言进行编程实现。
在48MHz时钟源输入下,通过分频、计数实现精度为百分之一秒的计时,最终用六位LED数码管显示,并可以通过两个按键控制跑表的复位、停止和启动。
一.引言大多数数字系统使用了两种不同的设计方法。
从硬件的角度来看,发展的动力是提高性能:更快、更小、功耗更低、价格更便宜。
这种方式需要巨额的费用,花费的时间也很长。
但是,从软件的角度看,更倾向于使用一个标准的处理器架构,这样只要开发出应用软件然后下载到这些平台即可。
但是由于对操作系统的需求、编译器的低效率等原因,也会造成大的开销。
结果,作为一种折中的方式,可编程器件就被开发出来了。
它拥有众多的优点:在高性能的平台上进行硬件设计,拥有最优化的资源,不需要操作系统,可重新配置等。
现场可编程门阵列(Field Programmable Gate Array,FPGA)是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,不但有较高的性能,同时又具备可编程逻辑的灵活性和可重用性。
二.项目任务与设计思路跑表设计指标:1、跑表精度为0.01秒2、跑表计时范围为:1小时3、设置开始计时/停止计时、复位两个按钮4、显示工作方式:用六位BCD八段数码管显示读数。
显示格式:分秒0.01秒设计思路简述:1、按键:两个按键均采用边缘触发,其中复位键按下后将强制归零并屏蔽启停键作用,启停键每次生效将使计数器的开关状态翻转一次。
2、计数:由于原始时钟频率为48MHz,故先对源时钟进行480000进制计数,以产生间隔为1ms的进位信号,对该信号进行计数并进位,可得到百分秒的计数值,以此类推,可得到十分秒、秒、十秒、分、十分的计数值,需要注意的是,对十秒和十分的计数应是六进制的。
3、LED显示:由于LED采用动态显示,位选与段选使用同一个1KHz的时钟信号进行同步。
其中位选信号从低位到高位一次点亮各位数码管,当某位数码管被点亮时,相应的段选信号就会被送至数码管,控制其显示字符。
数字跑表实验报告数字跑表实验报告一、引言数字跑表是一种用于测量时间的仪器,广泛应用于各个领域,包括运动训练、科学研究等。
本实验旨在通过使用数字跑表,探究其测量精度和使用方法,并对其优缺点进行评估。
二、实验步骤1. 实验准备在实验开始前,我们首先确认数字跑表的电池是否充足,并检查其屏幕是否清晰可见。
同时,我们还准备了一个标准的计时器作为对照组,以便比较两者的测量结果。
2. 测量准确性为了评估数字跑表的测量准确性,我们进行了多组实验。
首先,我们使用数字跑表测量了一个已知时间长度的事件,例如一个钟摆的周期。
然后,我们将数字跑表的测量结果与标准计时器的结果进行比较,计算它们之间的误差。
3. 使用方法在实验中,我们还研究了数字跑表的使用方法。
我们通过阅读说明书和观察其他人的实验过程,学习如何正确地启动和停止数字跑表,并掌握其它功能,如计次和计时。
4. 优缺点评估在实验结束后,我们对数字跑表的优缺点进行了评估。
其中,数字跑表的优点包括测量精度高、操作简便、功能多样等。
然而,它也存在一些缺点,如对电池的依赖性、容易受到外界干扰等。
三、实验结果通过多组实验,我们得出了以下结论:1. 数字跑表的测量准确性较高,与标准计时器的误差在可接受范围内。
2. 使用数字跑表的方法相对简单,只需按下启动和停止按钮即可完成计时操作。
计次和计时功能也易于掌握。
3. 数字跑表的优点包括测量精度高、操作简便、功能多样等。
这使得它在运动训练、科学研究等领域得到广泛应用。
4. 然而,数字跑表也存在一些缺点。
首先,它对电池的依赖性较高,电池电量不足时会影响正常使用。
其次,数字跑表容易受到外界干扰,如电磁波等,可能导致测量结果的误差。
四、讨论与改进在实验过程中,我们也发现了一些问题,并提出了改进的建议:1. 电池寿命:为了减少对电池的依赖性,我们建议增加数字跑表的电池容量,或者提供可充电电池选项。
2. 抗干扰能力:为了提高数字跑表的抗干扰能力,我们建议在设计中加入屏蔽措施,以减少外界干扰对测量结果的影响。
学号:课程设计题目数字跑表设计学院自动化学院专业班级姓名指导教师年月日课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目: 数字跑表设计初始条件:1.运用所学的模拟电路和数字电路等知识;2.用到的元件:实验板、电源、连接导线、74系列芯片、555芯片或微处理器等。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.设计一个具有、‘分’、‘秒’、‘1/100秒’的十进制数字显示的计时器。
2.要有外部开关,控制计数器的直接清零、启动和暂停/连续计时功能;3.严格按照课程设计说明书要求撰写课程设计说明书。
时间安排:第1天下达课程设计任务书,根据任务书查找资料;第2~4天进行方案论证,软件模拟仿真并确定设计方案;第5天提交电路图,经审查后领取元器件;第6~8天组装电路并调试,检查错误并提出问题;第9~11天结果分析整理,撰写课程设计报告,验收调试结果;第12~14天补充完成课程设计报告和答辩。
指导教师签名:年月日系主任(或责任教师)签名:年月日目录引言 (1)1设计意义及要求 (2)1.1设计意义 (2)1.2设计要求 (2)2方案设计 (3)2.1设计思路 (3)2.2 方案设计 (4)2.2.1设计方案一(个人方案)电路图 (4)2.2.2设计方案二(小组方案)电路图简单说明 (5)2.3方案比较 (6)3部分电路设计 (7)3.1计数单元 (7)3.2开始和暂停单元 (11)3.3清零功能单元 (12)3.4脉冲输出电路 (14)3.5译码及显示电路 (15)4调试与检测 (18)4.1调试中故障及解决办法 (18)4.2 调试与运行结果 (18)5仿真操作步骤及使用说明 (19)结束语 (20)参考文献 (21)附录1 (22)附录2 (23)本科生课程设计成绩评定表......................... 错误!未定义书签。
引言过去的三个世纪,我们经历了第一次工业革命,人类开始进入蒸气时代,第二次工业革命,人类开始进入电气时代并在信息革命资讯革命中达到顶峰。
第一章引言数字电子技术的应用一直在向着广度和深度扩展。
时至今日,“数字化”的浪潮几乎席卷了电子技术应用的一切领域。
由于电子产品的更新周期日益缩短,新产品开发速度日益加快,因而对电子设计自动化(EDA)提出了更高的要求,也有力地促进了EDA技术的发展和普及。
在数字集成电路方面,电路的集成度如摩尔定律(Moore’s Law)所预言的那样,以每1-2年翻一番的速度增长,使电路的复杂程度越来越高、规模越来越大。
同时,在基本技能方面,对使用EDA工具的能力也提出了更高的要求。
因此,学好EDA课程设计至关重要。
第二章 设计说明1.器件介绍-集成十进制加法计数器74160集成同步十进制加法计数器74160。
图2-1给出了74160的引脚排列图和逻辑符号图。
除了具有十进制加法计数功能外,还具有异步复位、同步预置数和计数状态保持、对输入的时钟信号进行分频等功能。
CLRN 为异步复位端,LDN 为预置数控制端,A-D 为预置状态输入端,RCO 为进位输出端,ENT 和ENP 为工作状态控制端(双使能端)。
图2-1 74160逻辑符号图 表2-1 74160功能特性 表2-2是74160的功能表,它给出了各种控制信号作用下计数器的工作状态,具体如下。
序号 CLK CLRN LDN ENP ENT 工作状态 1 × 0 × × × 复位 2 ↑ 1 0 × × 预置数 3 ↑ 1 1 1 1 正常计数 4 × 1 1 × 0 保持,且C=0 5×110 1保持表2-2 74160的功能表⑴当CLRN=0时,无论其他功能端为何状态,计数器都将复位,有QD ~QA=0000(注:QD 为状态端最高位)。
⑵当CLRN=1、LDN=0时,计数器处于预置数状态。
在出现此情况后的第一个CLK 上升沿,将预置输入端加载的数据送入计数器,即有QD ~QA=D ~A(注:D 为置入端最高位)。
课程设计数字跑表一、教学目标本课程的教学目标是使学生掌握数字跑表的基本原理和操作方法,培养学生对数字技术的兴趣和好奇心,提高学生的实践能力和创新精神。
具体来说,知识目标包括了解数字跑表的定义、结构和功能,理解数字跑表的工作原理;技能目标包括学会使用数字跑表进行计时和计数,能够进行简单的故障排除和维护;情感态度价值观目标包括培养学生对数字技术的热爱和责任感,增强学生的团队合作意识和沟通能力。
二、教学内容本课程的教学内容主要包括数字跑表的基本原理、操作方法和应用实践。
具体包括以下几个方面:1. 数字跑表的定义和分类;2. 数字跑表的结构和功能;3. 数字跑表的工作原理;4. 数字跑表的操作方法和使用注意事项;5. 数字跑表的应用实践和案例分析。
三、教学方法为了实现教学目标,本课程将采用多种教学方法相结合的方式进行教学。
包括:1. 讲授法:通过教师的讲解,使学生了解数字跑表的基本原理和操作方法;2. 讨论法:通过小组讨论,培养学生的思考能力和团队合作意识;3. 案例分析法:通过分析实际案例,使学生掌握数字跑表的应用实践;4. 实验法:通过动手实验,培养学生的实践能力和创新精神。
四、教学资源为了支持教学内容和教学方法的实施,本课程将准备以下教学资源:1. 教材:选用权威、实用的教材,为学生提供系统的学习材料;2. 参考书:提供相关的参考书籍,丰富学生的知识体系;3. 多媒体资料:制作课件、视频等多媒体资料,提高学生的学习兴趣和效果;4. 实验设备:准备数字跑表等相关实验设备,为学生提供实践操作的机会。
五、教学评估本课程的评估方式将包括平时表现、作业和考试三个部分,以全面、客观、公正地评估学生的学习成果。
平时表现将根据学生在课堂上的参与度、提问和回答问题的表现等进行评估;作业将根据学生的完成情况和质量进行评估;考试将根据学生的答题情况和得分进行评估。
评估结果将及时反馈给学生,以帮助学生了解自己的学习情况,提高学习效果。
学号:课程设计题目数字跑表设计学院自动化学院专业班级姓名指导教师年月日... .课程设计任务书学生:专业班级:指导教师:工作单位:题目: 数字跑表设计初始条件:1.运用所学的模拟电路和数字电路等知识;2.用到的元件:实验板、电源、连接导线、74系列芯片、555芯片或微处理器等。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.设计一个具有、‘分’、‘秒’、‘1/100秒’的十进制数字显示的计时器。
2.要有外部开关,控制计数器的直接清零、启动和暂停/连续计时功能;3.严格按照课程设计说明书要求撰写课程设计说明书。
时间安排:第1天下达课程设计任务书,根据任务书查找资料;第2~4天进行方案论证,软件模拟仿真并确定设计方案;第5天提交电路图,经审查后领取元器件;第6~8天组装电路并调试,检查错误并提出问题;第9~11天结果分析整理,撰写课程设计报告,验收调试结果;第12~14天补充完成课程设计报告和答辩。
指导教师签名:年月日系主任(或责任教师)签名:年月日..目录引言 (1)1设计意义及要求 (2)1.1设计意义 (2)1.2设计要求 (2)2方案设计 (3)2.1设计思路 (3)2.2 方案设计 (4)2.2.1设计方案一(个人方案)电路图 (4)2.2.2设计方案二(小组方案)电路图简单说明 (5)2.3方案比较 (7)3部分电路设计 (8)3.1计数单元 (8)3.2开始和暂停单元 (13)3.3清零功能单元 (14)3.4脉冲输出电路 (16)3.5译码及显示电路 (17)4调试与检测 (20)4.1调试中故障及解决办法 (20)4.2 调试与运行结果 (21)5仿真操作步骤及使用说明 (21)结束语 (22)参考文献 (23)附录1 (24)..附录2 (26)本科生课程设计成绩评定表......................... 错误!未定义书签。
..引言过去的三个世纪,我们经历了第一次工业革命,人类开始进入蒸气时代,第二次工业革命,人类开始进入电气时代并在信息革命资讯革命中达到顶峰。
数字跑表设计eda课程设计【原创版】目录1.数字跑表设计概述2.EDA 课程设计的目的和意义3.数字跑表的主要功能和特点4.数字跑表的设计流程5.EDA 课程设计对数字跑表设计的影响和应用正文数字跑表设计是电子设计自动化 (EDA) 课程设计中的一个重要项目,目的是让学生通过实践了解和掌握数字电路的设计方法和技巧。
数字跑表是一种能够记录跑步时间和距离的电子设备,主要功能是计时和计数,同时还具备闹钟、计时器等附加功能。
数字跑表的设计流程主要包括需求分析、系统设计、电路设计、PCB 设计、测试和调试等步骤。
在 EDA 课程设计中,学生需要使用 EDA 软件来完成数字跑表的设计。
EDA 软件能够提供可视化的电路设计和仿真环境,学生可以通过绘制原理图、PCB 图等来实现数字跑表的设计。
同时,EDA 软件还能够提供多种工具和函数库,帮助学生快速实现数字跑表的各种功能。
数字跑表的主要功能是计时和计数。
计时功能是指数字跑表能够准确地记录跑步时间,同时能够在跑步过程中实时显示跑步速度和距离。
计数功能是指数字跑表能够记录跑步的圈数和步数等信息,以便用户了解自己的跑步情况。
数字跑表还具备闹钟、计时器等附加功能,方便用户进行更多的运动训练。
EDA 课程设计对数字跑表设计具有重要的影响和应用。
通过 EDA 课程设计,学生能够学习和掌握数字电路的设计方法和技巧,提高数字电路设计和实现的能力。
同时,EDA 软件提供的可视化设计和仿真环境,能够帮助学生更好地理解数字跑表的工作原理和电路结构,加快数字跑表的设计和测试进度。
数字跑表设计是 EDA 课程设计中的一个重要项目,能够帮助学生学习和掌握数字电路的设计方法和技巧。
数字跑表的主要功能是计时和计数,同时还具备闹钟、计时器等附加功能。
西南科技大学设计报告课程名称:基于FPGA的现代数字系统设计设计名称:基于原理图的数字跑表设计姓名:学号:班级:指导教师:西南科技大学信息工程学院一、实验目的1、设计一个数字跑表,具有复位、暂停、秒表等功能二、实验原理1.完成一个具有数显输出的数字跑表计数器设计,原理图如下图所示。
、数字跑表计数器原理图任务分析:输入端口:1)复位信号CLR,当CLR=1,输出全部置0,当CLR=0,系统正常工作。
2)暂停信号PAUSE,当PAUSE=1,暂停计数,当PAUSE=0,正常计数。
3)系统时钟CLK,CLK=50MHz 输出端口:数码管驱动----DATA1,位宽14位,其中,DATA1[7:0]是数码管显示值,DATA1[14:8]是数码管控制端口屏蔽未用端口---ctr,位宽是2,将未用的两个数码管显示关闭(1)跑表的计时范围为0.01s~59min59.99s,计时精度为10ms;(2)具有异步复位清零、启动、计时和暂停功能;(3)输入时钟频率为100Hz;(4)要求数字跑表的输出能够直接驱动共阴极7段数码管显示.按照自顶向下设计,应该分为以下模块:分频----将下载板上50MHz时钟分频为周期是0.01秒的时钟,提供给百分计数计数1----百分计数,输入周期是0.01秒的时钟,计数,满100进位,注意个位,十位的不同生成计数2---60进制计数器,输入百分位,或者秒位的进位,计数,满60向高位进位,注意个位,十位的不同生成数码管显示控制----驱动数码管数据,显示控制端口。
三、实验步骤1、数码管显示驱动模块的设计(1)建立工程:file->New Project,并注意器件、EDA工具的正确选择(2)建立新Verilog HDL模块编辑窗口,选择资源类型为Verilog Module,并输入合法文件名,在文本编辑窗口输入代码。
(3)执行综合得到综合后的电路,并进行功能时序仿真。
2.计数器模块的设计设计步骤同数码管的设计,并完成模块的设计输入、综合、功能仿真。
数字跑表设计verilog原理数字跑表是一种常见的计时工具,它可以精确地记录时间,并用数字显示出来。
在现实生活中,我们可以看到跑步比赛、游泳比赛、田径比赛等许多场合都使用了数字跑表来计时。
那么,数字跑表是如何设计的呢?在本文中,我们将以Verilog原理为基础,详细介绍数字跑表的设计原理。
我们需要了解数字跑表的基本功能。
数字跑表主要包括计时、暂停、复位和显示等功能。
计时功能可以实时记录经过的时间;暂停功能可以停止计时,以便记录中间时间;复位功能可以将计时器归零,重新开始计时;显示功能可以将计时结果以数字形式显示出来。
数字跑表的设计可以分为三个主要模块:计时器模块、控制模块和显示模块。
计时器模块是数字跑表的核心部分,它使用计数器来实现计时功能。
计时器通常采用时钟信号来驱动,每个时钟周期计数器的值加1。
在Verilog原理中,我们可以使用计数器模块来实现计时器。
计数器模块的输入包括时钟信号、复位信号和暂停信号,输出为计数器的值。
当时钟信号到来时,计数器的值会自动加1;当复位信号为高电平时,计数器的值会被清零;当暂停信号为高电平时,计数器的值会被保持不变。
通过控制计数器模块的时钟信号、复位信号和暂停信号,我们可以实现数字跑表的计时、复位和暂停功能。
控制模块是数字跑表的控制中心,它根据用户的操作来控制计时器模块的运行。
控制模块通常包括计时、复位和暂停三个控制信号。
计时信号用于启动计时器,使其开始计时;复位信号用于将计数器的值清零,重新开始计时;暂停信号用于暂停计时器的运行,以便记录中间时间。
在Verilog原理中,我们可以使用状态机来实现控制模块。
状态机可以根据不同的输入信号,切换到不同的状态,从而控制计时器模块的运行。
通过控制控制模块的计时、复位和暂停信号,我们可以实现数字跑表的计时、复位和暂停功能。
显示模块用于显示计时结果。
在数字跑表中,通常使用七段数码管来显示时间。
七段数码管由7个LED灯组成,可以显示0~9的数字。
1 设计意义及要求1.1 设计意义随着社会的发展,在一些竞技比赛中,尤其是体育运动中,数字跑表的精度已经越来越高了,数字跑表扮演着越来越重要的角色,而通过一学期对数字电子技术的学习,学校安排了这次的课程设计,而我们小组的课题是数字跑表的简单设计,目的在与让学生综合运用所学的知识,对各基本器件的运用更加熟练,也更好的锻炼学生的设计思维和动手设计能力,而这也是我们作为电气专业学生的必备技能。
1.2 设计要求1)设计一个具有、‘分’、‘秒’、‘1/100秒’的十进制数字显示的计时器。
2)要有外部开关,控制计数器的直接清零、启动和暂停/连续计时功能;3)严格按照课程设计说明书要求撰写课程设计说明书。
2.1 设计思路电路主要由秒脉冲发生器,计数器,译码器显示电路和控制电路四个部分组成。
其中计数器为系统的主要部分,计数器完成计数功能;秒脉冲发生器提供脉冲信号;译码显示器显示当前数字,控制电路完成计数的启动,暂停和清零功能。
设计框图如图2—1。
图2—1 设计思路框图2.2.1设计方案一电路图在设计过程中,为了满足设计的要求,应正确处理各个信号间的关系。
该电路是由秒脉冲电路,计数器,译码器显示电路和控制电路组成。
其中计数器和控制电路是系统的主要模块,计数器是由6个74LS90构成。
控制电路完成计数器的直接清零、启动计数、暂停/连续计数、译码显示电路的显示等功能。
当启动开关闭合时,555振荡器将产生的信号送至计数器的CP信号输入端,计数器开始计时功能。
当清零//置数端处于置数端时,启动开关闭合,控制电路应封锁时钟信号CP,同时计数器完成置数功能,译码显示电路显示“00”字样;当启动开关断开时,计数器开始计数;将暂停与连续的控制开关放在555电路模块中,通过控制脉冲信号的传送来达到相应的目的。
当计数器R0端输入高电平时则全部计数器清零,进而实现整个课程设计的要求。
原理图如图2—2所示。
图2—2 方案一电路原理图2.2.2设计方案二电路图方案二和方案一的原理大同小异,该电路同样由秒脉冲电路,计数器,译码器显示电路和控制电路组成。
数字跑表课程设计数字跑表是一种广泛应用于跑步训练、体育比赛等领域的数字化计时设备。
在跑步训练中,数字跑表可以精确地测量跑步的时间、速度、里程等多个数据,帮助跑者更好地掌握自己的训练进度,并实时监测跑步的效果。
本文将针对数字跑表的设计进行分析和探讨。
数字跑表的外观设计应该简洁、实用。
跑步时需要方便携带,所以数字跑表应该尽可能轻巧,方便跑者佩戴。
同时,跑者在跑步过程中需要随时查看时间、速度、里程等数据,所以数字跑表上的显示屏应该大而清晰,方便跑者在运动中进行观察。
数字跑表的功能设计应该全面,并且操作简便。
数字跑表可以设置多个运动模式,如跑步、步行、骑行等,方便跑者根据不同的运动方式进行数据记录。
同时,数字跑表还应该具备计时、计速、计步、心率监测、睡眠监测等多项功能,以满足不同跑者的需求。
操作上,数字跑表的按键应该布局合理,方便跑者在运动中快速操作。
另外,数字跑表还可以与智能手机等设备进行连接,方便将数据同步到手机上进行分析和保存。
在软件设计上,数字跑表的界面应该简洁明了,功能分布清晰。
主界面可以设置为时间、距离以及消耗的卡路里等数据的显示,方便跑者在运动中快速浏览自己的运动情况。
另外,数字跑表可以提供历史记录查询、数据分析等功能,帮助跑者对自己的训练情况进行综合评估和分析。
数据的存储可以通过云端存储或者手机APP进行管理,方便跑者随时查看和分享自己的跑步数据。
数字跑表的设计应该充分考虑跑者的需求和使用习惯。
在计时功能上,数字跑表可以提供倒计时功能,方便跑者进行间隔训练。
在计步功能上,数字跑表可以提供步数提醒功能,帮助跑者掌握自己的运动量。
另外,数字跑表还可以配备GPS模块,实时定位和计算跑步的里程和速度。
对于心率监测功能,数字跑表可以配备心率带,实时监测跑者的心率情况。
数字跑表的设计还可以考虑加入社交功能,方便跑者与朋友、其他跑者进行数据分享和竞赛。
同时,数字跑表还可以提供健康指导和运动建议,帮助跑者全面了解自己的身体状况和运动效果,提供科学合理的训练建议。
/*信号定义:CL K: CL K 为时钟信号;CLR:为异步复位信号;PAUSE:为暂停信号;MSH,M SL:百分秒的高位和低位;SH,S L:秒信号的高位和低位;MH,ML:分钟信号的高位和低位。
*/mo dulepaobi ao(CL K,CLR,PAUS E,MSH,MSL,SH,SL,MH,M L); input CLK,CLR;inpu t PAU SE;outpu t[3:0] MSH,MSL,SH,SL,MH,M L;r eg[3:0] MS H,MSL,SH,S L,MH,ML;reg c n1,cn2; //cn1 为百分秒向秒的进位,c n2 为秒向分的进位//百分秒计数进程,每计满100,c n1 产生一个进位alwa ys @(posed ge CL K orposed ge CL R)b eginif(C LR) b egin//异步复位{M SH,MS L}<=8'h00;cn1<=0;endelse if(!PAUSE) //P AUSE为0 时正常计数,为1 时暂停计数b eginif(M SL==9) beg in王金明:《V erilo g HDL程序设计教程》- 55-MS L<=0;if(MSH==9)b eginMSH<=0; cn1<=1; endelse MSH<=MSH+1;e nde lse b eginMSL<=MSL+1; cn1<=0;endendend//秒计数进程,每计满60,cn2产生一个进位al ways@(pos edgecn1 o r pos edgeCLR)begi nif(CLR) begi n //异步复位{SH,S L}<=8'h00;cn2<=0;endelse if(S L==9) //低位是否为9begi nSL<=0;if(S H==5) begi n SH<=0; c n2<=1; endels e SH<=SH+1;en del seb eginSL<=S L+1;cn2<=0; en den d//分钟计数进程,每计满60,系统自动清零alwa ys @(posed ge cn2 orposed ge CL R)b eginif(C LR)begin {MH,ML}<=8'h00; end //异步复位e lse i f(ML==9) b eginML<=0;i f(MH==5) M H<=0;els e MH<=MH+1;en del se ML<=ML+1;e ndendm odule。
课程设计说明书(小初号字距4磅黑体加黑居中)课程名称:数字电子课程设计题目:数字式跑表学生姓名:专业:网络工程班级:网络11-3班学号:指导教师:日期: 2013 年 6 月 28日数字式跑表一、设计任务与要求设计一个以0.01s为基准计时信号的实用数字式跑表。
基本要求:(1)跑表计时显示范围0~99min59.99s(2)具有清零、启动计时、暂停计时及继续计时功能,操作按键(或开关)不超过2个(3)时钟源误差不超过0.01s提高要求:(4)显示最大值可达23h59min59.99s,有整点、半点提醒功能(5)有定时功能(6)有倒计时功能二、方案设计与论证跑表的原理图及简要说明(分层次进行说明,如顶层设计和底层设计分开说明)图一:数字跑表输入输出示意图输入有三个信号,CLR=1时清零,CLR=0时跑表从零开始计数;时钟信号CLK,周期为0.01秒;当PAUSE=0时跑表暂停计数,PAUSE=1时跑表从当前值继续计数。
输出分别为分钟、秒钟、百分秒的BCD码,各用数码管显示。
显示部分:显示显示显示显示显示显示译码器译码器译码器译码器译码器译码器一百进制计数器六十进制计数器六十进制计数器图二:数字式跑表逻辑图三、单元电路设计与参数计算原理图主要由3个计数器各自连接其译码器构成。
其中两个模60的分别输出分钟、秒钟,还有一个模100的输出百分秒。
全原理图采用串行接法,外加一个总体清零端,另一个时钟信号使能端作为PAUSE信号输入。
1.计数器图三:74LS160管脚图及功能表74LS160为异步清零计数器,即RD端输入低电平,不受CP控制,输出端立即全部为“0”,功能表第一行。
74LS160具有同步预置功能,在RD端无效时,LD端输入低电平,在时钟共同作用下,CP上跳后计数器状态等于预置输入DCBA,即所谓“同步”预置功能(第二行)。
RD和LD都无效,ET或EP任意一个为低电平,计数器处于保持功能,即输出状态不变。
只有四个控制输入都为高电平,计数器(160)实现模10加法计数,Q3 Q2Q1Q=1001时,RCO=1。
图四:模60计数器模60计数器采用串行进位,部分异步清零接法。
图五:模100计数器模100计数器采用串行进位,不需要清零接法。
2.译码器电路是将数码转换为一定的控制信号。
在此由7447集成元件构成,它能将一个二进制数码转换为输出端的电平信号以控制显示器。
下图为7447的管脚图:LT’,RBI’接逻辑开关,D,C,B,A接8421码拨开开关,a,b,c,d,e,f,g七段分别接显示器对应的各段。
地线,电源线接好后,若线路无误后,接通电源就开始。
实验论证:(1) LT’=0,其余状态为任意态,这时LET数码管全亮。
(2)再用一根导先把0电平接到BI’/RBO’端,这时数码管全灭,不显示,这说明译码器显示是好的。
(3)断开BI’/RBO’与0电平相连的导线,使BI’/RBO’悬空。
且使LT’=1,这时按动8421码拨码开关,输入D,C,B,A四位8421码二进制数,显示器就显示相应的十进制数。
(4)在(3)步骤后,仍使LT’=1,BI’/RBO’接LED发光二极管,此时若RBI’=1按动拨码开关,显示器正常显示工作。
若RBI’=0,按动拨码开关8421码输出为0000时,显示器全灭,这时BI’/RBO’端输出为低电平即LED 发光二极管全灭这就是“灭零”功能。
3.七段数码管(LED):7段数码管又分共阴和共阳两种显示方式。
如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS48的相对应的驱动端上(也是abcdefg)。
此时若显示数字1,那么译码驱动电路输出段bc为高电平,其他段扫描输出端为低电平,以此类推。
如果7段数码管是共阳显示电路,那就需要选用74LS47译码驱动集成电路。
共阳就是把abcdefg的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到74LS47相应的abcdefg输出端上。
无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了。
限流电阻的选取是:5V电源电压减去发光二极管的工作电压除上10ma 到15ma得数即为限流电阻的值。
发光二极管的工作电压一般在1.8V--2.2V,为计算方便,通常选2V即可。
发光二极管的工作电流选取在10-20ma,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏。
对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的瓦数。
下图是八段数码管(LED)的示意图,图中引脚6为VCC的为共阳数码管,引脚6为GND的为共阴数码管。
本设计采用阳数码管与74LS47匹配,同时并入一个四输入内置译码器的7段数码管,以验证译码部分的功能。
四、总电路工作原理及元器件清单1.总原理图控制电路:用两个简单的逻辑电平就可以控制整个电路的运转。
计数器电路:从进位制来分,有二进制计数器,十进制计数器等多种形式。
在此采用的74LS160十位二进制计数器,即8421编码方式。
其中,分别用两个160构成一个60进制计数器和两个100进制计数器。
译码器电路:是将数码转换为一定的控制信号。
在此由74LS47集成元件构成,它能将十个二进制数码转换为输出端上的电平信号以控制显示器。
显示器电路:有辉光数码管和荧光数码管等多种显示电路。
此次设计中采用的是共阳极七段LED显示器。
2.电路完整工作过程描述(总体工作原理)首先,时钟脉冲为100Hz,保证了计数时跑表的单位为0.01S。
用一个逻辑电平和输入脉冲相与,当逻辑电平为0时,与门输出0,整个电路处于暂停状态;当逻辑电平为1时,与门输出1,整个电路处于计数状态。
然后,U2和U3构成100进制计数器,用来显示0.01~0.99S;U4和U5构成60进制计数器,用来显示0~59S;U7和U11同样构成100进制计数器,用来显示0~99min。
U6,U8,U9,U10,U13,U27作为四输入七输出译码器,分别与上面的六个数码管配合起来显示相对应的数字。
3.元件清单元件序号型号主要参数数量备注1 NC7S08 3 控制脉冲输入2 74LS160 6 用于计数3 74LS47 6 用于译码4 数码管 6 用于显示数字5 非门() 4 控制高位输入6 与非门(74LS00) 2 实现与非功能五、仿真调试与分析调试的时候没有出现错误。
六、结论与心得一周的课程设计已经结束,不是很辛苦,但给我带来了从未有过的体验与喜悦。
在设计实践的过程中,我深深的体会到必须要有扎实的知识基础,要熟练地掌握课本上的知识,这样才能对试验中出现的问题进行分析解决。
在整个电路的设计过程中,花费时间最多的是利用Multisim 仿真,因为以前没有学过这个软件,所以我们要从头学起,自行摸索的学习。
我们在各个单元电路的连接上花费了大量时间。
我们在设计时曾做出了两套方案以及仿真电路,我们仔细比较分析其原理以及可行的原因,这才确定了我们的电路。
实习过程中,我深刻的体会到在设计过程中,要考虑到各个元器件的功能和特性,要翻阅大量资料,参考别人的经验,只有这样才能把自己的电路设计的成功。
通过这次对数字式秒表的设计与制作,让我了解了设计电路的程序,也让我了解了关于数字秒表的原理与设计理念。
在此次的数字秒表设计过程中,我更进一步地熟悉了芯片的结构、管脚图、功能表及掌握了各芯片的工作原理和其具体的使用方法。
而且这些知识是对我们大学生来说十分宝贵的实践经验,是无法在课堂上获得的,是现今社会最重视的同时也是我们最需要提高的部分。
在设计电路中,完成电路图只是完成了设计的一小部分,更加困难的是对电路的验证和纠错,在这过程中我接触到了很多未接触过的检查方法和思想。
在电路的仿真过程中出错的主要原因都主要是接线的错误所引起的。
接线的时候一定要细心,不要接错,同时也要学会如何判别芯片的功能,要是芯片不具备要求的功能,或者,不匹配,即使接线再正确也出不来结果。
对自己的设计要仔细考虑,是否可行,尤其是进位输出,着重看看进位的CP脉冲是否正确等。
总体来说,通过这次课程设计学习,我越发感觉电子设计不是死板的东西,是有很大科学性与艺术性的。
不同芯片的使用,不同的接线方法,不同的变量,不同的实现思路,经过组合后几乎可以称之为艺术。
这次课程设计使我对各种电路都有了大概的了解,在平时的理论学习中遇到的问题都一一解决,加深了我对数字电子电路的了解,培养了我对学习的兴趣,为以后的学习打下了好的开端,我受益匪浅。
同时,让我明白:电子设计容不得纸上谈兵,只有自己动手实际操作才会有深刻理解,才会有收获,所谓“千里之行,始于足下”,这次课程设计最大的意义在于让我们迈出了通往工程师的第一步。
再次感谢课设指导老师的指导和帮助过我的同学们。
七、参考文献[1]数字电子技术及应用(李继凯,杨艳)[2]彭介华.电子技术课程设计指导[M].北京:高等教育出版社[3]孙梅生,李美莺,徐振英. 电子技术基础课程设计[M]. 北京:高等教育出版社[4]梁宗善. 电子技术基础课程设计[M]. 武汉:华中理工大学出版社[5]张玉璞,李庆常. 电子技术课程设计[M]. 北京:北京理工大学出版社[6]谢自美.电子线路设计·实验·测试(第二版)[M].武汉:华中科技大学出版社。