Skip to content

Commit a5d5a55

Browse files
author
Mikey Sklar
committed
5pad code runs clean after CircuitPython port, linted, fritzing diagrams for 40-pin momentary and toggle added
1 parent 43f120b commit a5d5a55

3 files changed

Lines changed: 43 additions & 44 deletions

File tree

Lines changed: 43 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,52 @@
1-
import RPi.GPIO as GPIO
21
import time
2+
import board
3+
from digitalio import DigitalInOut, Direction
4+
5+
# set the GPIO input pins
6+
pad0_pin = board.D22
7+
pad1_pin = board.D21
8+
pad2_pin = board.D17
9+
pad3_pin = board.D24
10+
pad4_pin = board.D23
11+
12+
pad0 = DigitalInOut(pad0_pin)
13+
pad1 = DigitalInOut(pad1_pin)
14+
pad2 = DigitalInOut(pad2_pin)
15+
pad3 = DigitalInOut(pad3_pin)
16+
pad4 = DigitalInOut(pad4_pin)
17+
18+
pad0.direction = Direction.INPUT
19+
pad1.direction = Direction.INPUT
20+
pad2.direction = Direction.INPUT
21+
pad3.direction = Direction.INPUT
22+
pad4.direction = Direction.INPUT
23+
24+
pad0_already_pressed = True
25+
pad1_already_pressed = True
26+
pad2_already_pressed = True
27+
pad3_already_pressed = True
28+
pad4_already_pressed = True
329

4-
GPIO.setmode(GPIO.BCM)
30+
while True:
531

6-
#set the GPIO input pins
7-
pad0 = 22
8-
pad1 = 27
9-
pad2 = 17
10-
pad3 = 24
11-
pad4 = 23
32+
if pad0.value and not pad0_already_pressed:
33+
print("Pad 0 pressed")
34+
pad0_already_pressed = pad0.value
1235

13-
GPIO.setup(pad0, GPIO.IN)
14-
GPIO.setup(pad1, GPIO.IN)
15-
GPIO.setup(pad2, GPIO.IN)
16-
GPIO.setup(pad3, GPIO.IN)
17-
GPIO.setup(pad4, GPIO.IN)
36+
if pad1.value and not pad1_already_pressed:
37+
print("Pad 1 pressed")
38+
pad1_already_pressed = pad1.value
1839

19-
pad0alreadyPressed = False
20-
pad1alreadyPressed = False
21-
pad2alreadyPressed = False
22-
pad3alreadyPressed = False
23-
pad4alreadyPressed = False
40+
if pad2.value and not pad2_already_pressed:
41+
print("Pad 2 pressed")
42+
pad2_already_pressed = pad2.value
2443

44+
if pad3.value and not pad3_already_pressed:
45+
print("Pad 3 pressed")
46+
pad3_already_pressed = pad3.value
2547

26-
while True:
27-
pad0pressed = not GPIO.input(pad0)
28-
pad1pressed = not GPIO.input(pad1)
29-
pad2pressed = not GPIO.input(pad2)
30-
pad3pressed = not GPIO.input(pad3)
31-
pad4pressed = not GPIO.input(pad4)
32-
33-
if pad0pressed and not pad0alreadyPressed:
34-
print "Pad 0 pressed"
35-
pad0alreadyPressed = pad0pressed
36-
37-
if pad1pressed and not pad1alreadyPressed:
38-
print "Pad 1 pressed"
39-
pad1alreadyPressed = pad1pressed
40-
41-
if pad2pressed and not pad2alreadyPressed:
42-
print "Pad 2 pressed"
43-
pad2alreadyPressed = pad2pressed
44-
45-
if pad3pressed and not pad3alreadyPressed:
46-
print "Pad 3 pressed"
47-
pad3alreadyPressed = pad3pressed
48-
49-
if pad4pressed and not pad4alreadyPressed:
50-
print "Pad 4 pressed"
51-
pad4alreadyPressed = pad4pressed
48+
if pad4.value and not pad4_already_pressed:
49+
print("Pad 4 pressed")
50+
pad4_already_pressed = pad4.value
5251

5352
time.sleep(0.1)
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)