Physical computing with Scratch and Python

Physical computing with Scratch and Python

Physical computing with Raspberry Pi using Scratch and Python with GPIO Zero

A1995c9abe48450ce2f82d93ca0b863f?s=128

Ben Nuttall

March 21, 2016
Tweet

Transcript

  1. 2.
  2. 5.

    Broadcast • configXout • gpioXon • gpioXoff • wait X

    secs • forever Component GPIO pin Red LED 25 Amber LED 8 Green LED 7 Buzzer 15
  3. 7.

    Open a new file • File > New File •

    File > Save • Save as camjam.py
  4. 8.

    GPIO Zero LED from gpiozero import LED led = LED(25)

    while True: led.on() sleep(1) led.off() sleep(1) Save and run: Ctrl + S F5
  5. 10.

    GPIO Zero Button + LED from gpiozero import Button, LED

    button = Button(21) led = LED(25) while True: button.wait_for_press() led.on() button.wait_for_release() led.off()
  6. 11.

    GPIO Zero Button + LED from gpiozero import Button, LED

    button = Button(21) led = LED(25) while True: led.on() button.wait_for_press() led.off() button.wait_for_release()
  7. 12.

    GPIO Zero Button + LED from gpiozero import Button, LED

    button = Button(21) led = LED(25) while True: led.blink() button.wait_for_press() led.off() button.wait_for_release()
  8. 13.

    Traffic Lights from gpiozero import Button, TrafficLights button = Button(21)

    lights = TrafficLights(25, 8, 7) while True: button.wait_for_press() lights.on() button.wait_for_release() lights.off()
  9. 14.

    Traffic Lights from gpiozero import Button, TrafficLights button = Button(21)

    lights = TrafficLights(25, 8, 7) while True: lights.blink() button.wait_for_press() lights.on() button.wait_for_release()
  10. 15.

    Traffic Lights from gpiozero import Button, TrafficLights, Buzzer from time

    import sleep button = Button(21) lights = TrafficLights(25, 8, 7) buzzer = Buzzer(15) while True: lights.on() buzzer.off() button.wait_for_press() lights.off() buzzer.on() button.wait_for_release()
  11. 18.

    Traffic Lights Sequence • Can you make a full traffic

    lights sequence? • Use the button for a pedestrian crossing • Use buzzer.beep() to indicate safe crossing