from machine import Pin
from utime import sleep
from math import cos, sin, radians
plus = [machine.Pin(pin, machine.Pin.OUT) for pin in range(3, 9)]
minus = [machine.Pin(pin, machine.Pin.OUT) for pin in range(10, 16)]
def all_on():
for ledplus in plus:
for ledminus in minus:
ledplus.value(1)
ledminus.value(1)
sleep(0.1)
def all_off():
for ledplus in plus:
for ledminus in minus:
ledplus.value(0)
ledminus.value(0)
#sleep(0.1)
def step():
speed = 0.05
for ledplus in plus:
for ledminus in minus:
ledplus.value(1)
ledminus.value(1)
sleep(speed)
ledplus.value(0)
ledminus.value(0)
for ledplus in reversed(plus):
for ledminus in reversed(minus):
ledplus.value(1)
ledminus.value(1)
sleep(speed)
ledplus.value(0)
ledminus.value(0)
for ledminus in minus:
for ledplus in plus:
ledplus.value(1)
ledminus.value(1)
sleep(speed)
ledplus.value(0)
ledminus.value(0)
for ledminus in reversed(minus):
for ledplus in reversed(plus):
ledplus.value(1)
ledminus.value(1)
sleep(speed)
ledplus.value(0)
ledminus.value(0)
for ledplus in reversed(plus):
for ledminus in minus:
ledplus.value(1)
ledminus.value(1)
sleep(speed)
ledplus.value(0)
ledminus.value(0)
for ledplus in reversed(plus):
for ledminus in minus:
ledplus.value(1)
ledminus.value(1)
sleep(speed)
ledplus.value(0)
ledminus.value(0)
for ledminus in reversed(minus):
for ledplus in plus:
ledplus.value(1)
ledminus.value(1)
sleep(speed)
ledplus.value(0)
ledminus.value(0)
for ledminus in minus:
for ledplus in reversed(plus):
ledplus.value(1)
ledminus.value(1)
sleep(speed)
ledplus.value(0)
ledminus.value(0)
def led_nr_on(line, column):
ledplus = plus[line]
ledminus = minus[column]
ledplus.value(1)
ledminus.value(1)
def led_nr_off(line, column):
ledplus = plus[line]
ledminus = minus[column]
ledplus.value(0)
ledminus.value(0)
def Patrick():
speed = 0.01
speed_letters = 5
P = [[1,1], [1,2], [1,3], [4,1], [2,1], [2,4], [3,1], [3,2], [3,3], [4,1]]
A = [[1,2], [1,3], [2,1], [2,4], [3,1], [3,2], [3,3], [3,4], [4,1], [4,4]]
T = [[1,1], [1,2], [1,3], [1,4], [2,2], [3,2], [4,2], [2,3], [3,3], [4,3]]
R = [[1,1], [1,2], [1,3], [4,1], [2,1], [2,4], [3,1], [3,2], [3,3], [4,1], [4,4]]
I = [[1,2], [2,2], [3,2], [4,2], [1,3], [2,3], [3,3], [4,3]]
C = [[1,4], [1,3], [1,2], [1,1], [2,1], [3,1], [4,1], [4,2], [4,3], [4,4]]
K = [[1,1], [2,1], [3,1], [4,1], [3,2], [2,3], [1,4], [3,3], [4,4]]
for i in range(speed_letters):
for i in range(len(P)):
led_nr_on(P[i][0], P[i][1])
sleep(speed)
led_nr_off(P[i][0], P[i][1])
sleep(speed)
for i in range(speed_letters):
for i in range(len(A)):
led_nr_on(A[i][0], A[i][1])
sleep(speed)
led_nr_off(A[i][0], A[i][1])
sleep(speed)
for i in range(speed_letters):
for i in range(len(T)):
led_nr_on(T[i][0], T[i][1])
sleep(speed)
led_nr_off(T[i][0], T[i][1])
sleep(speed)
for i in range(speed_letters):
for i in range(len(R)):
led_nr_on(R[i][0], R[i][1])
sleep(speed)
led_nr_off(R[i][0], R[i][1])
sleep(speed)
for i in range(speed_letters):
for i in range(len(I)):
led_nr_on(I[i][0], I[i][1])
sleep(speed)
led_nr_off(I[i][0], I[i][1])
sleep(speed)
for i in range(speed_letters):
for i in range(len(C)):
led_nr_on(C[i][0], C[i][1])
sleep(speed)
led_nr_off(C[i][0], C[i][1])
sleep(speed)
for i in range(speed_letters):
for i in range(len(K)):
led_nr_on(K[i][0], K[i][1])
sleep(speed)
led_nr_off(K[i][0], K[i][1])
sleep(speed)
def spiral():
speed = 0.01
speed_letters = 1
spiral_line = [[2,2], [2,3], [3,3], [3,2], [3,1], [2,1], [1,1], [1,2], [1,3], [1,4], [2,4], [3,4], [4,4], [4,3], [4,2], [4,1], [4,0],[3,0],[2,0],[1,0],[0,0],[0,1],[0,2],[0,3],[0,4],[0,5],[0,5],[1,5],[2,5],[3,5],[4,5],[5,5],[5,4],[5,3],[5,2],[5,1],[5,0]]
for i in range(speed_letters):
for i in range(len(spiral_line)):
led_nr_on(spiral_line[i][0], spiral_line[i][1])
sleep(speed)
led_nr_off(spiral_line[i][0], spiral_line[i][1])
sleep(speed)
for i in range(speed_letters):
for i in reversed(range(len(spiral_line))):
led_nr_on(spiral_line[i][0], spiral_line[i][1])
sleep(speed)
led_nr_off(spiral_line[i][0], spiral_line[i][1])
sleep(speed)
def light_line(li):
for i in range(0,6):
led_nr_on(i, li)
sleep(0.05)
for i in range(0,6):
led_nr_off(i, li)
sleep(0.01)
def light_column(col):
for i in range(0,6):
led_nr_on(col, i)
sleep(0.05)
for i in range(0,6):
led_nr_off(col, i)
sleep(0.01)
def light_cross():
for i in range(2,4):
light_line(i)
light_column(i)
sleep(0.005)
light_line(i)
light_column(i)
for i in reversed(range(2,4)):
light_line(i)
light_column(i)
sleep(0.005)
light_line(i)
light_column(i)
for i in reversed(range(2,4)):
light_line(i)
light_column(i)
sleep(0.005)
light_line(i)
light_column(i)
for i in range(2,4):
light_line(i)
light_column(i)
sleep(0.005)
light_line(i)
light_column(i)
def cross_with_li_and_col():
x = 0
y = 0
while True:
if x < 5:
x+=1
else:
x=0
if y < 5:
y+=1
else:
y=0
light_line(x)
light_column(x)
light_line(y)
light_column(y)
def draw_circle(center_x, center_y, radius):
for angle in reversed(range(0, 360, 5)):
x = center_x + int(radius * cos(radians(angle)))
y = center_y + int(radius * sin(radians(angle)))
if 0 <= x < 6 and 0 <= y < 6:
led_nr_on(x, y)
sleep(0.01)
led_nr_off(x, y)
while True:
#all_on()
#all_off()
#step()
#led_nr_on(0,1)
#sleep(1)
#led_nr_on(2,3)
#led_nr_off(0,1)
#sleep(1)
#spiral()
#Patrick()
#cross_with_li_and_col()
draw_circle(2, 2, 1)
draw_circle(2, 2, 2)
draw_circle(2, 2, 3)
#light_cross()