ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:148.75KB ,
资源ID:2258713      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2258713.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大连理工大学数电实验报告.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大连理工大学数电实验报告.docx

1、大连理工大学数电实验报告大连理工大学本科实验报告题目:数字钟课程名称:数字电路课程设计学院(系): 电子信息工程 专 业: 电子 班 级: 电子1301班 * * 学 号: *2 完成日期:2015年7月18日 成 绩: 2014 年 7 月 18 日注意:本页要求放在实验报告第一页课程设计得分表考 勤课程设计50分考试40分作业合计最后得分 一、数字钟课程设计要求:1、设计一个具有时、分、秒的十进制数字显示(小时从0023)计时器。 2、整点报时。两种方法任选其一:发出仿中央人民广播电台的整点报时信号,即从59分50秒起,每隔2秒钟发出一次低音“嘟”的信号,连续5次,最后一次要求高音“嘀”的

2、信号,此信号结束即达到整点。“嘟”是500Hz左右的频率输出,“嘀”是1000Hz左右的频率输出通过LED闪烁实现,闪烁频率及花型可自己设计并在这里说明。3、手动校时、校分、校秒。4、定时与闹钟功能,能在设定的时间发出闹铃声。 5、设计一个秒表,显示1%秒到60秒、手动停止。6、设计一个倒计时,显示小时、分钟、秒。7、其他创新。第1题25分,其他每题5分二、课程设计考试(40分,每题分):考试题目: 1、实体名 2、计数器 3、异步清零 4、进位输出 5、仿真图 6、数码管输出 7、分频 8、元件例化 9、引脚分配 10、下载 一、设计要求1、设计一个数字钟,能够显示当前时间,分别用6个数码管

3、显示小时、分钟、秒钟的时间,秒针的计数频率为1Hz,可由系统脉冲分频得到。2、整点报时,可通过LED闪烁实现,闪烁频率及花型可自己设计。3、能够调整小时和分钟的时间,调整的形式为通过按键进行累加。4、具有闹钟功能,闹钟时间可以任意设定(设定的形式同样为通过按键累加),并且在设定的时间能够进行提示,提示同样可以由LED闪烁实现。二、设计分析及系统方案设计数字计时器一般都由振荡器、分频器、计数器、译码器、显示器等几部分组成。其中振荡器和分频器组成标准秒信号发生器,由不同进制的计数器、译码器和显示器组成计时系统。秒信号送入计时器进行计数,把累积的结果以时、分、秒、的数字显示出来。时显示由二十四进制计

4、数器、译码器、显示器构成,分、秒 显示由六十进制计数器、译码器、显示器构成。原理框图如下: 时十位 时个位 分十位 分个位 秒十位 秒个位 三、系统以及模块硬件电路设计系统的管脚配置如下表所示:四、系统的VHDL设计1.系统所用的库:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;2.系统顶层实体名及内容entity time isport(clk,rst,stop,pls,plm,plh:in std_logic; alarmstart:

5、in std_logic; p,q,r,t,u,v:out std_logic_vector(6 downto 0);-时钟数码管输出 w,x:out std_logic_vector(6 downto 0);-闹钟小时数码管输出 y,z:out std_logic_vector(3 downto 0);-闹钟分钟输出 alarm:out std_logic;-闹钟开关 reptime:out std_logic);-清零end;architecture data of time is signal clk1s,clk1sp,clk10s,clk1m,clk1mp,clk10m,clk1h,c

6、lk1hp,rep:std_logic; signal a,b,c,d,e,f:std_logic_vector(3 downto 0); signal alarmstart1:std_logic; signal alarm1m,alarm10m,alarm1h,alarm10h:std_logic_vector(3 downto 0);begin3.时钟部分process(stop) begin case stop is when 0=clk1spclk1spclk1mpclk1mpclk1hpclk1hp=plh; end case;end process;process(clk,rst)

7、 variable num:integer range 0 to 49999999; begin if rst=0 then num:=0; elsif rising_edge(clk) then if num=49999999 then num:=0; else num:=num+1; end if; if num25000000 then clk1s=0; else clk1s=1; end if; end if;end process;4.时钟校时部分 process(clk1sp,rst) begin if rst=0 then a=0000; elsif clk1spevent an

8、d clk1sp=1 then if a=1001 then a=0000; else a=a+1; end if;end if; if a=0000 then clk10s=1; else clk10s=0; end if; end process;process(clk10s,rst) begin if rst=0 then b=0000; elsif clk10sevent and clk10s=1 then if b=0101 then b=0000; else b=b+1; end if; end if; if b=0000 then clk1m=1; else clk1m=0; e

9、nd if;end process;process(clk1mp,rst) begin if rst=0 then c=0000; elsif clk1mpevent and clk1mp=1 then if c=1001 then c=0000; else c=c+1; end if; end if; if c=0000 then clk10m=1; else clk10m=0; end if; end process; process(clk10m,rst) begin if rst=0 then d=0000; elsif clk10mevent and clk10m=1 then if

10、 d=0101 then d=0000; else d=d+1; end if; end if; if d=0000 then clk1h=1; else clk1h=0; end if;end process;process(clk1hp,rst) begin if rst=0 then e=0000;f=0000; elsif clk1hpevent and clk1hp=1 then if e=1001 then e=0000;f=f+1; elsif e=0011 and f=0010 then e=0000;f=0000; else e=e+1; end if; end if;end

11、 process;5.整点报时部分process(clk1s)beginif clk1sevent and clk1s=1 then if c=0000 and d=0000 then if (b=0000 and a=0000) or (b=0000 and a=0100) or (b=0000 and a=0010) then rep=1; else rep=0; end if; else rep=0; end if;end if;reptime=rep;end process;6.设置闹钟部分process(plm,alarmstart)begin if alarmstart=1 the

12、n if plmevent and plm=1 then if alarm1m=1001 then alarm1m=0000; if alarm10m=0101 then alarm10m=0000; else alarm10m=alarm10m+1; end if; else alarm1m=alarm1m+1; end if; end if; else alarm1m=alarm1m;alarm10m=alarm10m; end if;y=alarm1m;z=alarm10m;end process;process(plh,alarmstart)begin if alarmstart=1

13、then if plhevent and plh=1 then if alarm1h=1001 then alarm1h=0000;alarm10h=alarm10h+1; elsif alarm1h=0011 and alarm10h=0010 then alarm1h=0000;alarm10h=0000; else alarm1h=alarm1h+1; end if; end if; else alarm1h=alarm1h;alarm10h=alarm10h; end if;end process;7.时钟与闹钟时间对比产生闹钟信号process(clk1s)begin if alarmstart=1 then if clk1sevent an

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1