代码: 全选
encoder_pins = ( (board.GP12, board.GP13, board.GP16), # pin A, pin B, pin for switch
(board.GP10, board.GP11, board.GP17),
(board.GP8, board.GP9, board.GP18),
(board.GP6, board.GP7, board.GP19),
# ...
)
encoders = []
encoder_buttons = []
for pins in encoder_pins:
pin_A, pin_B, pin_switch = pins
encoder = rotaryio.IncrementalEncoder( pin_A, pin_B )
button = DigitalInOut(pin_switch)
button.pull = Pull.UP
encoders.append(encoder)
encoder_buttons.append(button)
while True:
for i in range(len(encoders)):
position = encoders[i].position
button_press = encoder_buttons[i].value