EDA 课程设计报告 数字时钟.doc

上传人:仙人指路1688 文档编号:4146420 上传时间:2023-04-07 格式:DOC 页数:22 大小:210KB
返回 下载 相关 举报
EDA 课程设计报告 数字时钟.doc_第1页
第1页 / 共22页
EDA 课程设计报告 数字时钟.doc_第2页
第2页 / 共22页
EDA 课程设计报告 数字时钟.doc_第3页
第3页 / 共22页
EDA 课程设计报告 数字时钟.doc_第4页
第4页 / 共22页
EDA 课程设计报告 数字时钟.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《EDA 课程设计报告 数字时钟.doc》由会员分享,可在线阅读,更多相关《EDA 课程设计报告 数字时钟.doc(22页珍藏版)》请在三一办公上搜索。

1、淮阴工学院EDA技术与应用课程设计报告选题名称: 电子时钟设计 系(院): 计算机工程学院专 业:计算机科学与技术(嵌入式系统软件设计)班 级: 嵌入式 1091 姓 名: 王 荣 学 号: 1091306422 指导教师: 赵建洋 马岱 顾相平 学年学期: 2011 2012 学年 第 2 学期2012年 6 月 21 日设计任务书课题名称电子时钟设计设计目的1. 了解电子时钟的功能;2. 理解EDA开发应用系统的基本思路及方法;3. 练习使用vhdl语言编写应用程序的基本步骤;4. 学习EDA开发过程及资料收集与整理,学会撰写课程设计报告;5. 学会对所学知识进行总结与提高;实验环境1Wi

2、ndows 2000以上操作系统;2QURTUS 6.0开发环境;任务要求1. 利用课余时间去图书馆或上网查阅课题相关资料,深入理解课题含义及设计要求,注意材料收集与整理;制定完整的设计方案,结合框图进行说明。2. 给出主要模块的VHDL程序。3. 在第18周末之前完成预设计,并请指导教师审查。通过后方可进行下一步工作;4. 按指导书要求设计软件,实现设计的功能,并显示正确的结果;5. 要求形成稳定的程序软件,可以在实验箱上进行下载验证,方可申请参加答辩;工作进度计划序号起止日期工 作 内 容12012.6.182012.6.18在预设计的基础上,进一步查阅资料,完成硬件电路设计。22012.

3、6.182012.6.19编写软件代码, 调试与完善。32012.6.192012.6.21测试程序,优化代码,增强功能,撰写课程设计报告。42012.6.212012.6.21提交软件代码、硬件电路成果和设计报告,参加答辩。指导教师(签章): 年 月 日 摘要:随着大规模集成电路技术和计算机技术的不断发展,在涉及通信、国防、航天、医学、工业自动化、计算机应用、仪器仪表等领域的电子系统设计工作中,EDA技术的含量正以惊人的速度上升;电子类的高新技术项目的开发也逾益依赖于EDA技术的应用。即使是普通的电子产品的开发,EDA技术常常使一些原来的技术瓶颈得以轻松突破,从而使产品的开发周期大为缩短、性

4、能价格比大幅提高。不言而喻,EDA技术将迅速成为电子设计领域中的极其重要的组成部分。本设计中我们运用EDA课程中所学的知识,设计了一个拥有时间校正和闹钟功能的24小时制多功能数字时钟。通过本次课程设计,我们初步了解EDA的设计过程;初步掌握用VHDL语言的设计方法和设计思想;初步熟悉Quartus II 6.0软件平台的编程和仿真,并通过EDA实验板下载模拟实现初步了解了硬件实现的方法。关键词:EDA;数字时钟;VHDL;Quartus II 6.0;闹钟;仿真目录1 课题综述11.1 课题来源11.2 预期目标11.3 面对的问题22 系统设计及分析22.1 涉及的基础知识22.2 实验方案

