Altera_Forum
Honored Contributor
12 years agocan not make 7 segma works on DE2-115
hello guys,
i changed my old board DE2-70 to DE2_115 and i am trying to test the boards i got my old code and changed the pis assignment and everything and the code work when testing switches and LEDS. i want to test the Seven Segment display but got no result (the codes runs fine). below is the code (just for testing ) : `timescale 1ns/100ps `default_nettype none module convert_hex_to_seven_segment ( input logic [3:0] hex_value, output logic [6:0] converted_value ); always_comb begin case(hex_value) 4'h1: converted_value = 7'b1111001; 4'h2: converted_value = 7'b0100100; 4'h3: converted_value = 7'b0110000; 4'h4: converted_value = 7'b0011001; 4'h5: converted_value = 7'b0010010; 4'h6: converted_value = 7'b0000010; 4'h7: converted_value = 7'b1111000; 4'h8: converted_value = 7'b0000000; 4'h9: converted_value = 7'b0011000; 4'ha: converted_value = 7'b0001000; 4'hb: converted_value = 7'b0000011; 4'hc: converted_value = 7'b1000110; 4'hd: converted_value = 7'b0100001; 4'he: converted_value = 7'b0000110; 4'hf: converted_value = 7'b0001110; 4'h0: converted_value = 7'b1000000; endcase end endmodule here is the main code: `timescale 1ns/100ps `default_nettype none module counter ( /////// switches //////////// input logic[17:0] SW, // toggle switches /////// 7 segment displays/LEDs //////////// output logic[6:0] HEX0, // 8 seven segment displays output logic[6:0] HEX1, output logic[6:0] HEX2, output logic[6:0] HEX3, output logic[6:0] HEX4, output logic[6:0] HEX5, output logic[6:0] HEX6, output logic[6:0] HEX7, output logic[8:0] LEDG, output logic[17:0] LEDR // 9 green LEDs ); logic [3:0] value; logic [6:0] value_7_segment; // Instantiate a module for converting hex number to 7-bit value for the 7-segment display convert_hex_to_seven_segment unit0 ( .hex_value(value), .converted_value(value_7_segment) ); // A priority encoder using if-else statement always_comb begin if (SW[9] == 1'b1) begin value = 4'd9; end else begin if (SW[8] == 1'b1) begin value = 4'd8; end else begin if (SW[7] == 1'b1) begin value = 4'd7; end else begin if (SW[6] == 1'b1) begin value = 4'd6; end else begin if (SW[5] == 1'b1) begin value = 4'd5; end else begin if (SW[4] == 1'b1) begin value = 4'd4; end else begin if (SW[3] == 1'b1) begin value = 4'd3; end else begin if (SW[2] == 1'b1) begin value = 4'd2; end else begin if (SW[1] == 1'b1) begin value = 4'd1; end else begin if (SW[0] == 1'b1) begin value = 4'd0; end else begin value = 4'hF; end end end end end end end end end end end assign HEX0 = value_7_segment; assign HEX1 = value_7_segment; assign HEX2 = value_7_segment; assign HEX3= value_7_segment; assign HEX4= 7'h7f; assign HEX5= 7'h7f; assign HEX6= 7'h7f; assign HEX7= 7'h7f; assign LEDR = SW; assign LEDG = {5'h00, value}; endmodule if anyone can help will be so thankful