锆石科技社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 202|回复: 3

数码管进阶学习时改变定时器后不能正常工作时什么原因

[复制链接]

14

主题

66

帖子

1222

积分

金牌会员

Rank: 6Rank: 6

积分
1222
发表于 2016-11-1 21:31:31 | 显示全部楼层 |阅读模式
请技术人员打开附件帮看看是什么原因呢,谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

14

主题

66

帖子

1222

积分

金牌会员

Rank: 6Rank: 6

积分
1222
 楼主| 发表于 2016-11-1 21:40:14 | 显示全部楼层
  1. module verilog_shuma
  2. (
  3.     CLK_50M,RST_N,SEG_DATA,SEG_N
  4. );

  5. input CLK_50M;
  6. input RST_N;
  7. output reg [7:0] SEG_DATA;
  8. output reg [5:0] SEG_N;

  9. reg [26:0] time_cnt;
  10. reg [26:0] time_cnt_n;
  11. reg [2:0] leg_cnt;
  12. reg [2:0] leg_cnt_n;

  13. parameter SET_TIME_10MS=27'd50000000;  //原来是16位的10ms寄存器,我改为27位1s的寄存器后数码管不能正常工作,是什么原因呢?

  14. always @ (posedge CLK_50M or negedge RST_N)
  15. begin
  16.   if(!RST_N)
  17.     time_cnt<=16'h0;
  18.         else
  19.     time_cnt<=time_cnt_n;
  20.         end

  21. always @ (*)
  22. begin
  23.    if(time_cnt==SET_TIME_10MS)
  24.        time_cnt_n=0;
  25.         else
  26.        time_cnt_n=time_cnt+27'h1;
  27.         end

  28. always @ (posedge CLK_50M or negedge RST_N)
  29. begin
  30. if(!RST_N)
  31.    leg_cnt<=3'd0;
  32.   else
  33.    leg_cnt<=leg_cnt_n;
  34. end

  35. always @ (*)
  36. begin
  37.   if(time_cnt==SET_TIME_10MS)
  38.      leg_cnt_n = leg_cnt+1'h1;
  39.          else
  40.           leg_cnt_n=leg_cnt;
  41. end

  42. always @ (*)
  43. begin
  44.   case(leg_cnt)
  45.      3'b000: SEG_DATA=8'b00111111;
  46.           3'b001: SEG_DATA=8'b00000110;
  47.           3'b010: SEG_DATA=8'b01011011;
  48.           3'b011: SEG_DATA=8'b01001111;
  49.           3'b100: SEG_DATA=8'b01100110;
  50.           3'b101: SEG_DATA=8'b01101101;
  51.           default SEG_DATA=8'b10111111;
  52.         endcase  
  53. end

  54. always @ (*)
  55. begin
  56.    case (leg_cnt)
  57.          3'b000: SEG_N=6'B111110;
  58.          3'b001: SEG_N=6'B111101;
  59.          3'b010: SEG_N=6'B111011;
  60.          3'b011: SEG_N=6'B110111;
  61.          3'b100: SEG_N=6'B101111;
  62.          3'b101: SEG_N=6'B011111;
  63.          default SEG_N=6'B111111;
  64.   endcase
  65. end

  66. endmodule        
  67.           
复制代码

回复 支持 反对

使用道具 举报

发表于 2016-11-2 14:20:36 | 显示全部楼层

现在是怎么工作的?
回复 支持 反对

使用道具 举报

14

主题

66

帖子

1222

积分

金牌会员

Rank: 6Rank: 6

积分
1222
 楼主| 发表于 2016-11-2 15:20:44 | 显示全部楼层
现在正常了,谢谢了!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|锆石科技社区 ( 苏ICP备15059756号  

GMT+8, 2019-5-27 04:23 , Processed in 0.142754 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表