RenHao

20130515_DigitalDesign_Test_3

May 15th, 2013
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. module counter(input ck,re,output reg [7:0]seg,led);
  2.  
  3. reg [24:0]div;
  4. reg ck_1;
  5. reg [2:0]Q ;
  6.  
  7. always @(posedge ck,negedge re)
  8. begin
  9.     if(!re) begin div <= 0 ; ck_1 <= 0 ; end
  10.     else if(div == 24999999) begin div <= 0 ; ck_1 <= ~ck_1 ; end
  11.     else div <= div + 1 ;
  12. end
  13.  
  14. always @(posedge ck_1,negedge re)
  15. begin
  16.     if(!re) Q <= 3'b111 ;
  17.     else if(Q == 3'b000) Q <= 3'b111 ;
  18.     else Q <= Q - 1 ;
  19.         case(Q)
  20.         3'b000:       begin  
  21.                         led <= 8'b11111110 ;
  22.                         seg <= 8'b00000010 ;
  23.                   end
  24.         3'b001:  
  25.                   begin
  26.                         led <= 8'b11111101 ;
  27.                         seg <= 8'b10011110 ;
  28.                   end
  29.         3'b010:  
  30.                   begin
  31.                         led <= 8'b11111011 ;
  32.                         seg <= 8'b00100100 ;
  33.                   end
  34.         3'b011:  
  35.                   begin
  36.                         led <= 8'b11110111 ;
  37.                         seg <= 8'b00001100 ;
  38.                   end
  39.         3'b100:  
  40.                   begin
  41.                         led <= 8'b11101111 ;
  42.                         seg <= 8'b10011000 ;
  43.                   end
  44.         3'b101:  
  45.                   begin
  46.                         led <= 8'b11011111 ;
  47.                         seg <= 8'b01001000 ;
  48.                   end
  49.         3'b110:  
  50.                   begin
  51.                         led <= 8'b10111111 ;
  52.                         seg <= 8'b01000000 ;
  53.                   end
  54.         3'b111:  
  55.                   begin
  56.                         led <= 8'b01111111 ;
  57.                         seg <= 8'b00011110 ;
  58.                   end
  59.         default:  
  60.                   begin
  61.                         led <= 8'b01111111 ;
  62.                         seg <= 8'b00011110 ;
  63.                   end
  64.         endcase
  65. end
  66.  
  67. endmodule
Advertisement
Add Comment
Please, Sign In to add comment