欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    EDA数字时钟课程设计.docx

    • 资源ID:9243016       资源大小:149.60KB        全文页数:10页
    • 资源格式: DOCX        下载积分:1金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要1金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    EDA数字时钟课程设计.docx

    1、EDA数字时钟课程设计EDA课程设计报告书课题名称数字时钟姓 名 学 号 院 系 专 业 指导教师 一、 设计任务及要求:1、使学生掌握EDA开发工具QuartusII5.0的常用工具的使用。2、使学生掌握EDA设计流程及输入方法。3、使学生掌握的硬件描述语言VHDL的基本应用。4、使学生掌握原理图输入、波形图输入、VHDL文本输入等硬件设计方法。5、使学生掌握硬件测试的方法,验证实际设计电路的。6、使学生了解FPGA/CPLD工作原理及结构。指导教师签名: 年 月 日 二、指导教师评语:指导教师签名: 年 月 日 三、成绩验收盖章 年 月 日 数字时钟 一设计目的综合本学期所学知识设计数字时

    2、钟,使用VHDL语言进行编程,掌握多位计数器相连的设计方法;掌握二十四进制,六十进制计数器的设计方法;掌握电子电路一般的设计方法,并了解电子产品的研制开发过程,基本掌握电子电路安装和调试的方法。培养独立分析问题,解决问题的能力。二设计的主要内容及方法1.用HDL语言编写时分秒计时器程序;2.编写顶层文件,用来对元件进行例化,以及对端口进行映射;3.编译、仿真并生成波形图;4.生成元件;三设计原理数字钟是一个将“时”“分”“秒”显示于人的视觉器官的计时装置。它的计时周期为24小时;显示满刻度为23时59分59秒,另外具备校时功能和报时功能。因此,一个基本的数字钟电路主要由“时”“分”“秒”计数器

    3、校时电路组成。将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累加60秒发送一个“分脉冲”信号,该信号将被送到“时计数器”。“时计数器”采用24进制计数器,可实现对一天24小时的累计。钟计数采用层次化设计,将设计任务分成若干个模块。规定每一模块的功能和各模块之间的接口。a.second(秒) 60进制BCD码计数;b.minute(分) 60进制BCD码计数;c.hour (时) 24进制BCD码计数;d.clock top 顶层设计;同时整个计数器有清零,调时,调分功能。端口引脚名称输入clk,reset,setmin,sethour;输出second-daout,minut

    4、e-daout,hour-daout;四设计过程 SECOND模块:用来对秒进行计时,当记到计数器的低四位为1001时,若高三位不是101时,则秒计数器加7,目的是使计数值变为BCD码。若高三位是101时,则有一进位。当计数器的低四位不为1001时,计数器加1。SECOND模块给MINUTE的时钟由SETMINUTE和它本身记到60的进位两部分组成。SECOND模块源程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity second isport(clk,reset,setmin

    5、:in std_logic; -时钟信号、复位输入端 enmin:out std_logic; -分钟进位输出daout:out std_logic_vector(6 downto 0) -秒输出端 );end entity second;architecture fun of second issignal count:std_logic_vector(6 downto 0);signal enmin_1,enmin_2:std_logic; -信号变量定义begindaout=count;enmin_2=(setmin and clk);enmin=(enmin_1 or enmin_2)

    6、;process(clk,reset,setmin)beginif(reset=1)then count=0000000; -对秒计时器清零elsif(clkevent and clk=1)then -当产生时钟上升沿是进行计数if(count(3 downto 0)=1001)then if(count16#60#)then if(count=1011001)then enmin_1=1;count=0000000;-当秒计数至59秒 产生分钟进位信号elsecount=count+7; -秒计数器加7,使计数值变为BCD码end if; else count=0000000; -对计数值清

    7、零 end if;elsif(count16#60#)thencount=count+1; -当计数值少于60时 计数值加一enmin_1=0after 100 ns;elsecount=0000000; -计数值等于60时对计数值清零end if;end if;end process;end fun;SECOND生成的元件如图4.1: 图4.1MINUTE模块:用来对分进行计时,当记到计数器的低四位为1001时,若高三位不是101时,则分计数器加7,目的是使计数值变为BCD码。若高三位是101时,则有一进位。当计数器的低四位不为1001时,计数器加1。MINUTE模块的时钟由SETMIN和S

    8、ECOND记到60的进位两部分组成。MINUTE模块源程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity minute isport(clk,reset,clk1,sethour:in std_logic;-时钟信号、复位端口定义enhour:out std_logic; -时计数信号进位端daout:out std_logic_vector(6 downto 0) 分钟计数输出 );end entity minute;architecture fun of minute is

    9、signal count:std_logic_vector(6 downto 0);signal enhour_1,enhour_2:std_logic; -信号变量定义begindaout=count;enhour_2=(sethour and clk1);enhour=(enhour_1 or enhour_2); -process(clk,reset,sethour)beginif(reset=1)then count=0000000; -对计数值复位elsif(clkevent and clk=1)then -当产生时钟上升沿是进行计数if(count(3 downto 0)=1001

    10、)then if(count16#60#)thenif(count=1011001)then enhour_1=1;count=0000000; -当计数值为59时产生小时进位信号,-并清计数值elsecount=count+7;-若高三位不是101,则分计数器加7,使计数值变为BC码 end if; else count=0000000; end if;elsif(count16#60#)thencount=count+1; -当计数值小于60时 计数值加一enhour_1=0after 100 ns; -时钟中间信号延时100纳秒置零elsecount=0000000; -当计数值等于60

    11、时 对计数清零end if;end if;end process;end fun;MINTUE生成元件如图4.2:图4.2HOUR模块:用来对时进行计数,当记到计数器的低四位为1001时,若高三位小于010时,则时计数器加7,目的是使计数值变为BCD码。当计数器的高三位小于010,低四位小于1001时,计数器加1;若当计数器记到0100100时,则有一进位。HOUR模块的时钟由SETHOUR和MINUTE记到60的进位两部分组成。HOUR模块源程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.al

    12、l;entity hour isport(clk,reset:in std_logic; -时钟信号、复位信号输入端 daout:out std_logic_vector(5 downto 0) -小时信号输出端);end entity hour;architecture fun of hour is signal count:std_logic_vector(5 downto 0); -信号变量定义begindaout=count; process(clk,reset)beginif(reset=1)thencount=000000; -当复位信号为“1”时,对计数清零elsif(clkev

    13、ent and clk=1)then - 当产生时钟上升沿时进行计数操作if(count(3 downto 0)=1001)thenif(count16#23#)thencount=count+7; -当记到计数器的低四位为1001时,若高三位小于010时, -则时计数器加7,使计数值变为BCD码。else count=000000; -当计数等于24时 对计数清零 end if;elsif(count16#23#)thencount=count+1; -当计数值小于23时 对计数值进行加一操作 elsecountreset, clk=clk, setmin=setmin, enmin=enm

    14、in_re, daout=second_daout); -秒端口关联u2:minute port map(clk=enmin_re, reset=reset, clk1=clk, sethour=sethour, enhour=enhour_re, daout=minute_daout); -分端口关联u3:hour port map(clk=enhour_re, reset=reset, daout=hour_daout); -时计数端口关联end a;生成电路元件图如图4.4:图4.4五仿真波形图计时仿真波形图如图5.1图5.1输入:CLK时钟脉冲,RESET复位信号,SETMIN分加1信

    15、号,SETHOUR秒加1信号输出:SECOND_DAOUT秒输出,MINUTE_DAOUT分输出,HOUR_DAOUT时输出时序仿真:程序主要运用计数器完成,在时钟脉冲的作用下,完成时钟功能,由时序图可以看出每一个时钟脉冲上升沿秒加1,当接收到reset信号,即reset为高电平,所有计数为零,并重新计数,setmin和sethour可以完成调节时钟功能,都是高电平调节,每来一个脉冲,相应的时或分加1。六设计总结通过两周的单片机课程设计使我对单片机这门课程有了更加深入的了解,知道它是一门需要不断地实践才能真正掌握的课程。这次单片机课程设计不仅使我熟悉手机键盘的工作原理,工作过程和所需的相关器件

    16、,而且增加对单片机编程方法,编程步骤,相应的操作流程和软件操作等的熟悉度。更重要的是使我在设计的过程中积累对数字电路简单系统的实际制作经验,培养独立设计电路系统的专业素养,也深刻认识到其他相关课程之间的联系对于我们电子信息工程专业的学生重要性。只有认真扎实的学好相应的基础课程才能在以后的学习工作中解决更加复杂困难的问题。参考文献1 彭伟,单片机C语言程序设计实训100例.北京航空航天大学出版社.2010.5.1.2 楼然苗,51系列单片机设计实例.北京航空航天出版社.2003.3:100-115.3 唐俊翟,单片机原理与应用.冶金工业出版社.2003.9:255-258.4 刘瑞新,单片机原理及应用教程.机械工业出版社,2003.7:56-89.5 吴国经,单片机应用技术.中国电力出版社,2004.1:89-103.


    注意事项

    本文(EDA数字时钟课程设计.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开