Bird
Raised Fist0
Raspberry Piprogramming~5 mins

PWM frequency and duty cycle relationship in Raspberry Pi - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does PWM stand for and what is its basic purpose?
PWM stands for Pulse Width Modulation. It is used to control the amount of power delivered to a device by switching it on and off very quickly.
Click to reveal answer
beginner
What is PWM frequency?
PWM frequency is how many times per second the PWM signal completes one on-off cycle. It is measured in Hertz (Hz).
Click to reveal answer
beginner
What is PWM duty cycle?
PWM duty cycle is the percentage of time the signal is ON during one cycle. For example, 50% means the signal is ON half the time and OFF half the time.
Click to reveal answer
intermediate
How does changing the PWM frequency affect the output device?
Changing the PWM frequency changes how fast the signal switches ON and OFF. Too low frequency can cause flickering or noise, too high might not be supported by the device.
Click to reveal answer
intermediate
How do frequency and duty cycle work together in PWM?
Frequency sets how fast the signal cycles ON and OFF. Duty cycle controls how long the signal stays ON in each cycle. Together, they control the power and behavior of the device.
Click to reveal answer
What does a 25% duty cycle mean in PWM?
ASignal is ON 75% of the time and OFF 25% of the time
BSignal is ON 25% of the time and OFF 75% of the time
CSignal frequency is 25 Hz
DSignal frequency is 75 Hz
If you increase the PWM frequency, what happens?
AThe signal stays ON longer
BThe signal switches ON and OFF slower
CThe duty cycle increases automatically
DThe signal switches ON and OFF faster
Which of these affects how bright an LED controlled by PWM will be?
ADuty cycle
BFrequency only
CNeither frequency nor duty cycle
DThe color of the LED
What unit is PWM frequency measured in?
AHertz (Hz)
BVolts (V)
CAmps (A)
DSeconds (s)
If PWM frequency is too low, what might happen to a motor controlled by PWM?
AIt will stop completely
BIt will run faster
CIt may vibrate or make noise
DIt will overheat immediately
Explain in your own words how PWM frequency and duty cycle work together to control a device.
Think about how fast the signal switches and how long it stays ON.
You got /3 concepts.
    Describe what happens if you keep the duty cycle constant but increase the PWM frequency.
    Focus on the effect of frequency change alone.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the duty cycle in PWM control on a Raspberry Pi?
      easy
      A. The percentage of time the signal is ON during one cycle
      B. The speed at which the signal pulses repeat
      C. The voltage level of the signal
      D. The total duration of the PWM signal

      Solution

      1. Step 1: Understand duty cycle meaning

        The duty cycle is the fraction of one cycle when the signal is ON (high).
      2. Step 2: Differentiate from frequency

        Frequency controls how fast cycles repeat, not how long signal stays ON.
      3. Final Answer:

        The percentage of time the signal is ON during one cycle -> Option A
      4. Quick Check:

        Duty cycle = ON time percentage [OK]
      Hint: Duty cycle = ON time percentage in each pulse [OK]
      Common Mistakes:
      • Confusing duty cycle with frequency
      • Thinking duty cycle controls voltage
      • Assuming duty cycle affects total signal duration
      2. Which of the following is the correct Python syntax to set a PWM frequency to 1000 Hz on a Raspberry Pi GPIO pin using RPi.GPIO?
      easy
      A. pwm = GPIO.PWM(pin, 1000)
      B. pwm = GPIO.setPWM(pin, 1000)
      C. pwm = GPIO.PWM(pin).frequency(1000)
      D. pwm = GPIO.frequency(pin, 1000)

      Solution

      1. Step 1: Recall RPi.GPIO PWM syntax

        The correct way to create a PWM instance is GPIO.PWM(pin, frequency).
      2. Step 2: Check options for correct method and parameters

        pwm = GPIO.PWM(pin, 1000) matches the correct syntax; others use invalid methods or chaining.
      3. Final Answer:

        pwm = GPIO.PWM(pin, 1000) -> Option A
      4. Quick Check:

        GPIO.PWM(pin, freq) creates PWM [OK]
      Hint: Use GPIO.PWM(pin, frequency) to set PWM frequency [OK]
      Common Mistakes:
      • Using non-existent methods like setPWM or frequency()
      • Trying to set frequency after creating PWM without parameters
      • Confusing method chaining syntax
      3. Consider this Python code snippet controlling an LED brightness with PWM on Raspberry Pi:
      import RPi.GPIO as GPIO
      GPIO.setmode(GPIO.BCM)
      pin = 18
      GPIO.setup(pin, GPIO.OUT)
      pwm = GPIO.PWM(pin, 500)
      pwm.start(0)
      pwm.ChangeDutyCycle(75)

      What is the effect of setting the duty cycle to 75%?
      medium
      A. LED will be off
      B. LED will be at full brightness
      C. LED will blink 75 times per second
      D. LED will be at 75% brightness

      Solution

      1. Step 1: Understand duty cycle effect on LED brightness

        Duty cycle of 75% means LED is ON 75% of the time, so brightness is about 75%.
      2. Step 2: Confirm frequency and duty cycle usage

        Frequency 500 Hz controls pulse speed; duty cycle controls brightness level.
      3. Final Answer:

        LED will be at 75% brightness -> Option D
      4. Quick Check:

        Duty cycle 75% = 75% brightness [OK]
      Hint: Duty cycle % roughly equals LED brightness % [OK]
      Common Mistakes:
      • Confusing frequency with blinking count
      • Thinking duty cycle 75 means LED off
      • Assuming full brightness only at 100% duty cycle
      4. This code tries to change PWM frequency on Raspberry Pi but does not work as expected:
      pwm = GPIO.PWM(18, 1000)
      pwm.start(50)
      pwm.changeFrequency(2000)

      What is the error and how to fix it?
      medium
      A. ChangeFrequency is not a valid method; use pwm.ChangeFrequency(2000)
      B. ChangeFrequency method name is incorrect; use pwm.ChangeFrequency(2000)
      C. Frequency cannot be changed after PWM.start(); recreate PWM object
      D. Method name is case sensitive; use pwm.ChangeFrequency(2000)

      Solution

      1. Step 1: Identify method name case sensitivity

        RPi.GPIO does not provide a method to change frequency after PWM object creation.
      2. Step 2: Correct approach to change frequency

        To change frequency, stop PWM and create a new PWM instance with the new frequency.
      3. Final Answer:

        Frequency cannot be changed after PWM.start(); recreate PWM object -> Option C
      4. Quick Check:

        RPi.GPIO PWM frequency fixed at creation [OK]
      Hint: To change frequency, recreate PWM object [OK]
      Common Mistakes:
      • Using wrong method name spelling
      • Ignoring case sensitivity in Python
      • Trying to change frequency by creating new PWM instance
      5. You want to control a motor speed using PWM on Raspberry Pi. The motor requires a minimum frequency of 1000 Hz for smooth operation. If you set frequency to 1000 Hz and duty cycle to 20%, what happens if you increase frequency to 2000 Hz but keep duty cycle at 20%?
      hard
      A. Motor speed doubles because frequency doubled
      B. Motor speed stays roughly the same because duty cycle is unchanged
      C. Motor stops because frequency is too high
      D. Motor speed halves because frequency doubled

      Solution

      1. Step 1: Understand frequency vs duty cycle effect on motor speed

        Motor speed depends mainly on duty cycle (power ON time), not frequency.
      2. Step 2: Analyze frequency change with constant duty cycle

        Increasing frequency while keeping duty cycle constant keeps average power same, so speed stays similar.
      3. Final Answer:

        Motor speed stays roughly the same because duty cycle is unchanged -> Option B
      4. Quick Check:

        Speed ~ duty cycle, frequency affects smoothness [OK]
      Hint: Motor speed depends on duty cycle, not frequency [OK]
      Common Mistakes:
      • Assuming frequency change affects speed directly
      • Thinking doubling frequency doubles speed
      • Ignoring duty cycle's role in power delivery
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard