module top_ultrasonic_led (
    input wire clk,
    input wire start,       // bouton de déclenchement
    inout wire sig,         // broche unique pour trigger + echo
    output wire [5:0] leds  // LEDs pour affichage distance
    output wire ws2812_dout // broche de données pour la LED WS2812 (optionnel)
);

    wire [8:0] distance;

    // Module de mesure (version bidirectionnelle du capteur)
    ultrasonic_fpga ultrasonic_inst (
        .clk(clk),
        .start(start),
        .sig(sig),
        .distance(distance)
    );

    // Module d'affichage LEDs
    distance_display_led led_display_inst (
        .distance(distance),
        .leds(leds)
    );

    // Module d'affichage WS2812 (optionnel, si vous souhaitez utiliser une LED RGB)
    distance_ws2812_display ws2812_display_inst (
        .clk(clk),
        .distance(distance),
        .ws2812_dout(ws2812_dout)
    );

endmodule
