数字跑表(电子科大)

数字跑表(电子科大)

ID:39578665

大小:196.00 KB

页数:16页

时间:2019-07-06

数字跑表(电子科大)_第1页
数字跑表(电子科大)_第2页
数字跑表(电子科大)_第3页
数字跑表(电子科大)_第4页
数字跑表(电子科大)_第5页
资源描述:

《数字跑表(电子科大)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数字跑表设计报告学院:电子工程学院学号:2011029180015姓名:洪娜建班级:电磁场5班一系统总体设计设计要求设计一个数字秒表,有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,系统主要由显示译码器、分频器、十进制计数器和六进制计数器组成。整个秒表还需有一个启动/停止信号和一个复位信号,以便秒表能随意停止及启动。要求:1、跑表精度为0.01秒2、跑表计时范围为:1小时3、设置开始计时/停止计时、复位两个按钮4、显示工作方式:用六位BCD七段数码管显示读数5、扩展功能:锁存控

2、制功能。系统工作原理数字跑表通过系统将48MHz时钟进行分频得到100Hz的秒表时钟,之后通过对时钟信号进行计数得到具体的跑表显示数值,跑表数值作为显示单元电路的输入,显示单元控制数码管动态扫描显示计数因此,系统主要划分为:分频器,计数器,显示控制,开始停在使能控制,清零控制,锁存控制。原理图如下:二单元电路设计1.分频器设计思路:输入信号48MHz,将其48000分频可得1KHz信号,再将1KHz信号10分频可得100Hz信号。1KHz用于显示LED扫描,100Hz用于计数器时钟。源程序如下

3、:entityfenpinisPort(clk:inSTD_LOGIC;clk_1k:outSTD_LOGIC;clk_100:outSTD_LOGIC);endfenpin;architectureBehavioraloffenpinissignalcnt1:INTEGERRANGE1TO24000;signalcnt2:INTEGERRANGE1TO5;signalclk_1k_temp:STD_LOGIC:='0';signalclk_100_temp:STD_LOGIC:='0';beg

4、inprocess(clk)beginifclk'eventandclk='1'thenifcnt1=24000thencnt1<=1;clk_1k_temp<=notclk_1k_temp;elsecnt1<=cnt1+1;endif;endif;endprocess;clk_1k<=clk_1k_temp;process(clk_1k_temp)beginifclk_1k_temp'eventandclk_1k_temp='1'thenifcnt2=5thencnt2<=1;clk_100_

5、temp<=notclk_100_temp;elsecnt2<=cnt2+1;endif;endif;endprocess;clk_100<=clk_100_temp;endBehavioral;2.计数器实验需要用到2个六进制计数器和4个十进制计数器,本人使用的级联方式为同步级联。十进制计数器的源程序:entitycounter10isPort(reset:inSTD_LOGIC;clk:inSTD_LOGIC;carry_in:inSTD_LOGIC;carry_out:outSTD_LOG

6、IC;cnt_out:outSTD_LOGIC_VECTOR(3downto0));endcounter10;architectureBehavioralofcounter10issignalcnt_temp:STD_LOGIC_VECTOR(3downto0):="0000";beginprocess(reset,clk)beginifreset='0'thencnt_temp<="0000";elsifclk'eventandclk='1'thenifcarry_in='1'thenifcn

7、t_temp<"1001"thencnt_temp<=cnt_temp+1;elsecnt_temp<="0000";endif;endif;endif;ifcarry_in='1'andcnt_temp="1001"thencarry_out<='1';elsecarry_out<='0';endif;endprocess;cnt_out<=cnt_temp;endBehavioral;仿真结果:六进制计数器的源程序为:entitycounter6isPort(reset:inSTD_LOGI

8、C;clk:inSTD_LOGIC;carry_in:inSTD_LOGIC;carry_out:outSTD_LOGIC;cnt_out:outSTD_LOGIC_VECTOR(3downto0));endcounter6;architectureBehavioralofcounter6issignalcnt_temp:STD_LOGIC_VECTOR(3downto0):="0000";beginprocess(reset,clk)beginifreset='0'thencnt_temp<=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。