秒表计时电路设计verilog.doc

秒表计时电路设计verilog.doc

ID:57378192

大小:101.50 KB

页数:12页

时间:2020-08-13

秒表计时电路设计verilog.doc_第1页
秒表计时电路设计verilog.doc_第2页
秒表计时电路设计verilog.doc_第3页
秒表计时电路设计verilog.doc_第4页
秒表计时电路设计verilog.doc_第5页
资源描述:

《秒表计时电路设计verilog.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、电子科技大学通信学院秒表计时电路实验报告班级通信一班学生学号教师秒表计时电路秒表计时电路一、设计思路概述1.设计要求秒表计时功能,显示分、秒、0.01秒具有启动、暂停、停止和清空功能增加有趣的流水灯输入信号:4bit按键,50MHz时钟输出信号:6位数码管2.设计分析本设计要求秒表计时功能,显示分、秒、0.01秒,而这可以由分频电路实现,将电路的输入时钟进行分频,得到1/60Hz,1Hz,和100Hz信号,就可以达到本设计要求的显示要求了。本设计要求具有启动、暂停、停止和清空功能,而这个可以由状态机实现,通过合理的配置状态转换,就可以

2、达到要求。流水灯的实现说来简单,其实也可以做的复杂,漂亮的流水灯其观赏性还是很好地,这里我们只讨论简单流水灯的实现,即单个灯从左到右逐步发光。这实际是一个移位寄存器,我们可以通过不同的时钟来驱动它,实现不同的流水速度。这里,我们实现了一个1Hz,和一个10Hz的流水灯电路。二、总体设计框图及详细说明三、各部分代码设计1、进制计数器(分频器)设计:always@(negedgeclkornegedgerst10ms)beginif(~rst10ms)beginclk10ms<=0;clk10msreg<=0;endelseif(clk1

3、0msreg==)beginclk10ms<=~clk10ms;clk10msreg<=clk10msreg+1;endelseif(clk10msreg==)beginclk10ms<=~clk10ms;clk10msreg<=0;endelsebeginclk10msreg<=clk10msreg+1;endend2、状态机设计always@(negedgeclkornegedgeclear)beginif(~clear)beginstate<=idlestate;rst<=0;rst10ms<=0;endelsebegincas

4、e(state)idlestate:beginif(~start)beginstate<=prestate;rst<=0;rst10ms<=0;endelsestate<=idlestate;endprestate:beginstate<=runstate;rst<=1;rst10ms<=1;endholdstate:beginif(~stop)beginstate<=idlestate;rst<=1;rst10ms<=0;endelseif(~start)beginstate<=runstate;rst<=1;rst10ms<=1;

5、endelsestate<=holdstate;endrunstate:beginif(~stop)beginstate<=idlestate;rst<=1;rst10ms<=0;endelseif(~hold)beginstate<=holdstate;rst<=1;rst10ms<=0;endelsestate<=runstate;enddefault:state<=state;endcaseendend3.10进制计数器(分频器)设计modulecount10(rst,clk,clkout,counter);inputrst;i

6、nputclk;outputregclkout;outputreg[3:0]counter;always@(negedgeclkornegedgerst)beginif(~rst)beginclkout<=0;counter<=0;endelseif(counter==4)beginclkout<=~clkout;counter<=counter+1;endelseif(counter==9)beginclkout<=0;counter<=0;endelsebegincounter<=counter+1;endendendmodule

7、4、6进制计数器(分频器)设计modulecount6(rst,clk,clkout,counter);inputrst;inputclk;outputregclkout;outputreg[3:0]counter;always@(negedgeclkornegedgerst)beginif(~rst)beginclkout<=0;counter<=0;endelseif(counter==2)beginclkout<=~clkout;counter<=counter+4'b1;endelseif(counter==5)begincl

8、kout<=~clkout;counter<=0;endelsebegincounter<=counter+4'b1;endendendmodule5、流水灯设计always@(negedgeclk1sornegedge

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

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

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