TheLegace

Lab5

Oct 24th, 2011
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. module Lab5(
  2.                 input signed[7:0] SW,
  3.                 input [3:0]KEY,
  4.                 output reg [6:0] HEX0,
  5.                 output reg [6:0] HEX1,
  6.                 output reg [6:0] HEX2,
  7.                 output reg [6:0] HEX4,
  8.                 output reg [6:0] HEX5,
  9.                 output reg [6:0] HEX6
  10.                
  11. );
  12.    
  13.    
  14.     reg signed[7:0] min, max;
  15.     wire [6:0] h0,h1,h2,h4,h5,h6;
  16.    
  17.     hex_7seg seg0($signed(max[3:0]),h0);
  18.     hex_7seg seg1($signed(max[6:4]),h1);
  19.     hex_7seg seg2(max[7], h2);
  20.    
  21.     initial begin
  22.         min = 0;
  23.         max = 0;
  24.         h0 = 7'b0;
  25.         h1 = 7'b0;
  26.         h2 = 7'b0;
  27.         h4 = 7'b0;
  28.         h5 = 7'b0;
  29.         h6 = 7'b0;
  30.        
  31.     end
  32.    
  33.     always begin
  34.         /*HEX0 = h0;
  35.         HEX1 = h1;
  36.         HEX2 = h2;
  37.         HEX4 = h4;
  38.         HEX5 = h5;
  39.         HEX6 = h6;*/
  40.     end
  41.     always @(negedge KEY[0]) begin
  42.         if(SW > max)
  43.             max = SW;
  44.         if(SW < min)
  45.             min = SW;
  46.     end
  47.    
  48.     always@(negedge KEY[1]) begin
  49.         min = 0;
  50.         max = 0;
  51.         assign h0 = 7'b0;
  52.         assign h1 = 7'b0;
  53.         assign h2 = 7'b0;
  54.         assign h4 = 7'b0;
  55.         assign h5 = 7'b0;
  56.         assign h6 = 7'b0;
  57.     end
  58. endmodule
  59.  
  60.  
  61. module hex_7seg(hex_digit,seg);   //decimal to Hex converter
  62.  
  63. input [3:0] hex_digit;
  64. output reg [6:0] seg;
  65.  
  66. always @ (hex_digit)
  67.     case (hex_digit)
  68.     4'h0: seg = 7'b1000000;
  69.     4'h1: seg = 7'b1111001;
  70.     4'h2: seg = 7'b0100100;
  71.     4'h3: seg = 7'b0110000;
  72.     4'h4: seg = 7'b0011001;
  73.     4'h5: seg = 7'b0010010;
  74.     4'h6: seg = 7'b0000010;
  75.     4'h7: seg = 7'b1111000;
  76.     4'h8: seg = 7'b0000000;
  77.     4'h9: seg = 7'b0011000;
  78.     4'ha: seg = 7'b0001000;
  79.     4'hb: seg = 7'b0000011;
  80.     4'hc: seg = 7'b1000110;
  81.     4'hd: seg = 7'b0100001;
  82.     4'he: seg = 7'b0000110;
  83.     4'hf: seg = 7'b0001110;
  84.     endcase
  85.  
  86. endmodule
  87.  
  88.  
  89.                
  90.  
Advertisement
Add Comment
Please, Sign In to add comment