Advertisement
Guest User

Untitled

a guest
Apr 27th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. module (clk, state)
  2.  
  3. parameter verde = 2'b00;
  4. parameter amarelo = 2'b01;
  5. parameter vermelho = 2'b10;
  6.  
  7. initial begin
  8.     int Tempo = 100;
  9.     input button = 1'b0;
  10.     input reset = 1'b0;
  11.     input clk;
  12.     output state = 2'b00;
  13.    
  14.  
  15.  
  16.  
  17. end
  18.  
  19. always @(posedge clk) begin
  20.     Tempo = Tempo - 1;
  21.     if (reset){
  22.         state <= verde;
  23.     } else {
  24.         case(state)
  25.             verde: begin
  26.                 if (button){
  27.                     Tempo = Tempo/2;
  28.                 }
  29.                 if (Tempo == 0){
  30.                     state <= amarelo;
  31.                     Tempo <= 5;
  32.                 }
  33.            
  34.             end
  35.            
  36.             amarelo: begin
  37.                 if(Tempo == 0) {
  38.                     state <= vermelho;
  39.                     Tempo <= 100;
  40.                 }
  41.             end
  42.            
  43.             vermelho: begin
  44.                 if(Tempo == 0) {
  45.                     state <= verde;
  46.                     Tempo <= 100;
  47.                 }
  48.             end
  49.         endcase
  50.     }
  51.  
  52. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement