
In 2020 beschreef ik hoe je een 3 x 4 numeriek toetsenbord met een Raspberry Pi verbind en nu gaan we dit doen met een Raspberry Pi Pico. Het wordt een korte tutorial omdat ik de werking van het toetsenbord destijds al uitgelegd heb. Niettemin is dit voor de Pico niet minder interessant.
Daar gaan we…
Ik adviseer je om eerst om van de tutorial Toetsenbord 3 x 4 – hoofdstuk ‘De matrix’ door te nemen van de tutorial uit 2020. Dan weet je hoe het toetsenbord werkt. Daarna kom je hier weer terug en neem ik je mee om het toetsenbord op een Pico aan te sluiten.
Toetsenbord verbinden met de Pico
Het 3×4 numerieke toetsenbord heeft zeven pinnen, de buitenste twee printgaten zijn niet aangesloten.

De opbouw van de toetsenbord matrix
Hieronder is grafisch de matrix van het toetsenbord weergegeven. Je ziet duidelijk welke rij- en kolom contacten sluiten als je een toets indrukt. Als voorbeeld is de ‘1’ ingedrukt hetgeen contact maakt in rij 1 en kolom 1.

Verbind het toetsenbord met de Pico zoals de aansluittabel hieronder aangeeft.

Thonny IDE
Ik ga er van uit dat je weet hoe Thonny IDE werkt en hoe je de Raspberry Pi Pico ermee verbind. Weet je het niet of twijfel je? Kijk dan hier waar ik uitleg hoe je het kunt doen.
De micropython code
Open in Thonny een nieuw bestand en kopieer onderstaande code erin, sla de code op de Pico met bijvoorbeeld de naam main.py en start het programma (groene knop met witte pijl). Bij een herstart zal de Pico automatisch main.py starten.
from machine import Pin
import utime
row_list = [2, 3, 4, 5]
col_list = [6, 7, 8]
for x in range(0, 4):
row_list[x] = Pin(row_list[x], Pin.OUT)
row_list[x].value(1)
for x in range(0 ,3):
col_list[x] = Pin(col_list[x], Pin.IN, Pin.PULL_UP)
key_list = [["1", "2", "3"],\
["4", "5", "6"],\
["7", "8", "9"],\
["*", "0", "#"]]
def keypad(col, row):
for r in row:
r.value(0)
result = [col[0].value(), col[1].value(), col[2].value()]
if min(result) == 0:
key = key_list[int(row.index(r))][int(result.index(0))]
r.value(1)Output
In de Shell van Thonny zal na het indrukken van de toetsen de output verschijnen.


Veel plezier ermee! Mocht je vragen of opmerkingen hebben, laat dan hieronder een reactie achter.
Have A Nice Day!

Laat een reactie achter