Simple test
Ensure your device works with this simple test.
examples/mcp23017_scanner_simpletest.py
1# SPDX-FileCopyrightText: Copyright (c) 2022 Neradoc
2#
3# SPDX-License-Identifier: Unlicense
4
5import board
6from adafruit_mcp230xx.mcp23017 import MCP23017
7from mcp23017_scanner import McpMatrixScanner
8
9# from supervisor import ticks_ms
10
11# MCP23017 port A pins for columns
12COLUMNS = [0, 1, 2, 3, 4]
13# MCP23017 port B pins for rows
14ROWS = [0, 1, 2, 3, 4, 5]
15
16mcp = MCP23017(board.I2C())
17scanner = McpMatrixScanner(mcp, ROWS, COLUMNS, irq=board.D5) # irq is optional
18
19while True:
20 # t0 = ticks_ms()
21 scanner.update()
22 while event := scanner.events.get():
23 key = scanner.key_number_to_row_column(event.key_number)
24 if event.pressed:
25 print(f"Key pressed : {key}")
26 if event.released:
27 print(f"Key released: {key}")
28
29 # flood print the milliseconds passed:
30 # print(ticks_ms() - t0)