
P A R T I V
H A R D W A R E H A C K I N G
232
Save the file as
gpioinput.py
, and then execute it from the terminal with
sudo python
gpioinput.py
. At first, nothing will happen—but if you press the push-button switch, the
program will print the message from line seven to the terminal (see Figure 14-6). Release the
button and press it again, and the message will be repeated.
Figure 14-6:
The output
of the
gpioinput.
py
program
As with the previous input example, this is a deceptively simple program that can be used for
many purposes. In addition to being able to read when a switch is pressed, the same code can
be used to read when the pins of a separate device—such as a sensor or external microcon-
troller—have been pulled high or low.
By extending the code to look for multiple push-buttons, each on an individual GPIO pin, you
could even create a simple four-button game controller. For example, you could combine the
preceding code with the Raspberry Snake game from Chapter 12, “An Introduction to Python”,
to turn the Raspberry Pi into a simple games console. You can also combine both input and
output examples into a single program, which waits for the button to be pushed and then turns
on the LED by sending the output pin high. To ensure that you’ve understood the concepts in
this section, try creating that combined program now. If you get stuck, or you want to check
your method, turn to Appendix A, “Python Recipes”, for a sample solution.
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...