欢迎来到天天文库
浏览记录
ID:8476313
大小:334.50 KB
页数:12页
时间:2018-03-29
《基于多功能数字钟的课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、EDA技术课程设计多功能数字钟学院:城市学院专业、班级:姓名:指导老师:2015年12月目录1、设计任务与要求…………………………………………22、总体框图…………………………………………………23、选择器件…………………………………………………24、功能模块…………………………………………………3(1)时钟记数模块…………………………………………3(2)整点报时驱动信号产生模块…………………………6(3)八段共阴扫描数码管的片选驱动信号输出模块……7(4)驱动八段字形译码输出模块…………………………8(5)高3位数和低4位数并置输出模块
2、…………………95、总体设计电路图…………………………………………10(1)仿真图…………………………………………………10(2)电路图…………………………………………………106、设计心得体会……………………………………………11第11页共12页一、设计任务与要求1、具有时、分、秒记数显示功能,以24小时循环计时。2、要求数字钟具有清零、调节小时、分钟功能。3、具有整点报时,整点报时的同时输出喇叭有音乐响起。二、总体框图多功能数字钟总体框图如下图所示。它由时钟记数模块(包括hour、minute、second三个小模块)、驱动8位八段共
3、阴扫描数码管的片选驱动信号输出模块(seltime)、驱动八段字形译码输出模块(deled)、整点报时驱动信号产生模块(alart)。系统总体框图三、选择器件 网络线若干、共阴八段数码管4个、蜂鸣器、hour(24进制记数器)、minute(60进制记数器)、second(60进制记数器)、alert(整点报时驱动信号产生模块)、seltime(驱动4位八段共阴扫描数码管的片选驱动信号输出模块)、deled(驱动八段字形译码输出模块)。第11页共12页四、功能模块多功能数字钟中的时钟记数模块、驱动8位八段共阴扫描数码管的片选驱动信号输出模
4、块、驱动八段字形译码输出模块、整点报时驱动信号产生模块。(1)时钟记数模块:<1.1>该模块的功能是:在时钟信号(CLK)的作用下可以生成波形;在清零信号(RESET)作用下,即可清零。VHDL程序如下:第11页共12页libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityhour24isport(clk:instd_logic;reset:instd_logic;qh:BUFFERSTD_LOGIC_VECTOR(2DOWNTO0);ql:
5、BUFFERSTD_LOGIC_VECTOR(3DOWNTO0));endhour24;architecturebehavofhour24isbeginprocess(reset,clk)beginifreset='1'thenqh<="000";ql<="0000";elsif(clk'eventandclk='1')thenif(qh<2)thenif(ql=9)thenql<="0000";qh<=qh+1;elseql<=ql+1;endif;elseif(ql=3)thenql<="0000";qh<="000";elseql<
6、=ql+1;endif;endif;endif;endprocess;endbehav;第11页共12页仿真波形如下:第11页共12页<1.2>VHDL程序如下:第11页共12页LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYmin60ISPORT(reset:INSTD_LOGIC;load:INSTD_LOGIC;clk1:INSTD_logic;clk:INSTD_LOGIC;co:OUTSTD_LOGIC;qh:BUFFERST
7、D_LOGIC_VECTOR(2DOWNTO0);ql:BUFFERSTD_LOGIC_VECTOR(3DOWNTO0));endmin60;ARCHITECTUREbehaveOFmin60ISBEGINPROCESS(clk,reset,load)BEGINif(reset='1')thenqh<="000";ql<="0000";elsif(load='1')thenco<=clk1;elsif(clk'EVENTandclk='1')thenif(ql=9)thenql<="0000";--低4位清零if(qh=5)thenqh<
8、="000";--高4位清零elseqh<=qh+1;--计数功能的实现;endif;elseql<=ql+1;--低4位加1endif;if(qh=5andql=9)thenco<='1';
此文档下载收益归作者所有