欢迎来到天天文库
浏览记录
ID:25540757
大小:266.56 KB
页数:15页
时间:2018-11-20
《数字电路课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、数字电路课程设计一 数字电子钟任务:用文本法或图形法设计一个能显示时、分、秒的数字电子钟要求:1 设计由晶振电路产生标准信号的单元电路2时为00~23六十进制计数器,分、秒为00~59六十进制计数器;3 能够显示出时、分、秒;4 具有清零,调节分钟的功能;5 具有整点报时功能,整点报时的同时LED灯花样显示、声响电路发出叫声;6 对时、分、秒单元电路进行仿真并纪录;7 选作部分:具有定时闹钟功能,可在任意设定一时间,到时自动提醒,通过声响电路发出叫声。各模块程序设计:1.秒计数模块VHDL(second.vhd)秒计数模块中是以60进制进行循环的,故需要的
2、秒数据输出应该是7位的,但是为了方便随后的调整时间模块设计,秒输出数据用8位二进制表示,其中低四位用于秒的低位,而高四位作为秒的高位。另外在该模块下的程序由于考虑到系统功能中调整时钟和分钟的要求,故要在秒计数模块中另外加入复位信号(reset)以及分钟设置信号(setmin)。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYSECONDISPORT(RESET,CLK,SETMIN:INSTD_LOGIC;------系统时钟、复位、分设置信号DAOUT
3、:OUTSTD_LOGIC_VECTOR(7DOWNTO0);-------------------------秒计数信号ENMIN:OUTSTD_LOGIC);-----------------------分进位信号ENDSECOND;ARCHITECTUREARTOFSECONDISSIGNALCOUNT:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALCOUNTER:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALCARRY_OUT1:STD_LOGIC;SIGNALCARRY_OUT2:STD_LOGIC;BEG
4、INP1:PROCESS(RESET,CLK)BEGINIF(RESET='0')THENCOUNT<="0000";COUNTER<="0000";ELSIF(CLK'EVENTANDCLK='1')THENIF(COUNTER<5)THENIF(COUNT=9)THENCOUNT<="0000";COUNTER<=COUNTER+1;ELSECOUNT<=COUNT+1;ENDIF;CARRY_OUT1<='0';ELSEIF(COUNT=9)THENCOUNT<="0000";COUNTER<="0000";CARRY_OUT1<='1';ELSEC
5、OUNT<=COUNT+1;CARRY_OUT1<='0';ENDIF;ENDIF;ENDIF;ENDPROCESSP1;DAOUT(7DOWNTO4)<=COUNTER;DAOUT(3DOWNTO0)<=COUNT;ENMIN<=CARRY_OUT1ORSETMIN;ENDART;仿真结果:1.分计数模块VHDL(minute.vhd)分计数同秒计数基本相同,由于均是60进制的计数器,故思路完全一致。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYMI
6、NUTEISPORT(CLK,EN,SETHOUR:INSTD_LOGIC;DAOUT:OUTSTD_LOGIC_VECTOR(7DOWNTO0);CO:OUTSTD_LOGIC);ENDMINUTE;ARCHITECTUREARTOFMINUTEISSIGNALCC:STD_LOGIC;BEGINPROCESS(CLK)VARIABLECNT1,CNT0:STD_LOGIC_VECTOR(3DOWNTO0);BEGINIF(CLK'EVENTANDCLK='1')THENIF(EN='1')THENIF(CNT1<"0101")THENIF(CNT0="
7、1001")THENCNT0:="0000";CNT1:=CNT1+1;ELSECNT0:=CNT0+1;ENDIF;CC<='0';ELSEIF(cnt0="1001")THENCNT0:="0000";CNT1:="0000";CC<='1';ELSECNT0:=CNT0+1;ENDIF;ENDIF;ENDIF;ENDIF;DAOUT<=CNT1&CNT0;ENDPROCESS;CO<=CCORSETHOUR;ENDART;仿真结果:1.时计数模块VHDL(hour.vhd)时计数模块的的设计思路同分、秒的类似,只是进制由60进制变成24进制,且没有了
8、向前进位信号。LIBRARYIEEE;USEIEEE.STD_LO
此文档下载收益归作者所有