FPGA的电子时钟显示程序资料.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FPGA的电子时钟显示程序资料.doc

/*========================================================================== *名 称: 可调电子时钟程序 *功 能: 电子时钟显示实验 *接 口: *说 明: 黑金II代FPGA开发板,一个主程序,两个子程序。 *编者 时间: Ye.FuYao 2014-04-28 CycioneⅡ EP2C8Q208C8 *===========================================================================*/ //主程序 module main(clk,RSTn,KEY,duan_xuan,wei_xuan); //外部接口 input clk,RSTn; //时钟,复位输入 input [3:0]KEY; //物理按键key_in按为0,松开为1 output [7:0]duan_xuan;//数码管段选输出 output [5:0]wei_xuan; //数码管位选输出 //时钟 //初始化时间 reg [7:0]hour=8d12;//时 reg [7:0]min=8d0; //分 reg [7:0]sec=8d0; //秒 wire [3:0]key_val;//按键值 //调用子程序 ,获取按键值 key_value U1(.clk(clk),.RSTn(RSTn),.Key_in(KEY),.key_val(key_val));//key_val返回的按键值 //秒定时器 parameter T1S=25d19_999_999;//定时值 reg [24:0]Count1; //计数值 always @(posedge clk or negedge RSTn) begin if(!RSTn) Count1=25d0; else if(Count1==T1S) Count1=25d0; else Count1=Count1+1b1;//脉冲累加 end //计算时间 always @(posedge clk or negedge RSTn) begin if(!RSTn) sec=8d0; //秒计时器 else if(Count1 == T1S) //脉冲数满足T1S begin if(sec 8d60) //0~59 begin sec = sec+8d1; //秒加1 if(sec == 8d60)//第60秒 begin sec = 8d0; if(min 8d60) //0~59 begin min = min+8d1; //分加1 if(min == 8d60)//第60分 begin min = 8d0; if(hour 8d24)//0~23 begin hour=hour+8d1; //时加1 if(hour == 8d24)//第24时 hour = 8d0; end end end end end end //调时间,这段可以不用,直接初始化赋值 else if(key_val==4d4) //key4按下 begin if(hour8d23) hour=hour+8d1;//+1 else hour=8d0; end else if(key_val==4d3) //key3按下 begin if(hour8d0) hour=hour-8d1;//-1 else hour=8d23; end else if(key_val==4d2) //key2按下 begin if(min0) min=min-8d1; //+1 else

文档评论(0)

四娘 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档