Prev Problem
Next Problem

30. PWM with 4-bit Resolution

Back To All Submissions
Previous Submission
Next Submission

Solving Approach

How do you plan to solve it?

 

 

Code

/*Write your code here*/
module pwm4_basic(
    input clk,
    input rst,
    input [3:0] duty,
    output reg pwm_out
);

reg [3:0] cnt;

always @(posedge clk)
begin
    if(rst)
    begin
        pwm_out <= 0;
        cnt <= 0;
    end
    else 
    begin
        cnt <= cnt + 4'b0001;
        if(cnt < duty)
            pwm_out <= 1'b1;
        else
            pwm_out <= 0;
    end
end

endmodule

 

Was this helpful?
Upvote
Downvote