writePWMDutyCycle question about arguments

regarding the last parameter of writePWMDutyCycle(a,'D5',0.33);. Would the last paramater '0.33' mean a duty cycle that would be 33% of the max pwm value 255? for example an input of 0.5 would mean a 50% duty cycle or 127.5 on the pwm scale [0-255]. Further, would an input of '1' mean 100% duty cycle aka 255 on the pwm scale?
a = arduino();
writePWMDutyCycle(a,'D5',0.33);
Thank you

Answers (1)

The duty cycle of a periodic signal is the proportion of the signal 'ON' time to its 'OFF' time within one period.
On an Arduino board that utilizes 8-bit PWM, a dutyCycle value of 0.5 corresponds to a value of 127 (since it must be an integer) on the PWM scale. This means that the signal will remain 'ON' for 50% of the time in one cycle. Similarly, setting the dutyCycle to 1 will result in an 'always ON' signal, or 255 on the PWM scale.
Please note that the dutyCycle parameter only changes the duration of the signal 'ON' time and not the PWM signal voltage level.
For more details, please refer to the link provided below.

Categories

Asked:

on 2 Jun 2021

Answered:

on 20 Feb 2024

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!