import time
import machine
import random
pins=[6,7,8,9,10,11,12,13,14,15]
leds=[]
for pin_number in pins:
led=machine.Pin(pin_number,machine.Pin.OUT)
leds.append(led)
pot=machine.ADC(26)
def all_on():
for led in leds:
led.value(1)
def all_off():
for led in leds:
led.value(0)
###################################
def pattern_alternate():
for i in range(10):
leds[i].value (i%2)
time.sleep(2)
###################################
def pattern_center_out():
mid=4
for offset in range(5):
all_off()
leds[mid-offset].value (1)
leds[mid+offset].value (1)
time.sleep(0.3)
####################################
def pattern_random ():
for _ in range(30):
idx=random.randint(0,5)
leds[idx].value(random.randint(0,1))
time.sleep(0.05)
all_off()
####################################
def pattern_ranner (color_delay=0.05):
for i in range(10):
all_off()
leds[i].value(1)
time.sleep(color_delay)
for i in range(4,-1,-1):
all_off()
leds[i].value(1)
time.sleep(color_delay)
####################################
def pattern_ranner1 (color_delay=0.05):
for i in range(10):
all_off()
leds[i].value(1)
time.sleep(color_delay)
for i in range(4,1,1):
all_off()
leds[i].value(1)
time.sleep(color_delay)
####################################
def read_speed():
value=pot.read_u16()
level=int(value/65535*10)
return level
####################################
while True:
speed=read_speed()
all_off()
for i in range(speed):
leds[i].value(1)
if speed==0:
print("The car is parked")
pattern_alternate()
elif speed<=4:
print("Safe speed ",speed)
pattern_center_out()
elif speed<=7:
print("Medium speed ",speed)
pattern_random()
elif speed<=9:
print("warning! High speed ",speed)
pattern_ranner()
elif speed>=10:
print("Danger ! Exceeding the maximum limit ")
pattern_ranner1()
for _ in range(5):
all_on()
time.sleep(0.1)
all_off()
time.sleep(0.1)
time.sleep(0.2)