5、62.3 程序流程图73 程序代码73.1 库,程序包以及实体定义73.2 结构体功能84 程序运行与调试134.1 实验结果13总 结16参考文献171 课题综述1.1 课题来源电子钟亦称数显钟(数字显示钟),是一种用数字电路技术实现时、分、秒计时的装置,与机械时钟相比,直观性为其主要显著特点,且因非机械驱动,具有更长的使用寿命,相较石英钟的石英机芯驱动,更具准确性。电子钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及车站、码头、剧院、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大地方便。目前,在国内,电子钟因LCD数字显示效用直接有效,所以大多运用在城市的主要营业场所

6、,以及车站、码头等公共场所。在对公共场所的电子钟设定的时候,使用者还可根据周边的气候、温度等对LCD屏进行设置。同时,因为LCD的显示耗电量很省,所以能够保持持续的工作效果。 夜间在睡觉的时候,床头如果放个带投影功能的电子钟,可以不用起床,直接让时间显示在天花板上,非常直观与有效。现在生产的大部分汽车中,车内前方仪表盘旁边一般也都自带电子钟功能,采取蓝色背景光板成像效果,非常清晰。相对于其他时钟类型,它的特点可归结为“两强一弱 ”:比机械钟强在观时显著,比石英钟强在走时准确,但是它的弱点为显时较为单调。1.2 预期目标本次课程设计的主要目的旨在通过独立完成一个 “电子时钟”的设计,达到对EDA

7、技术的熟练掌握,提升对EDA技术及应用课程所学内容的掌握和应用。在本次课程设计中使用Altera公司的EP2C5Q系列的208C8芯片,基于实验室现有的EDA实验箱,实现“电子时钟”的设计要求。(1)计数24小时的时钟 (2)六位数码管显示“时分秒” (3)五个功能键Timer 从其它状态放回时钟状态Alarm 切换到闹钟时间的设定Set 按一下,跳到下一个设置区Down 按一下,所设置区的数字减1Up 按一下,所设置区的数字加1(4)带有闹钟功能;(5)键盘的设定值要求在LED上显示。1.3 面对的问题电子时钟设计需要掌握和了解如下几个知识:数码管时间显示设计,时间校准设计,闹钟设定设计,蜂

8、鸣器的工作。2 系统设计及分析2.1 涉及的基础知识2.1.1 时间显示设计24小时制显示当前时间:小时用8与7数码管,分钟用5与4位数码管,秒由2与1位数码管表示,小时与分钟之间、分钟与秒之间用3和6位数码管显示“”,总计八位七段数码显示管。此模式下显示当前时间。图2-1 显示译码电路原理可将BCD码转换为数字显示码,有四个输入引脚,此七个输出引脚分别对应到七段译码器的a,b,c,d,e,f,g这七段LED,实验班用的LED是共阴极的,因此七段译码器的真值表如上图所示。七段译码程序如下所示:case cnt is - To display the time. when 0 = L dled

9、dled dled null; end case; when 1 = L dled dled dled dled dled dled dled dled dled dled null; end case; when 2 = L=101; - Enable the third display. dled L dled dled dled dled dled dled null; end case; when 4 = L dled dled dled dled dled dled dled dled dled dled null; end case; when 5 = L=010; - Enabl

10、e the sixth display. dled L dled dled dled dled dled dled null; end case; when 7 = L dled dled dled dled dled dled dled dled dled dled null; end case; end case;2.1.2 时间校准设计通过一个开关的两种电平,来打开个关闭一个二输入与非门,另一个输入端接1Hz的信号。因此这个开关实现了1Hz信号是否加入电路的作用,开关打在高电平上,1Hz信号通过与非门,开关打在低电平上,与非门输出为高电平。把与非门的输出信号,和时钟正常走时所需要的时钟信

