- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于verilog的数字秒表的设计实现
《HDL语言应用与设计》
实验报告
基于Verilog HDL数字秒表的设计
班级: 信科13-01班
姓名: 张谊坤
学号:
教师: 王冠军
号输出端输出频率为100HZ的时钟信号,输入到百分之一秒模块的时钟端clk,百分之一秒模块为100进制的计数器,当计数到“1001”时,百分之一秒模块清零,同时十分之一秒模块加1;十分之一秒模块也为100进制的计数器,当计数到“1001”时,十分之一秒模块清零,同时秒模块加1;以此类推。直到分模块计数到59进59。
秒表计数单位与对应输出信号
hour[3:0]
百分之一秒
hour[7:4]
十分之一秒
hour[11:8]
秒
Hour[15:12]
十秒
Hour[19:16]
分
hour[23:20]
十分
(4)为了消除按键消抖问题,定义寄存器key-inner来存储按键key的输入信号,key-flag作为启动/暂停的转换标志,key-inner[0]出现一个下降沿时,key-flag取反一次,当key-flag为0时计数器启动,1时计数器暂停,当key-flag为1同时key-inner[1]为9时,计数器清零。
(5)定义18位寄存器count用于存放分频和扫描用的计数值。50MHZ的时钟信号500000分频,得到100HZ的时钟信号,而计数器以50MHZ的时钟信号218分频扫描8个七段译码器。
2. 实验原理框图
秒表设计原理框图5
50MHZ
Reg[1:0]
分频
扫描
显示
计数
100HZ
三、实验过程
1、秒表总程序:
module dapeng(clk_50M,dig,seg,ena,key);
input[1:0]key;
input clk_50M; //输入频率为50MHZ的时钟
output[2:0]dig; //数码管位选
output[7:0]seg; //数码管段选
output ena;//3-8译码器使能
reg[2:0]dig,count3b;
reg[7:0]seg;
reg[3:0]disp_dat; //定义显示数据寄存器
reg[18:0]count; //定义计数寄存器
reg[23:0]hour; //定义现在时刻寄存器
reg clk100; //50MHZ的时钟信号500000分频,得到100HZ的时钟信号
reg key_flag;//启动/暂停的切换标志
reg[1:0]key_inner;
assign ena=0;
//按键输入缓存
always@(posedge count[16])
begin
key_inner=key;
end
always@(negedge key_inner[0])
begin
key_flag=~key_flag;
end
//0.01秒信号产生部分,产生100HZ的时钟信号
always@(posedge clk_50M)
begin
if(count==249999)
begin
clk100=~clk100;
count=0;
end
else
count=count+1b1;
end
//数码管动态扫描显示部分
always@(posedge count[10])
begin
count3b=count3b+1;
case(count3b)
3d7:disp_dat=hour[3:0];
3d6:disp_dat=hour[7:4];
3d5:disp_dat=4ha;
3d4:disp_dat=hour[11:8];
3d3:disp_dat=hour[15:12];
3d2:disp_dat=4ha;
3d1:disp_dat=hour[19:16];
3d0:disp_dat=hour[23:20];
default:disp_dat=4bxxxx;
endcase
dig=count3b;
end
always@(disp_dat)
begin
case(disp_dat)
4h0:seg=8h3f;
4h1:seg=8h06;
4h2:seg=8h5b;
4h3:seg=8h4f;
4h4:seg=8h66;
4h5:seg=8h6d;
4h6:seg=8h7d;
4h7:seg=8h07;
4h8:s
您可能关注的文档
最近下载
- 外墙保温板隐蔽工程验收记录表.docx VIP
- 江西省南昌市2024-2025年八下期末物理试卷.docx
- 高中化学:有机合成课件.pptx VIP
- 2024年深圳市宝安中学初中部小升初分班考试数学模拟试卷附答案解析.docx
- 富士LIFT(LM1S–4C)操作说明书.rar.doc VIP
- 某典型生产型企业2024年温室气体盘查清册(1张表搞定碳盘查).xlsx
- 化学-安徽省1号卷A10联盟2025届高三上学期8月开学摸底考试试题和答案.docx VIP
- 德龙M3000全车气路结构与工作原理-陕汽.pdf VIP
- 矿井11种图纸绘制要求.pdf VIP
- T_CCMA 0197-2024 高原隧道电动工程机械用动力电池安全要求及实验室试验方法.pdf
文档评论(0)