- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EDA实鸭伴教程电子钟
内容概要 实验目的 掌握电子日历和电子时钟的原理。 熟悉同步及异步时序电路和相应计数器的设计方法。 综合应用前面的设计如计数器、分频电路、数码管扫描显示等知识。 实验要求 设计一个电子日历和电子时钟 计时功能:包括对时间和日期的计时; 校时功能:能用按钮方便地设置各时间单位计数初值,且当选择了某对象后,所对应的数码管闪烁点亮; 清零功能:能用按钮将时间清为0点0分0秒,或将日期清为00年1月1日,星期一;或将闹钟定时设置清为0点0分; 定时提醒(闹钟)的功能:能在设定的时间发出闹铃音,即持续20秒的急促的“嘀嘀”音,若按住setn键不放,可屏蔽闹铃音; 整点报时功能:每逢整点,产生“嘀嘀嘀嘀—嘟”四短一长的报时音; 显示功能:同时采用6个数码管扫描显示时间或日历或闹钟定时的值。使用显示模式切换按钮(moden),当按动不同的次数时,分别选择显示时间、日期、星期和闹钟定时。 利用GW48-SOPC+实验开发系统实现设计的编程下载 编程器件为EP1C12Q240C8; 系统时钟fclk = 20MHz; 使用实验箱上的未防抖开关键9进行显示模式切换,使用键10和键11选择设置计数初值对象和设置计数初值; 使用数码管数码1、2、4、5、7、8实现计数值的扫描显示; 使用扬声器SPEAKER播放闹铃音和整点报时音; 使用键12、键13和键14实现对时间、日期和闹钟定时的清零功能 。 实验原理 电子日历和电子时钟在设计思想上并无多少差异,二者都是利用几级分频电路对时钟信号分频计数,以达到计时的功能。 开发系统上采用的时钟信号的频率是20MHz,可分别设计计数器对其分频计数,包括计秒、分、小时、日、周、月以及年等。在每一级上显示输出,即构成了一个电子日历和时钟的模型。 为了可以随意调整计数值,还应包含设定计数初值的电路。 实验指导 1. 信号定义及下载板资源分配 输入信号 clk:系统时钟信号 20MHz,接Pin28 moden:选择显示时间或日历或闹钟定时的显示模式切换信号,接按钮开关键9 selectn:选择设置计数初值对象信号,接按钮开关键10 setn:设置计数初值信号,接按钮开关键11 clr_timen:时间复位信号,接按钮开关键12 clr_daten:日期复位信号,接按钮开关键13 clr_alarm_setn:清除闹钟定时设置信号,接按钮开关键14 输出信号 alarm:输出到扬声器的信号,产生闹铃音和整点报时音; out[7..0]:从高到低分别对应数码管的p(小数点)、g、f、e、d、c、b、a各段; scan_en[1..8]:分别驱动8个数码管数码1~8的扫描显示控制端 。 2. 设计思路 建议采用顶层图形设计方法,为快速仿真,先不考虑下载时实际使用的系统时钟是多少,假定这里的输入时钟周期为T=1ms。 将整个电路划分为7个子模块: 时钟分频子模块(两个); 按钮消抖电路子模块; 选择设置计数初值对象子模块; 分频计数子模块(关键); 闹钟定时和整点报时子模块(关键) ; 数码管扫描显示子模块; 七段码译码器子模块。 顶层图形文件ecc.bdf 顶层图形文件ecc.bdf(续) (1)时钟分频子模块 时钟分频子模块有两个 clkdiv1000.v对输入时钟(f=1KHz,T=1ms)进行1000分频,获得1Hz的时钟,作为分频计数子模块fdiv_cnt.bdf的输入时钟。 clkout必须在计够分频计数值后才有一个正跳变,这样才与实际情况相符! (1)时钟分频子模块(续) clkdiv.v对输入时钟(f=1KHz)进行250分频,获得4Hz的时钟,作为产生闹铃音,以及数码管闪烁显示的时钟信号;对输入时钟进行100分频,获得10Hz的时钟,作为设置计数初值时按下setn键能够连续快速加1的时钟信号。 clkdiv.v的仿真波形 (2)按钮消抖电路子模块 将按钮开关的负脉冲信号转换为正脉冲信号输出(其定时宽度至少为500ms,若定时长度选得过短,抖动不能够完全消除!)。 (3)选择设置计数初值对象子模块 功能 根据显示模式切换信号mode选择是显示时间,或是日历,或是闹钟定时; 在不同的显示模式下,当按动select,使计数器sel[1..0]加1计数,从而选择不同的计数初值对象(如在显示时间模式下,按动select,则可以选择是设置小时,还是设置分钟,或是设置秒); 并根据显示模式、sel[1..0]的值和set产生设置不同对象计数初值的时钟信号。 (3)选择设置计数初值对象子模块(续) 整个子模块可分成4个部分,包括3个always块和一组assign连续赋值语句: ① mode信号控制显示不同的输出信号
文档评论(0)