11、号,一起通过与门,加给分个位时钟信号的输入端即可,这样分校时开关打在高电平上,分个位以1Hz的频率跳动起来,分校时开关打在低电平上时,正常走时。同理小时校准与此相同。将time键置于0, 运用功能键set键对八位数码管进行选择,并由功能键up键进行+1与down键进行-1操作,通过此4个功能键进行校时设置。输入:time状态转换键,set数码管选定键,up+1键,down-1键输出:设定后的 秒,分,小时 时间校准代码如下:if time=0 thenif ( d=0 and clk_1=1)then set if(k=0 and clk_2=1)then hourH=hourH+1; els

12、if( p=0 and clk_3=1)then hourH if( k=0 and clk_2=1)then hourL= hourL+1; elsif( p=0 and clk_3=1)then hourL if(k=0 and clk_2=1)then minuteH= minuteH +1; elsif( p=0 and clk_3=1)then minuteH if( k=0 and clk_2=1)then minuteL= minuteL+1; elsif( p=0 and clk_3=1)then minuteL if(k=0 and clk_2=1)then secondH=

13、 secondH +1; elsif(p=0 and clk_3=1)then secondH if( k=0 and clk_2=1)then secondL= secondL +1; elsif( p=0 and clk_3=1)then secondLnull;end case;end if;2.1.3 闹钟设定设计将time键置于1,设定模式与校时时设定一样,运用功能键set键对八位数码管进行选择,并由功能键up键进行+1与down键进行-1操作,通过此4个功能键进行校时设置。Set-数码管7- Set-数码管6- Set-数码管5- Set-数码管4- Set-数码管3- Set-数

14、码管2- Set-数码管1 ;Up-+1;down-1;与校时操作类似,只是先将time键置于1, 再运用功能键set键对八位数码管进行选择,并由功能键up键进行+1与down键进行-1操作,通过此4个功能键进行校时设置输入:time状态转换键,set数码管选定键,up+1键,down-1键输出:所定的闹钟时间 秒,分,小时2.1.4 整点蜂鸣器报时运用软件进行设置,当minuteH与minuteL均为零时,蜂鸣器响,也就是每次整点时,蜂鸣器自动响一分钟,如果想设置响的时间,可以手动改即可。并且可以手动按下功能键naozhong,这样就可以手动关闭蜂鸣器。输入:naozhong关闭蜂鸣器键输出

15、:蜂鸣器发出蜂鸣声2.2 实验方案输入一个250KHZ的方波信号,运用VHDL语言对其进行编译,用计数器对方波信号进行技术,当 cnt=2500000时,secondl自动+1,不断进行累加,可以达到实现数字钟自动计时功能。并且此多功能数字钟设有5个功能键,(1)time键控制显示状态,可以选择时钟状态与闹钟状态的转换(2)naozhong键可以手动关闭蜂鸣器(3) set键可以选择需要改变的数码管,以便进行调时与设定闹钟(4)up键对对应的数据进行+1操作(5)down键对对应的数据进行-1操作。通过次5个功能键,便可实现多功能数字时钟,拥有计时/校时功能,设定闹钟功能,整点报时功能。校时电

16、路秒计数器分计数器分译码器秒译码器分显示器秒显示器时译码器时计数器时显示器报时振荡器分频器图2-2总体框架图2.3 程序流程图电子时钟设计程序流程图如下所示。图2-3 程序流程图3 程序代码我主要完成校准模块代码编写(包括时间校准与闹钟设定校准),因此对主程序和其他模块不做详细的解释。3.1 库,程序包以及实体定义library IEEE;use IEEE.std_logic_1164.all;entity timer isport(clk : in std_logic; - System clock input port(250KHz). naozhong:in std_logic; L :

17、 out std_logic_vector(2 downto 0); dled: out std_logic_vector(7 downto 0); time:in std_logic; sound: out std_logic;clk_1:in std_logic; clk_2:in std_logic; clk_3:in std_logic);end timer;3.2 结构体功能architecture display of timer is signal cnt: integer range 0 to 7; - 8 seven-segment displays seletion cou

