def fader_loop(self):
FADER_MAX_STEP = 5
FADER_DELAY = 0.005
fader = PWM(Pin(15))
fader_cur_val = 0
while True:
if self.fader_target_val > fader_cur_val:
step = min(FADER_MAX_STEP, self.fader_target_val - fader_cur_val)
elif self.fader_target_val < fader_cur_val:
step = -min(FADER_MAX_STEP, fader_cur_val - self.fader_target_val)
else:
step = 0
fader_cur_val += step
fader.duty(fader_cur_val)
await asyncio.sleep(FADER_DELAY)
评论列表
文章目录