Bird
Raised Fist0
Raspberry Piprogramming~5 mins

Digital output (GPIO.output) in Raspberry Pi - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does GPIO.output(pin, state) do in Raspberry Pi programming?
It sets the electrical state of a specific pin on the Raspberry Pi to either HIGH (on) or LOW (off), controlling devices like LEDs or motors.
Click to reveal answer
beginner
What are the two possible states you can set with GPIO.output()?
The two states are GPIO.HIGH (or 1) to turn the pin on, and GPIO.LOW (or 0) to turn the pin off.
Click to reveal answer
beginner
Why do you need to set the pin mode to GPIO.OUT before using GPIO.output()?
Because the pin must be configured as an output pin to send signals out. If it’s not set to output, you can’t control devices connected to it.
Click to reveal answer
beginner
What Python library is commonly used to control GPIO pins on a Raspberry Pi?
The RPi.GPIO library is commonly used to control GPIO pins in Python on a Raspberry Pi.
Click to reveal answer
beginner
How do you clean up GPIO settings after your program finishes?
You call GPIO.cleanup() to reset all GPIO pins to their default state, preventing conflicts in future programs.
Click to reveal answer
What does GPIO.output(18, GPIO.HIGH) do?
ATurns pin 18 on
BTurns pin 18 off
CSets pin 18 as input
DCleans up GPIO pins
Before using GPIO.output(), what must you do?
ACall GPIO.cleanup()
BSet the pin mode to GPIO.OUT
CSet the pin mode to GPIO.IN
DImport time module
Which library is used to control GPIO pins in Python on Raspberry Pi?
Anumpy
Bmatplotlib
CRPi.GPIO
Dpandas
What does GPIO.LOW mean when used with GPIO.output()?
AReset all pins
BTurn the pin on
CSet pin as input
DTurn the pin off
Why should you call GPIO.cleanup() at the end of your program?
ATo reset pins and avoid conflicts
BTo turn all pins on
CTo speed up the program
DTo import GPIO library
Explain how to turn an LED on and off using GPIO.output() on a Raspberry Pi.
Think about setting the pin as output first, then controlling the voltage.
You got /4 concepts.
    Describe why it is important to call GPIO.cleanup() after controlling GPIO pins.
    Consider what happens if pins stay set after your program ends.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does GPIO.output(pin, GPIO.HIGH) do on a Raspberry Pi?
      easy
      A. It sets the pin mode to input.
      B. It turns the specified pin ON by setting it to HIGH voltage.
      C. It reads the current value from the specified pin.
      D. It resets the Raspberry Pi GPIO pins.

      Solution

      1. Step 1: Understand GPIO.output function

        The function GPIO.output(pin, value) sets the voltage level of the pin.
      2. Step 2: Interpret GPIO.HIGH

        GPIO.HIGH means turning the pin ON by applying a high voltage.
      3. Final Answer:

        It turns the specified pin ON by setting it to HIGH voltage. -> Option B
      4. Quick Check:

        GPIO.output with GPIO.HIGH = Pin ON [OK]
      Hint: HIGH means ON, LOW means OFF for GPIO pins [OK]
      Common Mistakes:
      • Confusing output with input reading
      • Thinking GPIO.HIGH reads pin value
      • Assuming it sets pin mode
      2. Which of the following is the correct syntax to set GPIO pin 18 as an output pin?
      easy
      A. GPIO.setup(18, GPIO.INPUT)
      B. GPIO.output(18, GPIO.HIGH)
      C. GPIO.setup(18, GPIO.OUT)
      D. GPIO.output(18, GPIO.OUT)

      Solution

      1. Step 1: Identify the function to set pin mode

        GPIO.setup(pin, mode) is used to set pin mode.
      2. Step 2: Choose correct mode for output

        GPIO.OUT sets the pin as output, so GPIO.setup(18, GPIO.OUT) is correct.
      3. Final Answer:

        GPIO.setup(18, GPIO.OUT) -> Option C
      4. Quick Check:

        Pin mode output = GPIO.setup(pin, GPIO.OUT) [OK]
      Hint: Use GPIO.setup(pin, GPIO.OUT) to set output mode [OK]
      Common Mistakes:
      • Using GPIO.INPUT instead of GPIO.OUT
      • Trying to set output with GPIO.output before setup
      • Using GPIO.output to set pin mode
      3. What will be the output state of pin 23 after running this code?
      import RPi.GPIO as GPIO
      GPIO.setmode(GPIO.BCM)
      GPIO.setup(23, GPIO.OUT)
      GPIO.output(23, GPIO.LOW)
      medium
      A. Code will cause a runtime error.
      B. Pin 23 will be ON (HIGH voltage).
      C. Pin 23 will be set as input.
      D. Pin 23 will be OFF (LOW voltage).

      Solution

      1. Step 1: Analyze pin setup

        Pin 23 is set as output using GPIO.setup(23, GPIO.OUT).
      2. Step 2: Check output command

        GPIO.output(23, GPIO.LOW) sets pin 23 to LOW voltage, turning it OFF.
      3. Final Answer:

        Pin 23 will be OFF (LOW voltage). -> Option D
      4. Quick Check:

        GPIO.output(pin, GPIO.LOW) = Pin OFF [OK]
      Hint: LOW means OFF, so pin is off after output LOW [OK]
      Common Mistakes:
      • Assuming LOW means ON
      • Forgetting to set pin as output first
      • Confusing pin number with mode
      4. Identify the error in this code snippet:
      import RPi.GPIO as GPIO
      GPIO.setmode(GPIO.BCM)
      GPIO.output(17, GPIO.HIGH)
      medium
      A. Pin 17 is not set as output before using GPIO.output.
      B. GPIO.HIGH is not a valid value for GPIO.output.
      C. GPIO.setmode(GPIO.BCM) is incorrect syntax.
      D. Missing import statement for GPIO.

      Solution

      1. Step 1: Check pin setup before output

        The code calls GPIO.output without first setting pin 17 as output using GPIO.setup(17, GPIO.OUT).
      2. Step 2: Confirm other parts are correct

        GPIO.HIGH and GPIO.setmode(GPIO.BCM) are correct, and import is present.
      3. Final Answer:

        Pin 17 is not set as output before using GPIO.output. -> Option A
      4. Quick Check:

        Must setup pin as output before GPIO.output [OK]
      Hint: Always setup pin as output before writing HIGH/LOW [OK]
      Common Mistakes:
      • Skipping GPIO.setup for output pins
      • Confusing GPIO.HIGH with pin mode
      • Incorrect setmode usage
      5. You want to blink an LED connected to pin 12 five times. Which code snippet correctly turns the LED ON and OFF using GPIO.output inside a loop?
      hard
      A. for i in range(5): GPIO.output(12, GPIO.HIGH) time.sleep(1) GPIO.output(12, GPIO.LOW) time.sleep(1)
      B. for i in range(5): GPIO.output(12, GPIO.LOW) time.sleep(1) GPIO.output(12, GPIO.HIGH) time.sleep(1)
      C. GPIO.output(12, GPIO.HIGH) for i in range(5): time.sleep(1) GPIO.output(12, GPIO.LOW) time.sleep(1)
      D. for i in range(5): GPIO.setup(12, GPIO.OUT) GPIO.output(12, GPIO.HIGH) GPIO.output(12, GPIO.LOW)

      Solution

      1. Step 1: Understand blinking logic

        Blinking means turning LED ON (HIGH), waiting, then OFF (LOW), waiting, repeated 5 times.
      2. Step 2: Analyze each option

        for i in range(5): GPIO.output(12, GPIO.HIGH) time.sleep(1) GPIO.output(12, GPIO.LOW) time.sleep(1) correctly loops 5 times, sets pin HIGH, waits, sets LOW, waits. for i in range(5): GPIO.output(12, GPIO.LOW) time.sleep(1) GPIO.output(12, GPIO.HIGH) time.sleep(1) reverses ON/OFF order. GPIO.output(12, GPIO.HIGH) for i in range(5): time.sleep(1) GPIO.output(12, GPIO.LOW) time.sleep(1) turns ON once before loop. for i in range(5): GPIO.setup(12, GPIO.OUT) GPIO.output(12, GPIO.HIGH) GPIO.output(12, GPIO.LOW) wrongly calls setup inside loop.
      3. Final Answer:

        for i in range(5): GPIO.output(12, GPIO.HIGH) time.sleep(1) GPIO.output(12, GPIO.LOW) time.sleep(1) -> Option A
      4. Quick Check:

        Blink = ON + wait + OFF + wait in loop [OK]
      Hint: Turn ON then OFF with delays inside loop to blink [OK]
      Common Mistakes:
      • Calling GPIO.setup inside loop repeatedly
      • Reversing ON/OFF order
      • Not including delays between ON and OFF
      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