欢迎来到天天文库
浏览记录
ID:46243609
大小:71.77 KB
页数:9页
时间:2019-11-22
《数字秒表设计论文》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、数字秒表的设计一、设计任务与要求1、数字秒表的计时范围是0秒~59分59.99秒,显示的最长时间为59分59秒。2、数字秒表的计时精度是lOmso3、复位开关可以在任何情况下使用,即便在计时过程中,只要按一下复位开关,计时器就清零,并做好下次计时的准备。4、具有启/停开关,即按一下启/停开关,启动计时器开始计时,再按一下启/停开关则停止计时。二、总体框图由频率信号输出端输出频率为100HZ的时钟信号,输入到微妙模块的时钟端elk,微妙模块为100进制的计数器,产生的进位信号co输入到卜一级秒模块的时钟端,以此类推,
2、直到分模块计数到59进60时,产生的进位信号不输出,计数清零。将微妙、秒、分产生的计数通过置数/位选再通过显示模块实时显示。设计方案:利用一块芯片完成除时钟源,按键和显示器之外的所有数字电路功能。所有数字逻辑功能都在CPLD器件上用VHDL语言实现。这样设计具有体积小,设计周期短,调试方便,故障率地和修改升级容易等特点,本设计采用自顶向下,混合输入方式(原理图输入一一顶层文件链接和VHDL语言输入——各模块程序设计)实现数字秒表的设计,下载和调试。三、功能模块1.微秒模块采用VHDL语言输入方式,以时钟elk,清零
3、信号clr以及暂停信号STOP为进程敛感变量,程序如下:libraryieee;useieee.std_logic_l164.all;useieee.stdlogicunsigned.all;entityMINSECONDbisport(elk,clrm,stop:instd_logic;时钟/清零信号secml,secmO:outstd_logic_vector(3downto0);秒高位/低位co:outstd_logic);输出/进位信号endMINSECONDb;architectureSECofMINSE
4、CONDbissignalclkl,D0UT2:stdlogic;beginprocess(elk,clrm)variablecntl,cntO:std_logic_vector(3downto0);计数VARIABLEC0UNT2:INTEGERRANGE0TO10beginIFCLK,EVENTANDCLK二'fTHENIFC0UNT2>=0ANDC0UNT2<10THENC0UNT2:二C0UNT2+1;ELSEC0UNT2:二0;DOUT2<=NOTD0UT2;ENDIF;ENDIF;ent1:二〃0000
5、〃;entO:二〃0000〃;elsifelk'eventandclk='l'thenifstop二'rthenentO:二cntO;cntl:=cntl;endif;ifcnll二〃1001〃andentO二〃1000〃;then——当记数为98(实际是经过59个记时脉冲)co〈二'r;—进位entO:二〃1001〃;低位为9elsifcnt0<,z100rzthen小于9时cntO:=cntO+l;计数—elsifent0二"1001"then—clkl<=notclkl;elseentO:二〃0000〃;if
6、cntl<,,100r,then高位小于9时cntl:=cntl+1;elsecntl:二〃0000〃;co<=,0,;endif;endif;enclif;secml<=cntl;secm0<=cntO;endprocess;endSEC;程序生成器件如图:elksecm1[3..O]clrmsecmO[3..O]stopcoMINSECONDb泊St3微妙模块生成的器件可以实现带有100进制进位和清零功能,暂停等功能,MINSECONDb输入为100HZ脉冲和低电平的清零信号CLR与暂停信号STOP,输出微妙个
7、位、十位及进位信号C0。2、秒模块libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitySECONDisport(clk,clr:instdjogic;-…时钟/清零信号secl,secO:outstd_logic_vector(3downto0);——秒高位/低位co:outstd_logic);输出/进位信号endSECOND;architectureSECofSECONDisbeginprocess(clk,cl
8、r)variableent1,cntO:std_logic_vector(3downto0);…计数beginifclr='l'then——当ckr为1时,高低位均为0cntl:="OOOOn;cntO:="OOOOH;elsifclk'eventandclk=*rthenifent1=”0101”andcntO=H1000"then-…当记数为58(实际是
此文档下载收益归作者所有