"""Pico Slice 1 - RGB MixerTutorial 5 - Gamma Correction"""import timeimport boardfrom pwmio import PWMOutfrom analogio import AnalogIn# A funcion to handle gamma correctiondefGamma_Correct (linear_input): gamma =3 maximum =65535 output =int(((linear_input/maximum)**gamma)*maximum)return output# Represent the Pot in code as an AnalogIn object.r_pot =AnalogIn(board.A2)# Represent the Red LED as a PWMOut object.r_led =PWMOut(board.GP2, duty_cycle=0, frequency=5000, variable_frequency=False)whileTrue:# Loop Forever: input_val = r_pot.value # Read the potentiometer's current value (16-bit) r_led.duty_cycle = Gamma_Correct(input_val) # Set the red LED's duty-cycle (16-bit) to the gamma corrected pot value
time.sleep(0.1)# Do nothing for 100 milliseconds