
C H A P T E R 1 4
T H E G P I O P O R T
227
The last line tells the GPIO library that Pin 11 on the Raspberry Pi’s GPIO port should be set
up as an output. If you were controlling additional devices, you could add more
GPIO.setup
lines into the project. For now, however, one will suffice.
With the pin configured as an output, you can switch its 3.3 V supply on and off in a simple
demonstration of binary logic. The instruction
GPIO.output(11, True)
will turn the pin
on, while
GPIO.output(11, False)
switches it off again. The pin will remember its last
state, so if you only give the command to turn the pin on and then exit your Python pro-
gram, the pin will remain on until told otherwise.
Although you could just add
GPIO.output(11, True)
to the Python project to switch the
pin on, it’s more interesting to make it blink. First, add the following line to create an infinite
loop in the program:
while True:
Next, add the following lines to switch the pin on, wait two seconds, and then switch it off
again before waiting another two seconds. Make sure each line starts with four spaces, to
signify that it is part of the infinite
while
loop:
GPIO.output(11, True)
time.sleep(2)
GPIO.output(11, False)
time.sleep(2)
The finished program should look like this (see Figure 14-4):
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.OUT)
while True:
GPIO.output(11, True)
time.sleep(2)
GPIO.output(11, False)
time.sleep(2)
Save the file as
gpiooutput.py
. If you’re using a Python development environment such
as SPE, don’t try to run the program from within the editor. Most Raspberry Pi Linux distri-
butions restrict the use of the GPIO port to the
root
user, so the program will need to be run
using the command
sudo python gpiooutput.py
at the terminal to get it started. If all
has gone well, you should see the LED begin to blink on and off at regular intervals—and
you’ve created your first home-made output device for the Pi.
Summary of Contents for A
Page 1: ......
Page 2: ......
Page 3: ...Raspberry Pi User Guide 2nd Edition...
Page 4: ......
Page 5: ...Raspberry Pi User Guide 2nd Edition Eben Upton and Gareth Halfacree...
Page 10: ......
Page 26: ...R A S P B E R R Y P I U S E R G U I D E S E C O N D E D I T I O N 10...
Page 28: ......
Page 29: ...Chapter 1 Meet the Raspberry Pi...
Page 37: ...Chapter 2 Getting Started with the Raspberry Pi...
Page 56: ......
Page 57: ...Chapter 3 Linux System Administration...
Page 79: ...Chapter 4 Troubleshooting...
Page 89: ...Chapter 5 Network Configuration...
Page 109: ...Chapter 6 The Raspberry Pi Software Configuration Tool...
Page 122: ......
Page 123: ...Chapter 7 Advanced Raspberry Pi Configuration...
Page 140: ......
Page 141: ...Chapter 8 The Pi as a Home Theatre PC...
Page 151: ...Chapter 9 The Pi as a Productivity Machine...
Page 160: ......
Page 161: ...Chapter 10 The Pi as a Web Server...
Page 172: ......
Page 173: ...Chapter 11 An Introduction to Scratch...
Page 189: ...Chapter 12 An Introduction to Python...
Page 216: ......
Page 218: ......
Page 219: ...Chapter 13 Learning to Hack Hardware...
Page 234: ......
Page 235: ...Chapter 14 The GPIO Port...
Page 249: ...Chapter 15 The Raspberry Pi Camera Module...
Page 265: ...Chapter 16 Add on Boards...
Page 280: ......
Page 281: ...Appendix A Python Recipes...
Page 287: ...Appendix B Raspberry Pi Camera Module Quick Reference...
Page 293: ...Appendix C HDMI Display Modes...