From 1c532bdd955d52806196e9a5d9ceab5b39bd620a Mon Sep 17 00:00:00 2001 From: Madeline Busig Date: Tue, 2 Dec 2025 21:33:38 -0800 Subject: [PATCH] Add HW PWM controller top module --- hw_pwm_controller/src/top.v | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 hw_pwm_controller/src/top.v diff --git a/hw_pwm_controller/src/top.v b/hw_pwm_controller/src/top.v new file mode 100644 index 0000000..32e09a2 --- /dev/null +++ b/hw_pwm_controller/src/top.v @@ -0,0 +1,37 @@ +`timescale 1ns/1ps + +module top ( + input clk, + input [0:0] btn, + input [7:0] sw, + output [2:0] RGB_led_A, + output [7:0] led +); + +wire clk2; + +conf_div clock_div ( + .clk_in(clk), + .rst(0), + .sel(6), + .clk_out(clk2) +); + +wire clk_cur = btn[0] ? clk2 : clk; + +pwm_core #( + .WINDOW_REG_SIZE(8) +) pwm_core_r ( + .clk(clk_cur), + .rst(0), + .duty(sw[7:0]), + .window_width(255), + .oen(sw[11]), + .pulse(RGB_led_A[0]) +); + +assign RGB_led_A[1] = 0; +assign RGB_led_A[2] = 0; + +endmodule +