from machine import Pin,ADC,PWM
from time import sleep
x_axis=ADC(Pin(26))
y_axis=ADC(Pin(27))
led1 = Pin(21, Pin.OUT)
led2 = Pin(20, Pin.OUT)
led3 = Pin(19, Pin.OUT)
led4 = Pin(17, Pin.OUT)
def reead():
x_value=x_axis.read_u16()
y_value=y_axis.read_u16()
return x_value,y_value
#################################################
seg = [0, 1, 2, 3, 4, 5, 6]
segs = [Pin(pin, Pin.OUT) for pin in seg]
digits = [
[0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 1, 1, 1, 1],
[0, 0, 1, 0, 0, 1, 0],
[0, 0, 0, 0, 1, 1, 0],
[1, 0, 0, 1, 1, 0, 0],
[0, 1, 0, 0, 1, 0, 0],
[0, 1, 0, 0, 0, 0, 0],
[0, 0, 0, 1, 1, 1, 1],
[0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 1, 0, 0]
]
#################################################
def display_number(num):
if 0 <= num <= 9:
pattern = digits[num]
print(num)
for i in range(7):
segs[i].value(pattern[i])
seg1 = [7, 8, 9, 10, 11, 12, 13]
segs1 = [Pin(pin, Pin.OUT) for pin in seg1]
digits1 = [
[0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 1, 1, 1, 1],
[0, 0, 1, 0, 0, 1, 0],
[0, 0, 0, 0, 1, 1, 0],
[1, 0, 0, 1, 1, 0, 0],
[0, 1, 0, 0, 1, 0, 0],
[0, 1, 0, 0, 0, 0, 0],
[0, 0, 0, 1, 1, 1, 1],
[0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 1, 0, 0]
]
def display_number1(num1):
if 0 <= num1 <= 9:
pattern = digits1[num1]
print(num1)
for i in range(7):
segs1[i].value(pattern[i])
#################################################
buzzer=PWM(Pin(15))
buzzer.freq(5000)
buzzer.duty_u16(0)
#################################################
count = 0
wcount = 0
while True:
x_value, y_value = reead()
led1.value(0)
led2.value(0)
led3.value(0)
led4.value(0)
if x_value < 20000:
led3.value(1)
elif x_value > 50000:
led1.value(1)
elif y_value < 2000:
led2.value(1)
elif y_value > 50000:
led4.value(1)
wcount = wcount + 1
if wcount >= 10:
wcount = 0
if count < 10:
display_number(count)
display_number1(count + 1)
buzzer.duty_u16(0)
count = count + 2
if count >= 10:
display_number(9)
display_number1(9)
buzzer.duty_u16(1000)
count = 0
sleep(.1)