18、nter. signal ct:integer range 0 to 250000 ; - 1 second generator counter. signal hourH,ahourH,alarm_hourH: integer range 0 to 2; signal minuteH,secondH,aminuteH,asecondH,alarm_minuteH,alarm_secondH: integer range 0 to 6; signal hourL,minuteL,secondL,ahourL,aminuteL,asecondL,alarm_hourL,alarm_minuteL

19、,alarm_secondL: integer range 0 to 10;signal set : integer range 0 to 7;signal d,k,p: std_logic; begin process (clk) begin if clkevent and clk = 1 then sound=1; cnt=cnt+1; ct=ct+1; if ct=250000 then - 1 second ct=0; secondL=secondL+1; end if; if secondL=10 then - 10 seconds secondL=0; secondH=second

20、H+1; end if; if secondH=6 then - 60 seconds(1 minute) secondH=0; minuteL=minuteL+1; end if; if minuteL=10 then - 10 minutes minuteL=0; minuteH=minuteH+1; end if; if minuteH=6 then - 60 minutes(1 hour) minuteH=0; hourL=hourL+1; end if; if hourL=10 then - 10 hours hourL=0; hourH=hourH+1; end if; if ho

21、urH=2 and hourL =4 then - 24 hours hourH=0; hourL=0; end if; if (time=0) thenahourH=hourH;ahourL=hourL;aminuteH=minuteH;aminuteL=minuteL;asecondH=secondH;asecondL=secondL;elsif(time=1)thenahourH=alarm_hourH;ahourL= alarm_hourL;aminuteH= alarm_minuteH;aminuteL= alarm_minuteL;asecondH= alarm_secondH;a

22、secondL L dled dled dled null; end case; when 1 = L dled dled dled dled dled dled dled dled dled dled null; end case; when 2 = L=101; - Enable the third display. dled L dled dled dled dled dled dled null; end case; when 4 = L dled dled dled dled dled dled dled dled dled dled null; end case; when 5 =

23、 L=010; - Enable the sixth display. dled L dled dled dled dled dled dled null; end case; when 7 = L dled dled dled dled dled dled dled dled dled dled null; end case; end case;-校时-d=clk_1; -定义按键1选择改变数码管k=clk_2; -定义按键2增加数码管显示数字p=clk_3; -定义按键3减少数码管显示数字if time=1 then设置闹钟时间if ( d=0 and clk_1=1)then -确定按下

24、了clk_1键 set if(k=0 and clk_2=1)then-确定按下了clk_2键 alarm_hourH= alarm_hourH+1;-设置闹钟小时的高位加1来改变 elsif( p=0 and clk_3=1)then 确定按下了clk_3键 alarm_hourH if( k=0 and clk_2=1)then -确定按下了clk_2键 alarm_hourL= alarm_hourL+1; -设置闹钟小时的低位加1来改变 elsif( p=0 and clk_3=1)then 确定按下了clk_3键 alarm_hourL if(k=0 and clk_2=1)then

25、 alarm_minuteH= alarm_minuteH +1; -设置分钟的高位+1 elsif( p=0 and clk_3=1)then alarm_minuteH if( k=0 and clk_2=1)then-设置分钟的低位 alarm_minuteL= alarm_minuteL+1; -设置分钟的低位+1 elsif( p=0 and clk_3=1)then alarm_minuteL if(k=0 and clk_2=1)then-设置秒钟的高位 alarm_secondH= alarm_secondH +1; -设置秒钟的高位+1 elsif(p=0 and clk_3=1)then alarm_secondH if( k=0 and clk_2=1)then-设置秒钟的低位 alarm_secondL= alarm_secondL +1; -设置秒钟的低位+1 elsif( p=0 and clk_3=1)then alarm_secondLnull;end case;end if;if time=0 then-设置实时时间,以下部分具与闹钟设置原理相同if

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号