mirror of
https://github.com/KevinMidboe/python-gpiozero.git
synced 2025-10-29 17:50:37 +00:00
Merge pull request #411 from waveform80/include-examples
Convert recipe examples to includes
This commit is contained in:
@@ -74,6 +74,7 @@ autodoc_member_order = 'groupwise'
|
||||
|
||||
intersphinx_mapping = {
|
||||
'python': ('http://docs.python.org/3.4', None),
|
||||
'picamera': ('http://picamera.readthedocs.io/en/latest', None),
|
||||
}
|
||||
|
||||
# -- Options for HTML output ----------------------------------------------
|
||||
|
||||
9
docs/examples/all_on_1.py
Normal file
9
docs/examples/all_on_1.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import FishDish
|
||||
from signal import pause
|
||||
|
||||
fish = FishDish()
|
||||
|
||||
fish.button.when_pressed = fish.on
|
||||
fish.button.when_released = fish.off
|
||||
|
||||
pause()
|
||||
9
docs/examples/all_on_2.py
Normal file
9
docs/examples/all_on_2.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import TrafficHat
|
||||
from signal import pause
|
||||
|
||||
th = TrafficHat()
|
||||
|
||||
th.button.when_pressed = th.on
|
||||
th.button.when_released = th.off
|
||||
|
||||
pause()
|
||||
23
docs/examples/all_on_3.py
Normal file
23
docs/examples/all_on_3.py
Normal file
@@ -0,0 +1,23 @@
|
||||
from gpiozero import LED, Buzzer, Button
|
||||
from signal import pause
|
||||
|
||||
button = Button(2)
|
||||
buzzer = Buzzer(3)
|
||||
red = LED(4)
|
||||
amber = LED(5)
|
||||
green = LED(6)
|
||||
|
||||
things = [red, amber, green, buzzer]
|
||||
|
||||
def things_on():
|
||||
for thing in things:
|
||||
thing.on()
|
||||
|
||||
def things_off():
|
||||
for thing in things:
|
||||
thing.off()
|
||||
|
||||
button.when_pressed = things_on
|
||||
button.when_released = things_off
|
||||
|
||||
pause()
|
||||
9
docs/examples/button_1.py
Normal file
9
docs/examples/button_1.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import Button
|
||||
|
||||
button = Button(2)
|
||||
|
||||
while True:
|
||||
if button.is_pressed:
|
||||
print("Button is pressed")
|
||||
else:
|
||||
print("Button is not pressed")
|
||||
6
docs/examples/button_2.py
Normal file
6
docs/examples/button_2.py
Normal file
@@ -0,0 +1,6 @@
|
||||
from gpiozero import Button
|
||||
|
||||
button = Button(2)
|
||||
|
||||
button.wait_for_press()
|
||||
print("Button was pressed")
|
||||
11
docs/examples/button_3.py
Normal file
11
docs/examples/button_3.py
Normal file
@@ -0,0 +1,11 @@
|
||||
from gpiozero import Button
|
||||
from signal import pause
|
||||
|
||||
def say_hello():
|
||||
print("Hello!")
|
||||
|
||||
button = Button(2)
|
||||
|
||||
button.when_pressed = say_hello
|
||||
|
||||
pause()
|
||||
15
docs/examples/button_4.py
Normal file
15
docs/examples/button_4.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from gpiozero import Button
|
||||
from signal import pause
|
||||
|
||||
def say_hello():
|
||||
print("Hello!")
|
||||
|
||||
def say_goodbye():
|
||||
print("Goodbye!")
|
||||
|
||||
button = Button(2)
|
||||
|
||||
button.when_pressed = say_hello
|
||||
button.when_released = say_goodbye
|
||||
|
||||
pause()
|
||||
15
docs/examples/button_camera_1.py
Normal file
15
docs/examples/button_camera_1.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from gpiozero import Button
|
||||
from picamera import PiCamera
|
||||
from datetime import datetime
|
||||
from signal import pause
|
||||
|
||||
button = Button(2)
|
||||
camera = PiCamera()
|
||||
|
||||
def capture():
|
||||
datetime = datetime.now().isoformat()
|
||||
camera.capture('/home/pi/%s.jpg' % datetime)
|
||||
|
||||
button.when_pressed = capture
|
||||
|
||||
pause()
|
||||
18
docs/examples/button_camera_2.py
Normal file
18
docs/examples/button_camera_2.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from gpiozero import Button
|
||||
from picamera import PiCamera
|
||||
from datetime import datetime
|
||||
from signal import pause
|
||||
|
||||
left_button = Button(2)
|
||||
right_button = Button(3)
|
||||
camera = PiCamera()
|
||||
|
||||
def capture():
|
||||
datetime = datetime.now().isoformat()
|
||||
camera.capture('/home/pi/%s.jpg' % datetime)
|
||||
|
||||
left_button.when_pressed = camera.start_preview
|
||||
left_button.when_released = camera.stop_preview
|
||||
right_button.when_pressed = capture
|
||||
|
||||
pause()
|
||||
10
docs/examples/button_led_1.py
Normal file
10
docs/examples/button_led_1.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from gpiozero import LED, Button
|
||||
from signal import pause
|
||||
|
||||
led = LED(17)
|
||||
button = Button(2)
|
||||
|
||||
button.when_pressed = led.on
|
||||
button.when_released = led.off
|
||||
|
||||
pause()
|
||||
9
docs/examples/button_led_2.py
Normal file
9
docs/examples/button_led_2.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import LED, Button
|
||||
from signal import pause
|
||||
|
||||
led = LED(17)
|
||||
button = Button(2)
|
||||
|
||||
led.source = button.values
|
||||
|
||||
pause()
|
||||
11
docs/examples/button_shutdown.py
Normal file
11
docs/examples/button_shutdown.py
Normal file
@@ -0,0 +1,11 @@
|
||||
from gpiozero import Button
|
||||
from subprocess import check_call
|
||||
from signal import pause
|
||||
|
||||
def shutdown():
|
||||
check_call(['sudo', 'poweroff'])
|
||||
|
||||
shutdown_btn = Button(17, hold_time=2)
|
||||
shutdown_btn.when_held = shutdown
|
||||
|
||||
pause()
|
||||
12
docs/examples/button_stop_motion.py
Normal file
12
docs/examples/button_stop_motion.py
Normal file
@@ -0,0 +1,12 @@
|
||||
from gpiozero import Button
|
||||
from picamera import PiCamera
|
||||
|
||||
button = Button(2)
|
||||
camera = PiCamera()
|
||||
|
||||
camera.start_preview()
|
||||
frame = 1
|
||||
while True:
|
||||
button.wait_for_press()
|
||||
camera.capture('/home/pi/frame%03d.jpg' % frame)
|
||||
frame += 1
|
||||
8
docs/examples/distance_sensor_1.py
Normal file
8
docs/examples/distance_sensor_1.py
Normal file
@@ -0,0 +1,8 @@
|
||||
from gpiozero import DistanceSensor
|
||||
from time import sleep
|
||||
|
||||
sensor = DistanceSensor(23, 24)
|
||||
|
||||
while True:
|
||||
print('Distance to nearest object is', sensor.distance, 'm')
|
||||
sleep(1)
|
||||
10
docs/examples/distance_sensor_2.py
Normal file
10
docs/examples/distance_sensor_2.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from gpiozero import DistanceSensor, LED
|
||||
from signal import pause
|
||||
|
||||
sensor = DistanceSensor(23, 24, max_distance=1, threshold_distance=0.2)
|
||||
led = LED(16)
|
||||
|
||||
sensor.when_in_range = led.on
|
||||
sensor.when_out_of_range = led.off
|
||||
|
||||
pause()
|
||||
10
docs/examples/led_1.py
Normal file
10
docs/examples/led_1.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from gpiozero import LED
|
||||
from time import sleep
|
||||
|
||||
red = LED(17)
|
||||
|
||||
while True:
|
||||
red.on()
|
||||
sleep(1)
|
||||
red.off()
|
||||
sleep(1)
|
||||
8
docs/examples/led_2.py
Normal file
8
docs/examples/led_2.py
Normal file
@@ -0,0 +1,8 @@
|
||||
from gpiozero import LED
|
||||
from signal import pause
|
||||
|
||||
red = LED(17)
|
||||
|
||||
red.blink()
|
||||
|
||||
pause()
|
||||
15
docs/examples/led_bargraph_1.py
Normal file
15
docs/examples/led_bargraph_1.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from gpiozero import LEDBarGraph
|
||||
from time import sleep
|
||||
|
||||
graph = LEDBarGraph(5, 6, 13, 19, 26, 20)
|
||||
|
||||
graph.value = 1 # (1, 1, 1, 1, 1, 1)
|
||||
sleep(1)
|
||||
graph.value = 1/2 # (1, 1, 1, 0, 0, 0)
|
||||
sleep(1)
|
||||
graph.value = -1/2 # (0, 0, 0, 1, 1, 1)
|
||||
sleep(1)
|
||||
graph.value = 1/4 # (1, 0, 0, 0, 0, 0)
|
||||
sleep(1)
|
||||
graph.value = -1 # (1, 1, 1, 1, 1, 1)
|
||||
sleep(1)
|
||||
15
docs/examples/led_bargraph_2.py
Normal file
15
docs/examples/led_bargraph_2.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from gpiozero import LEDBarGraph
|
||||
from time import sleep
|
||||
|
||||
graph = LEDBarGraph(5, 6, 13, 19, 26, pwm=True)
|
||||
|
||||
graph.value = 1/10 # (0.5, 0, 0, 0, 0)
|
||||
sleep(1)
|
||||
graph.value = 3/10 # (1, 0.5, 0, 0, 0)
|
||||
sleep(1)
|
||||
graph.value = -3/10 # (0, 0, 0, 0.5, 1)
|
||||
sleep(1)
|
||||
graph.value = 9/10 # (1, 1, 1, 1, 0.5)
|
||||
sleep(1)
|
||||
graph.value = 95/100 # (1, 1, 1, 1, 0.75)
|
||||
sleep(1)
|
||||
15
docs/examples/led_board_1.py
Normal file
15
docs/examples/led_board_1.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from gpiozero import LEDBoard
|
||||
from time import sleep
|
||||
from signal import pause
|
||||
|
||||
leds = LEDBoard(5, 6, 13, 19, 26)
|
||||
|
||||
leds.on()
|
||||
sleep(1)
|
||||
leds.off()
|
||||
sleep(1)
|
||||
leds.value = (1, 0, 1, 0, 1)
|
||||
sleep(1)
|
||||
leds.blink()
|
||||
|
||||
pause()
|
||||
5
docs/examples/led_board_2.py
Normal file
5
docs/examples/led_board_2.py
Normal file
@@ -0,0 +1,5 @@
|
||||
from gpiozero import LEDBoard
|
||||
|
||||
leds = LEDBoard(5, 6, 13, 19, 26, pwm=True)
|
||||
|
||||
leds.value = (0.2, 0.4, 0.6, 0.8, 1.0)
|
||||
9
docs/examples/led_builtin.py
Normal file
9
docs/examples/led_builtin.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import LED
|
||||
from signal import pause
|
||||
|
||||
power = LED(35) # /sys/class/leds/led1
|
||||
activity = LED(47) # /sys/class/leds/led0
|
||||
|
||||
activity.blink()
|
||||
power.blink()
|
||||
pause()
|
||||
8
docs/examples/led_pulse.py
Normal file
8
docs/examples/led_pulse.py
Normal file
@@ -0,0 +1,8 @@
|
||||
from gpiozero import PWMLED
|
||||
from signal import pause
|
||||
|
||||
led = PWMLED(17)
|
||||
|
||||
led.pulse()
|
||||
|
||||
pause()
|
||||
19
docs/examples/led_travis.py
Normal file
19
docs/examples/led_travis.py
Normal file
@@ -0,0 +1,19 @@
|
||||
from travispy import TravisPy
|
||||
from gpiozero import LED
|
||||
from gpiozero.tools import negated
|
||||
from time import sleep
|
||||
from signal import pause
|
||||
|
||||
def build_passed(repo='RPi-Distro/python-gpiozero', delay=3600):
|
||||
t = TravisPy()
|
||||
r = t.repo(repo)
|
||||
while True:
|
||||
yield r.last_build_state == 'passed'
|
||||
sleep(delay) # Sleep an hour before hitting travis again
|
||||
|
||||
red = LED(12)
|
||||
green = LED(16)
|
||||
|
||||
red.source = negated(green.values)
|
||||
green.source = build_passed()
|
||||
pause()
|
||||
12
docs/examples/led_variable_brightness.py
Normal file
12
docs/examples/led_variable_brightness.py
Normal file
@@ -0,0 +1,12 @@
|
||||
from gpiozero import PWMLED
|
||||
from time import sleep
|
||||
|
||||
led = PWMLED(17)
|
||||
|
||||
while True:
|
||||
led.value = 0 # off
|
||||
sleep(1)
|
||||
led.value = 0.5 # half brightness
|
||||
sleep(1)
|
||||
led.value = 1 # full brightness
|
||||
sleep(1)
|
||||
9
docs/examples/light_sensor_1.py
Normal file
9
docs/examples/light_sensor_1.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import LightSensor
|
||||
|
||||
sensor = LightSensor(18)
|
||||
|
||||
while True:
|
||||
sensor.wait_for_light()
|
||||
print("It's light! :)")
|
||||
sensor.wait_for_dark()
|
||||
print("It's dark :(")
|
||||
10
docs/examples/light_sensor_2.py
Normal file
10
docs/examples/light_sensor_2.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from gpiozero import LightSensor, LED
|
||||
from signal import pause
|
||||
|
||||
sensor = LightSensor(18)
|
||||
led = LED(16)
|
||||
|
||||
sensor.when_dark = led.on
|
||||
sensor.when_light = led.off
|
||||
|
||||
pause()
|
||||
9
docs/examples/light_sensor_3.py
Normal file
9
docs/examples/light_sensor_3.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import LightSensor, PWMLED
|
||||
from signal import pause
|
||||
|
||||
sensor = LightSensor(18)
|
||||
led = PWMLED(16)
|
||||
|
||||
led.source = sensor.values
|
||||
|
||||
pause()
|
||||
10
docs/examples/motion_sensor.py
Normal file
10
docs/examples/motion_sensor.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from gpiozero import MotionSensor, LED
|
||||
from signal import pause
|
||||
|
||||
pir = MotionSensor(4)
|
||||
led = LED(16)
|
||||
|
||||
pir.when_motion = led.on
|
||||
pir.when_no_motion = led.off
|
||||
|
||||
pause()
|
||||
10
docs/examples/motor.py
Normal file
10
docs/examples/motor.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from gpiozero import Motor
|
||||
from time import sleep
|
||||
|
||||
motor = Motor(forward=4, backward=14)
|
||||
|
||||
while True:
|
||||
motor.forward()
|
||||
sleep(5)
|
||||
motor.backward()
|
||||
sleep(5)
|
||||
18
docs/examples/music_box.py
Normal file
18
docs/examples/music_box.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from gpiozero import Button
|
||||
import pygame.mixer
|
||||
from pygame.mixer import Sound
|
||||
from signal import pause
|
||||
|
||||
pygame.mixer.init()
|
||||
|
||||
sound_pins = {
|
||||
2: Sound("samples/drum_tom_mid_hard.wav"),
|
||||
3: Sound("samples/drum_cymbal_open.wav"),
|
||||
}
|
||||
|
||||
buttons = [Button(pin) for pin in sound_pins]
|
||||
for button in buttons:
|
||||
sound = sound_pins[button.pin.number]
|
||||
button.when_pressed = sound.play
|
||||
|
||||
pause()
|
||||
6
docs/examples/pot_1.py
Normal file
6
docs/examples/pot_1.py
Normal file
@@ -0,0 +1,6 @@
|
||||
from gpiozero import MCP3008
|
||||
|
||||
pot = MCP3008(channel=0)
|
||||
|
||||
while True:
|
||||
print(pot.value)
|
||||
7
docs/examples/pot_2.py
Normal file
7
docs/examples/pot_2.py
Normal file
@@ -0,0 +1,7 @@
|
||||
from gpiozero import LEDBarGraph, MCP3008
|
||||
from signal import pause
|
||||
|
||||
graph = LEDBarGraph(5, 6, 13, 19, 26, pwm=True)
|
||||
pot = MCP3008(channel=0)
|
||||
graph.source = pot.values
|
||||
pause()
|
||||
22
docs/examples/reaction_game.py
Normal file
22
docs/examples/reaction_game.py
Normal file
@@ -0,0 +1,22 @@
|
||||
from gpiozero import Button, LED
|
||||
from time import sleep
|
||||
import random
|
||||
|
||||
led = LED(17)
|
||||
|
||||
player_1 = Button(2)
|
||||
player_2 = Button(3)
|
||||
|
||||
time = random.uniform(5, 10)
|
||||
sleep(time)
|
||||
led.on()
|
||||
|
||||
while True:
|
||||
if player_1.is_pressed:
|
||||
print("Player 1 wins!")
|
||||
break
|
||||
if player_2.is_pressed:
|
||||
print("Player 2 wins!")
|
||||
break
|
||||
|
||||
led.off()
|
||||
28
docs/examples/rgbled.py
Normal file
28
docs/examples/rgbled.py
Normal file
@@ -0,0 +1,28 @@
|
||||
from gpiozero import RGBLED
|
||||
from time import sleep
|
||||
|
||||
led = RGBLED(red=9, green=10, blue=11)
|
||||
|
||||
led.red = 1 # full red
|
||||
sleep(1)
|
||||
led.red = 0.5 # half red
|
||||
sleep(1)
|
||||
|
||||
led.color = (0, 1, 0) # full green
|
||||
sleep(1)
|
||||
led.color = (1, 0, 1) # magenta
|
||||
sleep(1)
|
||||
led.color = (1, 1, 0) # yellow
|
||||
sleep(1)
|
||||
led.color = (0, 1, 1) # cyan
|
||||
sleep(1)
|
||||
led.color = (1, 1, 1) # white
|
||||
sleep(1)
|
||||
|
||||
led.color = (0, 0, 0) # off
|
||||
sleep(1)
|
||||
|
||||
# slowly increase intensity of blue
|
||||
for n in range(100):
|
||||
led.blue = n/100
|
||||
sleep(0.1)
|
||||
11
docs/examples/rgbled_pot_1.py
Normal file
11
docs/examples/rgbled_pot_1.py
Normal file
@@ -0,0 +1,11 @@
|
||||
from gpiozero import RGBLED, MCP3008
|
||||
|
||||
led = RGBLED(red=2, green=3, blue=4)
|
||||
red_pot = MCP3008(channel=0)
|
||||
green_pot = MCP3008(channel=1)
|
||||
blue_pot = MCP3008(channel=2)
|
||||
|
||||
while True:
|
||||
led.red = red_pot.value
|
||||
led.green = green_pot.value
|
||||
led.blue = blue_pot.value
|
||||
11
docs/examples/rgbled_pot_2.py
Normal file
11
docs/examples/rgbled_pot_2.py
Normal file
@@ -0,0 +1,11 @@
|
||||
from gpiozero import RGBLED, MCP3008
|
||||
from signal import pause
|
||||
|
||||
led = RGBLED(2, 3, 4)
|
||||
red_pot = MCP3008(0)
|
||||
green_pot = MCP3008(1)
|
||||
blue_pot = MCP3008(2)
|
||||
|
||||
led.source = zip(red_pot.values, green_pot.values, blue_pot.values)
|
||||
|
||||
pause()
|
||||
10
docs/examples/robot_1.py
Normal file
10
docs/examples/robot_1.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from gpiozero import Robot
|
||||
from time import sleep
|
||||
|
||||
robot = Robot(left=(4, 14), right=(17, 18))
|
||||
|
||||
for i in range(4):
|
||||
robot.forward()
|
||||
sleep(10)
|
||||
robot.right()
|
||||
sleep(1)
|
||||
9
docs/examples/robot_2.py
Normal file
9
docs/examples/robot_2.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import Robot, DistanceSensor
|
||||
from signal import pause
|
||||
|
||||
sensor = DistanceSensor(23, 24, max_distance=1, threshold_distance=0.2)
|
||||
robot = Robot(left=(4, 14), right=(17, 18))
|
||||
|
||||
sensor.when_in_range = robot.backward
|
||||
sensor.when_out_of_range = robot.stop
|
||||
pause()
|
||||
23
docs/examples/robot_buttons.py
Normal file
23
docs/examples/robot_buttons.py
Normal file
@@ -0,0 +1,23 @@
|
||||
from gpiozero import Robot, Button
|
||||
from signal import pause
|
||||
|
||||
robot = Robot(left=(4, 14), right=(17, 18))
|
||||
|
||||
left = Button(26)
|
||||
right = Button(16)
|
||||
fw = Button(21)
|
||||
bw = Button(20)
|
||||
|
||||
fw.when_pressed = robot.forward
|
||||
fw.when_released = robot.stop
|
||||
|
||||
left.when_pressed = robot.left
|
||||
left.when_released = robot.stop
|
||||
|
||||
right.when_pressed = robot.right
|
||||
right.when_released = robot.stop
|
||||
|
||||
bw.when_pressed = robot.backward
|
||||
bw.when_released = robot.stop
|
||||
|
||||
pause()
|
||||
34
docs/examples/robot_keyboard_1.py
Normal file
34
docs/examples/robot_keyboard_1.py
Normal file
@@ -0,0 +1,34 @@
|
||||
import curses
|
||||
from gpiozero import Robot
|
||||
|
||||
robot = Robot(left=(4, 14), right=(17, 18))
|
||||
|
||||
actions = {
|
||||
curses.KEY_UP: robot.forward,
|
||||
curses.KEY_DOWN: robot.backward,
|
||||
curses.KEY_LEFT: robot.left,
|
||||
curses.KEY_RIGHT: robot.right,
|
||||
}
|
||||
|
||||
def main(window):
|
||||
next_key = None
|
||||
while True:
|
||||
curses.halfdelay(1)
|
||||
if next_key is None:
|
||||
key = window.getch()
|
||||
else:
|
||||
key = next_key
|
||||
next_key = None
|
||||
if key != -1:
|
||||
# KEY DOWN
|
||||
curses.halfdelay(3)
|
||||
action = actions.get(key)
|
||||
if action is not None:
|
||||
action()
|
||||
next_key = key
|
||||
while next_key == key:
|
||||
next_key = window.getch()
|
||||
# KEY UP
|
||||
robot.stop()
|
||||
|
||||
curses.wrapper(main)
|
||||
21
docs/examples/robot_keyboard_2.py
Normal file
21
docs/examples/robot_keyboard_2.py
Normal file
@@ -0,0 +1,21 @@
|
||||
from gpiozero import Robot
|
||||
from evdev import InputDevice, list_devices, ecodes
|
||||
|
||||
robot = Robot(left=(4, 14), right=(17, 18))
|
||||
|
||||
devices = [InputDevice(device) for device in list_devices()]
|
||||
keyboard = devices[0] # this may vary
|
||||
|
||||
keypress_actions = {
|
||||
ecodes.KEY_UP: robot.forward,
|
||||
ecodes.KEY_DOWN: robot.backward,
|
||||
ecodes.KEY_LEFT: robot.left,
|
||||
ecodes.KEY_RIGHT: robot.right,
|
||||
}
|
||||
|
||||
for event in keyboard.read_loop():
|
||||
if event.type == ecodes.EV_KEY:
|
||||
if event.value == 1: # key down
|
||||
keypress_actions[event.code]()
|
||||
if event.value == 0: # key up
|
||||
robot.stop()
|
||||
10
docs/examples/robot_motion_1.py
Normal file
10
docs/examples/robot_motion_1.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from gpiozero import Robot, MotionSensor
|
||||
from signal import pause
|
||||
|
||||
robot = Robot(left=(4, 14), right=(17, 18))
|
||||
pir = MotionSensor(5)
|
||||
|
||||
pir.when_motion = robot.forward
|
||||
pir.when_no_motion = robot.stop
|
||||
|
||||
pause()
|
||||
9
docs/examples/robot_motion_2.py
Normal file
9
docs/examples/robot_motion_2.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from gpiozero import Robot, MotionSensor
|
||||
from signal import pause
|
||||
|
||||
robot = Robot(left=(4, 14), right=(17, 18))
|
||||
pir = MotionSensor(5)
|
||||
|
||||
robot.source = zip(pir.values, pir.values)
|
||||
|
||||
pause()
|
||||
12
docs/examples/thermometer.py
Normal file
12
docs/examples/thermometer.py
Normal file
@@ -0,0 +1,12 @@
|
||||
from gpiozero import MCP3008
|
||||
from time import sleep
|
||||
|
||||
def convert_temp(gen):
|
||||
for value in gen:
|
||||
yield (value * 3.3 - 0.5) * 100
|
||||
|
||||
adc = MCP3008(channel=0)
|
||||
|
||||
for temp in convert_temp(adc.values):
|
||||
print('The temperature is', temp, 'C')
|
||||
sleep(1)
|
||||
20
docs/examples/traffic_lights_1.py
Normal file
20
docs/examples/traffic_lights_1.py
Normal file
@@ -0,0 +1,20 @@
|
||||
from gpiozero import TrafficLights
|
||||
from time import sleep
|
||||
|
||||
lights = TrafficLights(2, 3, 4)
|
||||
|
||||
lights.green.on()
|
||||
|
||||
while True:
|
||||
sleep(10)
|
||||
lights.green.off()
|
||||
lights.amber.on()
|
||||
sleep(1)
|
||||
lights.amber.off()
|
||||
lights.red.on()
|
||||
sleep(10)
|
||||
lights.amber.on()
|
||||
sleep(1)
|
||||
lights.green.on()
|
||||
lights.amber.off()
|
||||
lights.red.off()
|
||||
20
docs/examples/traffic_lights_2.py
Normal file
20
docs/examples/traffic_lights_2.py
Normal file
@@ -0,0 +1,20 @@
|
||||
from gpiozero import TrafficLights
|
||||
from time import sleep
|
||||
from signal import pause
|
||||
|
||||
lights = TrafficLights(2, 3, 4)
|
||||
|
||||
def traffic_light_sequence():
|
||||
while True:
|
||||
yield (0, 0, 1) # green
|
||||
sleep(10)
|
||||
yield (0, 1, 0) # amber
|
||||
sleep(1)
|
||||
yield (1, 0, 0) # red
|
||||
sleep(10)
|
||||
yield (1, 1, 0) # red+amber
|
||||
sleep(1)
|
||||
|
||||
lights.source = traffic_light_sequence()
|
||||
|
||||
pause()
|
||||
24
docs/examples/traffic_lights_3.py
Normal file
24
docs/examples/traffic_lights_3.py
Normal file
@@ -0,0 +1,24 @@
|
||||
from gpiozero import LED
|
||||
from time import sleep
|
||||
|
||||
red = LED(2)
|
||||
amber = LED(3)
|
||||
green = LED(4)
|
||||
|
||||
green.on()
|
||||
amber.off()
|
||||
red.off()
|
||||
|
||||
while True:
|
||||
sleep(10)
|
||||
green.off()
|
||||
amber.on()
|
||||
sleep(1)
|
||||
amber.off()
|
||||
red.on()
|
||||
sleep(10)
|
||||
amber.on()
|
||||
sleep(1)
|
||||
green.on()
|
||||
amber.off()
|
||||
red.off()
|
||||
802
docs/recipes.rst
802
docs/recipes.rst
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user