Bird
Raised Fist0
Raspberry Piprogramming~5 mins

Traffic light simulation in Raspberry Pi - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the basic sequence of colors in a traffic light simulation?
The basic sequence is: Green (go), Yellow (prepare to stop), Red (stop). This cycle repeats continuously.
Click to reveal answer
beginner
Which Raspberry Pi pins are commonly used to connect LEDs for a traffic light simulation?
GPIO pins on the Raspberry Pi are used to connect LEDs. For example, GPIO 17 for Red, GPIO 27 for Yellow, and GPIO 22 for Green LEDs.
Click to reveal answer
beginner
Why do we use delays (like time.sleep) in a traffic light simulation program?
Delays pause the program so each light stays on for a visible amount of time, simulating real traffic light timing.
Click to reveal answer
intermediate
How can you safely clean up GPIO settings after running a traffic light program on Raspberry Pi?
Use GPIO.cleanup() at the end of the program to reset the GPIO pins and avoid warnings or errors on next run.
Click to reveal answer
beginner
What Python library is commonly used to control Raspberry Pi GPIO pins in a traffic light simulation?
The RPi.GPIO library is commonly used to control GPIO pins for turning LEDs on and off.
Click to reveal answer
Which color light should turn on first in a traffic light simulation?
AYellow
BGreen
CBlue
DRed
What does GPIO.cleanup() do in a Raspberry Pi traffic light program?
ATurns all LEDs on
BResets GPIO pins to default state
CStarts the traffic light sequence
DIncreases LED brightness
Which Python module is typically imported to control Raspberry Pi GPIO pins?
ARPi.GPIO
Btime
Cos
Dsys
Why do we use time.sleep() in a traffic light simulation?
ATo turn off all LEDs
BTo speed up the light changes
CTo pause so lights stay on visibly
DTo reset the program
Which GPIO pin number is commonly used for the red LED in examples?
AGPIO 17
BGPIO 22
CGPIO 27
DGPIO 5
Explain how to set up a simple traffic light simulation using Raspberry Pi GPIO pins and Python.
Think about hardware setup, controlling pins, timing, and cleanup.
You got /6 concepts.
    Describe the role of each color in a traffic light simulation and how you would program their timing.
    Focus on the meaning of colors and timing control.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of using GPIO pins in a Raspberry Pi traffic light simulation?
      easy
      A. To control the LEDs turning on and off
      B. To increase the Raspberry Pi processing speed
      C. To connect the Raspberry Pi to the internet
      D. To store the traffic light timing data

      Solution

      1. Step 1: Understand GPIO pin function

        GPIO pins on Raspberry Pi are used to send signals to external devices like LEDs.
      2. Step 2: Connect GPIO pins to LEDs

        In traffic light simulation, GPIO pins turn LEDs on or off to show red, yellow, or green lights.
      3. Final Answer:

        To control the LEDs turning on and off -> Option A
      4. Quick Check:

        GPIO pins control LEDs = A [OK]
      Hint: GPIO pins control hardware like LEDs in simulations [OK]
      Common Mistakes:
      • Thinking GPIO speeds up the CPU
      • Confusing GPIO with internet connection
      • Assuming GPIO stores data
      2. Which of the following Python code snippets correctly sets up GPIO pin 17 as an output for the traffic light LED?
      easy
      A. GPIO.output(17, GPIO.IN)
      B. GPIO.setup(17, GPIO.OUT)
      C. GPIO.setup(17, GPIO.IN)
      D. GPIO.output(17, GPIO.OUT)

      Solution

      1. Step 1: Identify correct GPIO setup function

        GPIO.setup(pin_number, mode) is used to set pin mode; mode can be GPIO.OUT or GPIO.IN.
      2. Step 2: Choose correct mode for LED output

        LEDs need output mode, so GPIO.OUT is correct for pin 17.
      3. Final Answer:

        GPIO.setup(17, GPIO.OUT) -> Option B
      4. Quick Check:

        Setup pin as output = B [OK]
      Hint: Use GPIO.setup(pin, GPIO.OUT) to set output pins [OK]
      Common Mistakes:
      • Using GPIO.output instead of GPIO.setup to set mode
      • Setting pin as GPIO.IN instead of GPIO.OUT
      • Confusing setup and output functions
      3. What will be the output behavior of this Python code snippet controlling a traffic light LED on GPIO 18?
      GPIO.output(18, GPIO.HIGH)
      time.sleep(3)
      GPIO.output(18, GPIO.LOW)
      medium
      A. The LED on pin 18 stays off permanently
      B. The LED on pin 18 blinks rapidly for 3 seconds
      C. The program will cause a syntax error
      D. The LED on pin 18 turns on for 3 seconds, then turns off

      Solution

      1. Step 1: Analyze GPIO.output commands

        GPIO.HIGH turns the LED on; GPIO.LOW turns it off.
      2. Step 2: Understand time.sleep effect

        time.sleep(3) pauses the program for 3 seconds while LED stays on.
      3. Final Answer:

        The LED on pin 18 turns on for 3 seconds, then turns off -> Option D
      4. Quick Check:

        HIGH then sleep then LOW = C [OK]
      Hint: HIGH turns LED on, LOW turns it off; sleep pauses timing [OK]
      Common Mistakes:
      • Thinking LED blinks rapidly without loop
      • Assuming syntax error due to time.sleep
      • Confusing HIGH with LOW states
      4. Identify the error in this traffic light simulation code snippet:
      GPIO.setup(22, GPIO.OUT)
      GPIO.output(22, HIGH)
      time.sleep(2)
      GPIO.output(22, LOW)
      medium
      A. HIGH and LOW should be prefixed with GPIO.
      B. GPIO.setup should use GPIO.IN instead of GPIO.OUT
      C. time.sleep cannot be used with GPIO.output
      D. Pin 22 cannot be used for output

      Solution

      1. Step 1: Check usage of HIGH and LOW constants

        HIGH and LOW must be written as GPIO.HIGH and GPIO.LOW to be recognized.
      2. Step 2: Verify other code parts

        GPIO.setup with GPIO.OUT is correct; time.sleep works fine; pin 22 is valid.
      3. Final Answer:

        HIGH and LOW should be prefixed with GPIO. -> Option A
      4. Quick Check:

        HIGH/LOW require GPIO. prefix = D [OK]
      Hint: Always prefix HIGH/LOW with GPIO. to avoid NameError [OK]
      Common Mistakes:
      • Omitting GPIO. prefix for HIGH/LOW
      • Changing pin mode incorrectly
      • Thinking time.sleep causes error
      5. You want to simulate a traffic light cycle with red, yellow, and green LEDs connected to GPIO pins 5, 6, and 13 respectively. Which Python code snippet correctly cycles through the lights with 2 seconds red, 1 second yellow, and 3 seconds green, repeating forever?
      hard
      A. GPIO.output(5, GPIO.HIGH) GPIO.output(6, GPIO.HIGH) GPIO.output(13, GPIO.HIGH) time.sleep(6) GPIO.output(5, GPIO.LOW) GPIO.output(6, GPIO.LOW) GPIO.output(13, GPIO.LOW)
      B. for light in [5,6,13]: GPIO.output(light, GPIO.HIGH) time.sleep(2) GPIO.output(light, GPIO.LOW)
      C. while True: GPIO.output(5, GPIO.HIGH) time.sleep(2) GPIO.output(5, GPIO.LOW) GPIO.output(6, GPIO.HIGH) time.sleep(1) GPIO.output(6, GPIO.LOW) GPIO.output(13, GPIO.HIGH) time.sleep(3) GPIO.output(13, GPIO.LOW)
      D. while True: GPIO.output(13, GPIO.HIGH) time.sleep(3) GPIO.output(13, GPIO.LOW) GPIO.output(6, GPIO.HIGH) time.sleep(1) GPIO.output(6, GPIO.LOW) GPIO.output(5, GPIO.HIGH) time.sleep(2) GPIO.output(5, GPIO.LOW)

      Solution

      1. Step 1: Check order and timing of lights

        Traffic lights cycle red (2s), yellow (1s), green (3s) in that order repeatedly.
      2. Step 2: Verify code matches timing and order

        while True: GPIO.output(5, GPIO.HIGH) time.sleep(2) GPIO.output(5, GPIO.LOW) GPIO.output(6, GPIO.HIGH) time.sleep(1) GPIO.output(6, GPIO.LOW) GPIO.output(13, GPIO.HIGH) time.sleep(3) GPIO.output(13, GPIO.LOW) uses while True loop, turns on red (pin 5) for 2s, then yellow (pin 6) for 1s, then green (pin 13) for 3s, turning off each after delay.
      3. Final Answer:

        while True loop with red (2s), yellow (1s), green (3s) -> Option C
      4. Quick Check:

        Correct order and timing in loop = A [OK]
      Hint: Use while True and sequence GPIO.output with time.sleep [OK]
      Common Mistakes:
      • Wrong order of lights
      • Using for loop without timing per light
      • Turning all LEDs on at once
      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