import machine, math, time
buzzer = machine.PWM(machine.Pin(15))
pot = machine.ADC(26)
prevFrequency = 0
buzzer.ductu_u16(32767)
def scale (value, fromMin, fromMax, toMin, toMax)
return toMin + ((value - fromMin) * ((toMax - toMin) / (fromMax - fromMin)))
while True:
potValue - pot.read_u16()
frequency = scale(potValuem 0, 65535, 120, 5000)
if ((frequency < (prevFrequency - 50)) or frequency > (prevFrequency + 50))
prevFrequecy = frequency
buzzer.freq(math.trunc(frequency))
time.sleep_ms(25)