(Verilog) Советы о том, как заставить случайный светодиод мигать с помощью LSFR - PullRequest
0 голосов
/ 09 декабря 2018

В настоящее время я работаю над проектом по разработке «игры памяти».В настоящее время у меня 4 случайных светодиода мигают с помощью LSFR.Моя проблема в том, что мне нужно, чтобы светодиоды мигали по одному, и я не уверен, как это сделать.

Если бы кто-нибудь мог дать совет, я был бы очень благодарен!

    module Memory_Game
 #(parameter BITS = 5)
(clk, rst_n, out); 
input clk;
input rst_n;
output reg [3:0] out;
reg [3:0] out_next;
integer count=0;
reg clk_1hz;
reg [3:0] I; //user input is stored here
reg [3:0] R;

initial begin
        R <= 4'b0101;
        I <= 4'b0000;
        out_next <= 4'b0001;
 end

always @ (posedge clk) begin // slows our clock from 50mhz to 1hz 
if (count<25000000)
    count = count +1; 
    else begin 
    clk_1hz = ~clk_1hz;
    count = 0;
    end 
end 


always @* begin // responsible for determing the blinking of the leds
   out_next = out;
      repeat(BITS) begin
        R <= {R[2:0], R[3] ^ R[0]}; 
      out_next = {out_next[2:0],(out_next[3]^out_next[0])};
end
end


   always @(posedge clk_1hz or negedge rst_n) begin
      if(!rst_n)
         out <= 4'h1f;
      else
         out <= out_next;
        end

endmodule
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...