-
Notifications
You must be signed in to change notification settings - Fork 0
/
gpio.py
39 lines (31 loc) · 1.05 KB
/
gpio.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# -*- coding: utf-8 -*-
import RPi.GPIO
# 主体: GPIO
class GPIO:
def __init__(self, pin):
self.pin = pin
self.mode = RPi.GPIO.IN
RPi.GPIO.setwarnings(False)
RPi.GPIO.setmode(RPi.GPIO.BCM)
RPi.GPIO.setup(pin, self.mode)
# GPIOを ハイにします、とは。
def ハイにします(self):
if self.mode == RPi.GPIO.IN:
self.mode = RPi.GPIO.OUT
RPi.GPIO.setup(self.pin, self.mode)
RPi.GPIO.output(self.pin, RPi.GPIO.HIGH)
# GPIOを ローにします、とは。
def ローにします(self):
if self.mode == RPi.GPIO.IN:
self.mode = RPi.GPIO.OUT
RPi.GPIO.setup(self.pin, self.mode)
RPi.GPIO.output(self.pin, RPi.GPIO.LOW)
# GPIOが ハイです、とは。
def ハイです(self):
if self.mode == RPi.GPIO.OUT:
self.mode = RPi.GPIO.IN
RPi.GPIO.setup(self.pin, self.mode)
return RPi.GPIO.input(self.pin) == RPi.GPIO.HIGH
GPIO1 = GPIO(34)
GPIO2 = GPIO(35)
GPIO3 = GPIO(36)