Skip to content
This repository was archived by the owner on Sep 30, 2019. It is now read-only.

Commit 2549dd3

Browse files
committed
splitting a part into separate files & use the OOP approach
1 parent 3607353 commit 2549dd3

File tree

2 files changed

+24
-19
lines changed

2 files changed

+24
-19
lines changed

Adafruit_PWM_Servo_Driver/LEDDriver.py

Lines changed: 14 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,14 @@
22

33
from Adafruit_PWM_Servo_Driver import PWM
44
import time
5+
from RGBDevice import RGBDevice
56

67
# Initialise the PWM device using the default address
78
pwm = PWM(0x40, debug=True)
89

910
pwm.setPWMFreq(600) # Set frequency to 600 Hz
1011

11-
master = 1
12-
13-
def setColor(red, green, blue):
14-
#print(str(red) + ', ' + str(green) + ', ' + str(blue))
15-
pwm.setPWM(1, 0, int(red * master))
16-
pwm.setPWM(2, 0, int(green * master))
17-
pwm.setPWM(0, 0, int(blue * master))
12+
device = RGBDevice(pwm, 0)
1813

1914
def sleep():
2015
time.sleep(.01)
@@ -23,33 +18,33 @@ def sleep():
2318

2419
while (True):
2520
for red in range(0, 4095, stepSize):
26-
setColor(red, 0, 0)
21+
device.setRGB(red, 0, 0)
2722
sleep()
28-
setColor(4095, 0, 0)
23+
device.setRGB(4095, 0, 0)
2924
time.sleep(1)
3025
for green in range(0, 4095, stepSize):
31-
setColor(4095-green, green, 0)
26+
device.setRGB(4095-green, green, 0)
3227
sleep()
33-
setColor(0, 4095, 0)
28+
device.setRGB(0, 4095, 0)
3429
time.sleep(1)
3530
for blue in range(0, 4095, stepSize):
36-
setColor(0, 4095-blue, blue)
31+
device.setRGB(0, 4095-blue, blue)
3732
sleep()
38-
setColor(0, 0, 4095)
33+
device.setRGB(0, 0, 4095)
3934
time.sleep(1)
4035
for red in range(0, 4095, stepSize):
41-
setColor(red, 0, 4095-red)
36+
device.setRGB(red, 0, 4095-red)
4237
sleep()
43-
setColor(4095, 0, 0)
38+
device.setRGB(4095, 0, 0)
4439
time.sleep(1)
4540
for white in range(0, 4095, stepSize):
46-
setColor(4095, white, white)
41+
device.setRGB(4095, white, white)
4742
sleep()
48-
setColor(4095, 4095, 4095)
43+
device.setRGB(4095, 4095, 4095)
4944
time.sleep(1)
5045
for white in range(0, 4095, stepSize):
51-
setColor(4095-white, 4095-white, 4095-white)
46+
device.setRGB(4095-white, 4095-white, 4095-white)
5247
sleep()
53-
setColor(0, 0, 0)
48+
device.setRGB(0, 0, 0)
5449
time.sleep(1)
5550

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
class RGBDevice:
2+
def __init__(self, pwm, baseAddress):
3+
self.pwm = pwm
4+
self.baseAddress = baseAddress
5+
self.master = 1
6+
7+
def setRGB(self, red, green, blue):
8+
self.pwm.setPWM(self.baseAddress + 1, 0, int(red * self.master))
9+
self.pwm.setPWM(self.baseAddress + 2, 0, int(green * self.master))
10+
self.pwm.setPWM(self.baseAddress + 0, 0, int(blue * self.master))

0 commit comments

Comments
 (0)