Writes average PWM voltage to a GPIO pin
The PWM uses a software implementation allowing all GPIO pins on the Raspberry Pi™ hardware board to output a PWM signal. Each PWM pin outputs a square
waveform with variable frequency, duty cycle, or average voltage. A duty cycle of
0 means the waveform is always low and a duty cycle of
1 means the waveform is always high.
To use a PWM pin, reconfigure one of the multiple-use GPIO pins as a PWM pin.
voltage — Mean voltage of output waveform, in volts
Mean voltage of the square wave at the output pin, in volts. The value is
0 V and
3.3 V. A value of
0 V produces no output. A value of
produces a square wave with a 50% duty cycle at the output pin.
Enable PWM and Set Properties
Enable PWM pin
12 and set the frequency and
mypi = raspi(); configurePin(mypi, 12, 'PWM'); writePWMFrequency(mypi, 12, 2000); writePWMVoltage(mypi, 12, 1.65);
The result is a square wave with a 50.0% duty cycle, frequency of 2000 hertz,
and average voltage of
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
You can also deploy
writePWMVoltageon the Raspberry Pi hardware in MATLAB® Online™.
Introduced in R2016b