| 
									
										
										
										
											2025-04-16 14:58:04 +02:00
										 |  |  | 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 | 
					
						
							| 
									
										
										
										
											2025-04-16 17:07:29 +02:00
										 |  |  |     output wire ws2812_dout // broche de données pour la LED WS2812 (optionnel) | 
					
						
							| 
									
										
										
										
											2025-04-16 14:58:04 +02:00
										 |  |  | ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     wire [8:0] distance; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // Module de mesure (version bidirectionnelle du capteur) | 
					
						
							| 
									
										
										
										
											2025-04-16 17:07:29 +02:00
										 |  |  |     ultrasonic_fpga ultrasonic_inst ( | 
					
						
							| 
									
										
										
										
											2025-04-16 14:58:04 +02:00
										 |  |  |         .clk(clk), | 
					
						
							|  |  |  |         .start(start), | 
					
						
							|  |  |  |         .sig(sig), | 
					
						
							|  |  |  |         .distance(distance) | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // Module d'affichage LEDs | 
					
						
							|  |  |  |     distance_display_led led_display_inst ( | 
					
						
							|  |  |  |         .distance(distance), | 
					
						
							|  |  |  |         .leds(leds) | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-04-16 17:07:29 +02:00
										 |  |  |     // 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) | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-04-16 14:58:04 +02:00
										 |  |  | endmodule |