集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1313|回复: 1

我做的一个用按建改变流水灯的流动速度的,可是老是有错误

[复制链接]
xiaobang6513 发表于 2012-5-1 10:51:51 | 显示全部楼层 |阅读模式
  1. [quote]//使用两位拨码开关实现8个流水灯速度调节
  2. module led_run(mclk,data_in,clk_1s,clk_2s,clk_3s,clk_4s,led_out);
  3. input mclk;
  4. input [1:0] data_in;
  5. output clk_1s,clk_2s,clk_3s,clk_4s;
  6. reg [64:0] count;
  7. output [7:0] led_out;
  8. reg [7:0] led_out;
  9. reg [2:0] state;
  10. wire clk,clk_1s,clk_2s,clk_3s,clk_4s;

  11. always @ (posedge mclk)
  12.         count=count+1;
  13.         assign clk_1s=count[10];
  14.         assign clk_2s=count[20];
  15.         assign clk_3s=count[30];
  16.         assign clk_4s=count[64];

  17. always @ (data[0] or data_in[1])
  18. begin
  19. case(data_in)
  20.         2'b00:  
  21.                         if(data_in==2'b00)
  22.                                 always @(posedge clk_1s)
  23.                                 begin
  24.                                 case(state)
  25.                                 3'b000:        led_out=8'b00000001;
  26.                                 3'b001:        led_out=8'b00000010;
  27.                                 3'b010:        led_out=8'b00000100;
  28.                                 3'b011:        led_out=8'b00001000;
  29.                                 3'b100:        led_out=8'b00010000;
  30.                                 3'b101:        led_out=8'b00100000;
  31.                                 3'b110:        led_out=8'b01000000;
  32.                                 3'b111:        led_out=8'b10000000;
  33.                                 endcase
  34.                                 state=state+1;
  35.                                 end
  36.                         else
  37.                                 stata=state-1;
  38.         2'b01:
  39.                         if(data_in==2'b00)
  40.                                 always @(posedge clk_2s)
  41.                                 begin
  42.                                 case(state)
  43.                                 3'b000:        led_out=8'b00000001;
  44.                                 3'b001:        led_out=8'b00000010;
  45.                                 3'b010:        led_out=8'b00000100;
  46.                                 3'b011:        led_out=8'b00001000;
  47.                                 3'b100:        led_out=8'b00010000;
  48.                                 3'b101:        led_out=8'b00100000;
  49.                                 3'b110:        led_out=8'b01000000;
  50.                                 3'b111:        led_out=8'b10000000;
  51.                                 endcase
  52.                                 state=state+1;
  53.                             end
  54.                         else
  55.                                 stata=state-1;
  56.         2'b10:  
  57.                         if(data_in==2'b00)
  58.                                 always @(posedge clk_3s)
  59.                                 begin
  60.                                 case(state)
  61.                                 3'b000:        led_out=8'b00000001;
  62.                                 3'b001:        led_out=8'b00000010;
  63.                                 3'b010:        led_out=8'b00000100;
  64.                                 3'b011:        led_out=8'b00001000;
  65.                                 3'b100:        led_out=8'b00010000;
  66.                                 3'b101:        led_out=8'b00100000;
  67.                                 3'b110:        led_out=8'b01000000;
  68.                                 3'b111:        led_out=8'b10000000;
  69.                                 endcase
  70.                                 state=state+1;
  71.                                 end
  72.                         else
  73.                                 stata=state-1;
  74.         2'b11:
  75.                         if(data_in==2'b00)
  76.                                 always @(posedge clk_4s)
  77.                                 begin
  78.                                 case(state)
  79.                                 3'b000:        led_out=8'b00000001;
  80.                                 3'b001:        led_out=8'b00000010;
  81.                                 3'b010:        led_out=8'b00000100;
  82.                                 3'b011:        led_out=8'b00001000;
  83.                                 3'b100:        led_out=8'b00010000;
  84.                                 3'b101:        led_out=8'b00100000;
  85.                                 3'b110:        led_out=8'b01000000;
  86.                                 3'b111:        led_out=8'b10000000;
  87.                                 endcase
  88.                                 state=state+1;
  89.                                 end
  90.                         else
  91.                                 stata=state-1;       
  92. endcase                               
  93. end
  94. endmodule[/quote]
复制代码
 楼主| xiaobang6513 发表于 2012-5-1 10:52:21 | 显示全部楼层
大家帮我看看,哪里有问题?
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-6-25 16:05 , Processed in 0.063800 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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