アナログ出力 / write_analog()

参考: Programming the BBC micro:bit: Getting Started with MicroPython, p. 113-115
 
アナログ出力といっても Arduino と同じく PWM 出力である。

from microbit import *

brightness = 0
step       = 100

def constrain(var, MIN = 0, MAX = 1023):
    return max(MIN, min(var, MAX))

pin0.write_analog(brightness)
while True:
    if button_a.was_pressed():
        brightness = constrain(brightness - step)
        pin0.write_analog(brightness)
        print(brightness)
    if button_b.was_pressed():
        brightness = constrain(brightness + step)
        pin0.write_analog(brightness)
        print(brightness)

オシロで確認している。